Kevin Wolf 23dece19da file-posix: Make auto-read-only dynamic
Until now, with auto-read-only=on we tried to open the file read-write
first and if that failed, read-only was tried. This is actually not good
enough for libvirt, which gives QEMU SELinux permissions for read-write
only as soon as it actually intends to write to the image. So we need to
be able to switch between read-only and read-write at runtime.

This patch makes auto-read-only dynamic, i.e. the file is opened
read-only as long as no user of the node has requested write
permissions, but it is automatically reopened read-write as soon as the
first writer is attached. Conversely, if the last writer goes away, the
file is reopened read-only again.

bs->read_only is no longer set for auto-read-only=on files even if the
file descriptor is opened read-only because it will be transparently
upgraded as soon as a writer is attached. This changes the output of
qemu-iotests 232.

Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2019-03-12 20:30:14 +01:00
..
2019-02-22 09:42:13 +00:00
2019-02-26 19:04:47 +00:00
2019-02-26 19:04:47 +00:00
2019-02-22 09:42:13 +00:00
2019-02-25 15:11:27 +01:00
2019-02-25 15:11:27 +01:00
2019-02-25 15:11:27 +01:00
2019-03-08 12:26:46 +01:00
2019-03-08 12:26:46 +01:00
2019-02-26 19:04:47 +00:00
2019-02-22 09:42:13 +00:00
2019-02-26 19:04:47 +00:00
2019-02-22 09:42:13 +00:00
2019-02-26 19:04:47 +00:00