Messages in this thread | | | Date | Wed, 13 Feb 2013 14:05:40 +0100 | From | Paolo Bonzini <> | Subject | Re: [PATCH 2/3] nbd: fsync and kill block device on shutdown |
| |
Il 12/02/2013 22:41, Andrew Morton ha scritto: >> > There are two problems with shutdown in the NBD driver. The first is >> > that receiving the NBD_DISCONNECT ioctl does not sync the filesystem; >> > this is useful because BLKFLSBUF is restricted to processes that have >> > CAP_SYS_ADMIN, and the NBD client may not possess it (fsync of the >> > block device does not sync the filesystem, either). > hm, this says that the lack of a sync is "useful". I think you mean > that the patch-which-adds-the-sync is the thing which is useful, yes?
Yes.
>> > The second is that once we clear the socket we have no guarantee that >> > later reads will come from the same backing storage. Thus the page cache >> > must be cleaned, lest reads that hit on the page cache will return stale >> > data from the previously-accessible disk. > That sounds like a problem. > >> > Example: >> > >> > # qemu-nbd -r -c/dev/nbd0 /dev/sr0 >> > # file -s /dev/nbd0 >> > /dev/stdin: # UDF filesystem data (version 1.5) etc. >> > # qemu-nbd -d /dev/nbd0 >> > # qemu-nbd -r -c/dev/nbd0 /dev/sda >> > # file -s /dev/nbd0 >> > /dev/stdin: # UDF filesystem data (version 1.5) etc. >> > >> > While /dev/sda has: >> > >> > # file -s /dev/sda >> > /dev/sda: x86 boot sector; etc. > OK, we've described the problems but there's no description here of how > the patch addresses those problems. > > How does this look?
Perfect, thanks very much. I tried to similarly balance the "why" and "how" in the new commit message for patch 1.
Paolo
| |