On Tue, May 29, 2012 at 01:51:15PM +0200, Hannes Reinecke wrote:
> This is an updated patchset for megasas. Upon popular demand
> I've split it into three parts, the header file, the emulation
> itself, and a patch adding trace events to the emulation.
> 
> Paolo, can you merge it via your tree? Or should I ask
> someone else?
> 
> Changes since v17:
> - Fix crash when booting without Option ROM,
>   reported by Alex Graf
> 
> Changes since v16:
> - Codingstyle fixes, reported by Alex Graf
> 
> Changes since v15:
> - Move to new SCSI API
> - Use generic trace functions for DCMDs
> - Replace bitfields with defines
> - Implement CFG_READ
> - Fix enclosure ID reporting
> 
> Changes since v14:
> - Rename MPTState to MegasasState
> - Use bool type
> - Enable 64 bit PCI accesses
> - Replace raid mode string handling
> - Use common function for requests handling
> 
> Changes since v13:
> - Remove separate MSI-X BAR
> - Simplify BAR allocation
> 
> Changes since v12:
> - Fixup flag setting via properties
> - Fixup MSI-X handling
> - Disable MSI-X per default
> 
> Changes since v11:
> - Remove unneeded variables
> 
> Changes since v10:
> - Port to new device type API
> - Include suggestion from Alex Graf:
> - Remove 'inline' function declaration
> - Queue setup and interrupt enablement needs to be treated
>   independently
> - Always read in 64 bit context and just mask out the top
>   bits if required
> 
> Changes since v9:
> - Split off trace events into a separate patch
> - Do not check for max_luns in PD Info
> - Update trace events
> - Clarify license statement
> - Fixup coding style issues
> 
> Changes since v8:
> - Remove 'disable' keyword from trace definitions
> - Convert hand-crafted debugging statements with trace
>   definitions
> - Treat 'context' tag as little endian
> Changes since v7:
> - Port to new memory API
> - Port to new PCI infrastructure
> - Use fixed buffers for sense processing
> - Update to updated SCSI infrastructure
> 
> Changes since v6:
> - Preliminary patches pushed to Kevins block tree
> - Implement 64bit contexts, required for Windows7
> - Use iovecs for DCMD processing
> - Add MSI-X support
>   Latest Linux driver now happily uses MSI-X.
> - Static iovec allocation
>   We have a fixed upper number of iovecs, so we can
>   save us the allocation. Suggested by Alex Graf.
> - Update MFI header
>   Latest Linux driver has some more definitions,
>   add them
> - Fixup AEN handling
> - Update tracing details
> - Remove sdev pointer from megasas_cmd_t
> 
> Changes since v5:
> - megasas: Use tracing infrastructure instead of DPRINTF
> - megasas: Use new PCI infrastructure
> - megasas: Check for iovec mapping failure
>   cpu_map_physical_memory() might fail, so we need to check for
>   it when mapping iovecs.
> - megasas: Trace scsi buffer overflow
>   The transfer length as specified in the SCSI command might
>   disagree with the length of the iovec. We should be tracing
>   these issues.
> - megasas: Reset frames after init firmware
>   When receiving an INIT FIRMWARE command we need reset all
>   frames, otherwise some frames might point to invalid memory.
> 
> Chances since v4:
> - megasas: checkpatch.pl fixes and update to work with the
>   changed interface in scsi_req_new(). Also included the
>   suggested fixes from Alex.
> 
> Hannes Reinecke (3):
>   megasas: Add header file
>   megasas: LSI Megaraid SAS HBA emulation
>   megasas: Add trace events
> 
>  Makefile.objs           |    1 +
>  default-configs/pci.mak |    1 +
>  hw/megasas.c            | 2198 
> +++++++++++++++++++++++++++++++++++++++++++++++
>  hw/mfi.h                | 1248 +++++++++++++++++++++++++++
>  hw/pci_ids.h            |    3 +-
>  trace-events            |   79 ++
>  6 files changed, 3529 insertions(+), 1 deletions(-)
>  create mode 100644 hw/megasas.c
>  create mode 100644 hw/mfi.h

Not a line-by-line review but overall it looks okay.  I also tested that
a RHEL 6 guest sees a SCSI disk.

Tested-by: Stefan Hajnoczi <stefa...@linux.vnet.ibm.com>


Reply via email to