All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/7] reorganize operation of "qemu-nbd -c" and fix it
@ 2011-11-04 14:51 Paolo Bonzini
  2011-11-04 14:51 ` [Qemu-devel] [PATCH 1/7] nbd: treat EPIPE from NBD_DO_IT as success Paolo Bonzini
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Paolo Bonzini @ 2011-11-04 14:51 UTC (permalink / raw)
  To: qemu-devel; +Cc: kwolf

This is another approach to fixing the breakage of "qemu-nbd -c" due
to mixing fork with threads.  It switches operation of qemu-nbd to
threads completely, with the exception of daemonization which is moved
as early as possible to avoid conflicts with threads.

Patches 1 and 2 are bugfixes to qemu-nbd, the first more or less
unrelated, the second required by the rest of the patch.

Patches 3 and 4 change "qemu-nbd -c" to operate within a single process.
They are enough to fix the current breakage of "qemu-nbd -c -v", but not
enough for "qemu-nbd -c".  For that you need patch 5 too, which moves
the daemonization to before the block layer is initialized.

Patches 6 and 7 remove more warts that are now easily fixed.

The patches are large, but unfortunately so is the breakage.

Paolo Bonzini (7):
  nbd: treat EPIPE from NBD_DO_IT as success
  qemu-nbd: trap SIGTERM
  qemu-nbd: rename socket variable
  qemu-nbd: move client to a thread
  qemu-nbd: print error messages from the daemon through a pipe
  qemu-nbd: fix socket creation race condition
  qemu-nbd: open the block device after starting the client thread

 nbd.c      |    7 ++
 qemu-nbd.c |  289 +++++++++++++++++++++++++++++++++++++++--------------------
 2 files changed, 194 insertions(+), 102 deletions(-)

-- 
1.7.6.4

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

end of thread, other threads:[~2011-11-08 15:05 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2011-11-04 14:51 [Qemu-devel] [PATCH 0/7] reorganize operation of "qemu-nbd -c" and fix it Paolo Bonzini
2011-11-04 14:51 ` [Qemu-devel] [PATCH 1/7] nbd: treat EPIPE from NBD_DO_IT as success Paolo Bonzini
2011-11-04 14:51 ` [Qemu-devel] [PATCH 2/7] qemu-nbd: trap SIGTERM Paolo Bonzini
2011-11-04 14:51 ` [Qemu-devel] [PATCH 3/7] qemu-nbd: rename socket variable Paolo Bonzini
2011-11-04 14:51 ` [Qemu-devel] [PATCH 4/7] qemu-nbd: move client to a thread Paolo Bonzini
2011-11-04 14:51 ` [Qemu-devel] [PATCH 5/7] qemu-nbd: print error messages from the daemon through a pipe Paolo Bonzini
2011-11-04 14:51 ` [Qemu-devel] [PATCH 6/7] qemu-nbd: fix socket creation race Paolo Bonzini
2011-11-04 14:51 ` [Qemu-devel] [PATCH 7/7] qemu-nbd: open the block device after starting the client thread Paolo Bonzini
2011-11-08 15:08 ` [Qemu-devel] [PATCH 0/7] reorganize operation of "qemu-nbd -c" and fix it Kevin Wolf

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.