All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 0/3] scsi: PR live migration PREEMPT fixes
@ 2026-04-01 17:19 Stefan Hajnoczi
  2026-04-01 17:19 ` [PATCH 1/3] scsi: adjust error_prepend() formatting Stefan Hajnoczi
                   ` (3 more replies)
  0 siblings, 4 replies; 8+ messages in thread
From: Stefan Hajnoczi @ 2026-04-01 17:19 UTC (permalink / raw)
  To: qemu-devel
  Cc: Paolo Bonzini, qemu-stable, qemu-block, Fam Zheng,
	Stefan Hajnoczi

These patches are for QEMU 11.1 and 11.0-stable because they are not release
blockers.

Testing SCSI Persistent Reservation live migration with the Linux LIO iSCSI
target exposed two issues:

1. The LIO target interprets the request's TYPE field even though the spec says
   it should be ignored. This led to PREEMPT commands failing on the LIO
   target. Work around this by sending a "valid" TYPE field value. I have also
   contacted the LIO maintainers about improving spec-compliance but QEMU needs
   to work with existing targets.

2. The LIO target removes all matching registrations, including the I_T nexus
   that is sending the PREEMPT command, when PREEMPT is used to remove
   registrations rather than preempt a reservation. This actually appears to
   comply with the spec, but the hardware target I previously tested against
   would not remove the calling I_T nexus' registration and therefore QEMU's
   behavior was wrong. Implement a fix that works regardless of the target.

Stefan Hajnoczi (3):
  scsi: adjust error_prepend() formatting
  scsi: always send valid PREEMPT TYPE field
  scsi: register again after PREEMPT without reservation

 include/scsi/constants.h | 10 ++++++++++
 hw/scsi/scsi-generic.c   | 24 ++++++++++++++++++++++--
 2 files changed, 32 insertions(+), 2 deletions(-)

-- 
2.53.0



^ permalink raw reply	[flat|nested] 8+ messages in thread

end of thread, other threads:[~2026-05-08 14:41 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-04-01 17:19 [PATCH 0/3] scsi: PR live migration PREEMPT fixes Stefan Hajnoczi
2026-04-01 17:19 ` [PATCH 1/3] scsi: adjust error_prepend() formatting Stefan Hajnoczi
2026-04-01 17:19 ` [PATCH 2/3] scsi: always send valid PREEMPT TYPE field Stefan Hajnoczi
2026-04-01 17:19 ` [PATCH 3/3] scsi: register again after PREEMPT without reservation Stefan Hajnoczi
2026-04-01 17:34   ` Paolo Bonzini
2026-04-01 18:30     ` Stefan Hajnoczi
2026-04-02 10:39       ` Paolo Bonzini
2026-05-08 14:40 ` [PATCH 0/3] scsi: PR live migration PREEMPT fixes Paolo Bonzini

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.