<feed xmlns='http://www.w3.org/2005/Atom'>
<title>bwlp/qemu.git/scsi/Makefile.objs, branch spice_video_codecs</title>
<subtitle>Experimental fork of QEMU with video encoding patches</subtitle>
<id>https://git.openslx.org/bwlp/qemu.git/atom/scsi/Makefile.objs?h=spice_video_codecs</id>
<link rel='self' href='https://git.openslx.org/bwlp/qemu.git/atom/scsi/Makefile.objs?h=spice_video_codecs'/>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/'/>
<updated>2020-08-21T10:30:18+00:00</updated>
<entry>
<title>meson: convert block</title>
<updated>2020-08-21T10:30:18+00:00</updated>
<author>
<name>Marc-André Lureau</name>
</author>
<published>2019-08-29T18:34:43+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=5e5733e5999bb10e34cbbe3eda95b3cc7ad27bde'/>
<id>urn:sha1:5e5733e5999bb10e34cbbe3eda95b3cc7ad27bde</id>
<content type='text'>
Signed-off-by: Marc-André Lureau &lt;marcandre.lureau@redhat.com&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>pr-manager: put stubs in .c file</title>
<updated>2018-06-28T17:05:35+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2018-06-28T16:01:42+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=58b3017f7fba15e8c440115dfd5d380f490d0b61'/>
<id>urn:sha1:58b3017f7fba15e8c440115dfd5d380f490d0b61</id>
<content type='text'>
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>scsi: add persistent reservation manager using qemu-pr-helper</title>
<updated>2017-09-22T19:07:27+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2017-08-21T16:58:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=9bad2a6b9d0aeb2dcf91a07652cc63bbb6e73141'/>
<id>urn:sha1:9bad2a6b9d0aeb2dcf91a07652cc63bbb6e73141</id>
<content type='text'>
This adds a concrete subclass of pr-manager that talks to qemu-pr-helper.

Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>scsi, file-posix: add support for persistent reservation management</title>
<updated>2017-09-21T23:06:51+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2017-08-21T16:58:56+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=7c9e527659c67d4d7b41d9504f93d2d7ee482488'/>
<id>urn:sha1:7c9e527659c67d4d7b41d9504f93d2d7ee482488</id>
<content type='text'>
It is a common requirement for virtual machine to send persistent
reservations, but this currently requires either running QEMU with
CAP_SYS_RAWIO, or using out-of-tree patches that let an unprivileged
QEMU bypass Linux's filter on SG_IO commands.

As an alternative mechanism, the next patches will introduce a
privileged helper to run persistent reservation commands without
expanding QEMU's attack surface unnecessarily.

The helper is invoked through a "pr-manager" QOM object, to which
file-posix.c passes SG_IO requests for PERSISTENT RESERVE OUT and
PERSISTENT RESERVE IN commands.  For example:

  $ qemu-system-x86_64
      -device virtio-scsi \
      -object pr-manager-helper,id=helper0,path=/var/run/qemu-pr-helper.sock
      -drive if=none,id=hd,driver=raw,file.filename=/dev/sdb,file.pr-manager=helper0
      -device scsi-block,drive=hd

or:

  $ qemu-system-x86_64
      -device virtio-scsi \
      -object pr-manager-helper,id=helper0,path=/var/run/qemu-pr-helper.sock
      -blockdev node-name=hd,driver=raw,file.driver=host_device,file.filename=/dev/sdb,file.pr-manager=helper0
      -device scsi-block,drive=hd

Multiple pr-manager implementations are conceivable and possible, though
only one is implemented right now.  For example, a pr-manager could:

- talk directly to the multipath daemon from a privileged QEMU
  (i.e. QEMU links to libmpathpersist); this makes reservation work
  properly with multipath, but still requires CAP_SYS_RAWIO

- use the Linux IOC_PR_* ioctls (they require CAP_SYS_ADMIN though)

- more interestingly, implement reservations directly in QEMU
  through file system locks or a shared database (e.g. sqlite)

Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
<entry>
<title>scsi: move non-emulation specific code to scsi/</title>
<updated>2017-09-19T12:09:11+00:00</updated>
<author>
<name>Paolo Bonzini</name>
</author>
<published>2017-08-22T05:08:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.openslx.org/bwlp/qemu.git/commit/?id=e5b5728cd330f533e02e483af8973ad7ffccce8b'/>
<id>urn:sha1:e5b5728cd330f533e02e483af8973ad7ffccce8b</id>
<content type='text'>
util/scsi.c includes some SCSI code that is shared by block/iscsi.c and
hw/scsi, but the introduction of the persistent reservation helper
will add many more instances of this.  There is also include/block/scsi.h,
which actually is not part of the core block layer.

The persistent reservation manager will also need a home.  A scsi/
directory provides one for both the aforementioned shared code and
the PR manager code.

Reviewed-by: Philippe Mathieu-Daudé &lt;f4bug@amsat.org&gt;
Signed-off-by: Paolo Bonzini &lt;pbonzini@redhat.com&gt;
</content>
</entry>
</feed>
