<div dir="ltr">ARM has two sync_file_range syscalls, sync_file_range and sync_file_range2. The former is apparently not used, and glibc calls the latter whenever a userspace program calls sync_file_range. I'm guessing systemd-nspawn doesn't know this, because the follow code consistently fails in an nspawn container on ARM:<div><br></div><div>#define _GNU_SOURCE<br>#include <fcntl.h><br>#include <unistd.h><br>#include <stdio.h><br>#include <errno.h><br><br>void main()<br>{<br>        int f = open("/tmp/syncrange.test",O_CREAT|O_RDWR,0666);<br>        int r=sync_file_range(f, 0, 0, 0);<br>        if (r)<br>                perror("sync_file_range");<br>        close(f);<br>}<br></div><div><br></div><div>This seems to be causing problems specifically for borg(backup) and postgres:</div><div><a href="https://github.com/borgbackup/borg/issues/4710">https://github.com/borgbackup/borg/issues/4710</a><br></div><div><a href="https://www.postgresql.org/message-id/flat/CA%2BhUKG%2BydOUT4zjxb6QmJWy8U9WbC-q%2BJWV7wLsEY9Df%3Dmw0Mw%40mail.gmail.com#ac8f14897647dc7eae3c7e7cbed36d93">https://www.postgresql.org/message-id/flat/CA%2BhUKG%2BydOUT4zjxb6QmJWy8U9WbC-q%2BJWV7wLsEY9Df%3Dmw0Mw%40mail.gmail.com#ac8f14897647dc7eae3c7e7cbed36d93</a><br></div><div><br></div><div>I will test the obvious fix when I can, unless someone beats me to it :)</div><div><br></div><div>S.</div></div>