All of lore.kernel.org
 help / color / mirror / Atom feed
* [Qemu-devel] [PATCH 0/2] Correct access to wrong BlockBackendPublic structures
@ 2016-10-17 15:46 Alberto Garcia
  2016-10-17 15:46 ` [Qemu-devel] [PATCH 1/2] throttle: " Alberto Garcia
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Alberto Garcia @ 2016-10-17 15:46 UTC (permalink / raw)
  To: qemu-devel
  Cc: qemu-block, qemu-stable, Kevin Wolf, Paolo Bonzini,
	Alberto Garcia

Hi all,

Paolo found that commit 27ccdd52598290f introduced a regression in the
throttling code.

It can be easily reproduced in scenarios where you have a throttling
group with several drives but you only write to one of them. In that
case the round-robin algorithm can select the wrong drive all the time
and the actual requests are never completed.

QEMU 2.7 is affected, here's the patch to fix it, plus a test case.

Thanks,

Berto

Alberto Garcia (2):
  throttle: Correct access to wrong BlockBackendPublic structures
  qemu-iotests: Test I/O in a single drive from a throttling group

 block/throttle-groups.c    | 27 +++++++++++++++++++++++----
 tests/qemu-iotests/093     | 33 ++++++++++++++++++++++++++++-----
 tests/qemu-iotests/093.out |  4 ++--
 3 files changed, 53 insertions(+), 11 deletions(-)

-- 
2.9.3

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

end of thread, other threads:[~2016-10-18 14:09 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-10-17 15:46 [Qemu-devel] [PATCH 0/2] Correct access to wrong BlockBackendPublic structures Alberto Garcia
2016-10-17 15:46 ` [Qemu-devel] [PATCH 1/2] throttle: " Alberto Garcia
2016-10-17 15:56   ` Paolo Bonzini
2016-10-17 15:46 ` [Qemu-devel] [PATCH 2/2] qemu-iotests: Test I/O in a single drive from a throttling group Alberto Garcia
2016-10-18 14:09 ` [Qemu-devel] [PATCH 0/2] Correct access to wrong BlockBackendPublic structures 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.