On Wed, 2020-03-25 at 22:10 +0000, Mikael Öhman wrote:
Hi Jeff! (also, I'm also sorry for a resend, I did exactly the same with my message as well!)
Unfortunately, the answer wasn't that simple, as I am on the latest C7 kernel as well uname -r 3.10.0-1062.1.2.el7.x86_64
I did some more testing, and it's a bit difficult to trigger this reliably when using a line like you do. If I paste a sendfile+remount line like that, it does seem to trigger a proper write, but, if I put some delay in, it fails. About 10 seconds seems to be enough for me;
root@hermes:~# /root/sendfile sendfile.c /cephyr/dest 27; sleep 10; umount /cephyr; mount /cephyr; ls -l /cephyr/dest Sent 0 KiB over sendfile(3EXT) of 0 KiB requested -rw-r--r-- 1 root root 0 Mar 25 23:01 /cephyr/dest
Easier yet; I can reliable see the problem immediately by not re-mounting anything and just looking at the files from another node; root@hermes:~# /root/sendfile sendfile.c /cephyr/dest 27; ls -l /cephyr/dest Sent 0 KiB over sendfile(3EXT) of 0 KiB requested -rw-r--r-- 1 root root 27 Mar 25 23:10 /cephyr/dest and then, go to another node and look a couple seconds later: [c3-micke@hebbe-c1 ~]$ ls -l /cephyr/dest -rw-r--r-- 1 root root 0 Mar 25 23:10 /cephyr/dest
Thanks, I was able to reproduce it this morning. Not sure why the timing matters just yet, but I suspect this will be fixed by the attached patch that's already slated for RHEL7.9 If you're able to build a test a kernel with that patch, then please let us know if it fixes this problem for you as well. Thanks, -- Jeff Layton <jlayton@redhat.com>