diff options
author | Kevin Wolf <kwolf@redhat.com> | 2019-03-01 22:15:11 +0100 |
---|---|---|
committer | Kevin Wolf <kwolf@redhat.com> | 2019-03-12 20:30:14 +0100 |
commit | 23dece19da41724349809873923e20a48b619cb7 (patch) | |
tree | cba82738b64fcacaa7ad1cacd2b319f5f00782cb /balloon.c | |
parent | 6ceabe6f77e4ae5ac2fa3d2ac1be11dc95021941 (diff) | |
download | qemu-23dece19da41724349809873923e20a48b619cb7.zip qemu-23dece19da41724349809873923e20a48b619cb7.tar.gz qemu-23dece19da41724349809873923e20a48b619cb7.tar.bz2 |
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>
Diffstat (limited to 'balloon.c')
0 files changed, 0 insertions, 0 deletions