[PATCH 0/2] Fix scsi-generic breakage in upstream qemu-kvm.git

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: Nicholas Bellinger <nab@xxxxxxxxxxxxxxx>

Greetings Kevin and hch,

After pulling from upstream qemu-kvm.git/master into the megasas qemu-kvm.git tree,
I ran into some breakage with scsi-generic devices returning an -ESPIPE exception in
bdrv_open() -> find_image_format() -> bdrv_read(), and then again from
brdv_open_common() -> refresh_total_sectors() -> raw_getlength() -> lseek().

This breakage appears to be fallout from:

commit b6ce07aa83bdee3cfd2610f270a0ce304e78df95
Author: Kevin Wolf <kwolf@xxxxxxxxxx>
Date:   Mon Apr 12 16:37:13 2010 +0200

    block: Split bdrv_open
    
    bdrv_open contains quite some code that is only useful for opening images (as
    opposed to opening files by a protocol), for example snapshots.
    
    This patch splits the code so that we have bdrv_open_file() for files (uses
    protocols), bdrv_open() for images (uses format drivers) and bdrv_open_common()
    for the code common for opening both images and files.

commit 66f82ceed6781261c09e65fb440ca76842fd0500
Author: Kevin Wolf <kwolf@xxxxxxxxxx>
Date:   Wed Apr 14 14:17:38 2010 +0200

    block: Open the underlying image file in generic code
    
    Format drivers shouldn't need to bother with things like file names, but rather
    just get an open BlockDriverState for the underlying protocol. This patch
    introduces this behaviour for bdrv_open implementation. For protocols which
    need to access the filename to open their file/device/connection/... a new
    callback bdrv_file_open is introduced which doesn't get an underlying file
    opened.


The following are two patches that where required in order to get hw/scsi-generic.c
working with the latest upstream qemu-kvm.git/master.  They appear to be straight
forward enough, and have been lightly tested with megasas+SG_IO on a v2.6.34-rc7 KVM
host.

Please have a look and apply!

Signed-off-by: Nicholas A. Bellinger <nab@xxxxxxxxxxxxxxx>

Nicholas Bellinger (2):
  [block]: Fix scsi-generic breakage in find_image_format()
  [block]: Skip refresh_total_sectors() for scsi-generic devices

 block.c |   20 ++++++++++++++++----
 1 files changed, 16 insertions(+), 4 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux