Re: [Qemu-devel] [PATCH 16/16] megasas: LSI Megaraid SAS emulation

2010-11-19 Thread Jes Sorensen
On 11/18/10 15:47, Hannes Reinecke wrote:
 This patch adds an emulation for the LSI Megaraid SAS HBA.
 
 Signed-off-by: Hannes Reinecke h...@suse.de
 ---
  Makefile.objs |2 +-
  hw/megasas.c  | 1826 
 +
  hw/mfi.h  | 1197 +
  hw/pci_ids.h  |2 +
  hw/scsi.h |1 +
  5 files changed, 3027 insertions(+), 1 deletions(-)
  create mode 100644 hw/megasas.c
  create mode 100644 hw/mfi.h
 
 diff --git a/Makefile.objs b/Makefile.objs
 index 15569af..54c6e02 100644
 --- a/Makefile.objs
 +++ b/Makefile.objs
 @@ -231,7 +231,7 @@ hw-obj-$(CONFIG_IDE_MACIO) += ide/macio.o
  hw-obj-$(CONFIG_IDE_VIA) += ide/via.o
  
  # SCSI layer
 -hw-obj-y += lsi53c895a.o
 +hw-obj-y += lsi53c895a.o megasas.o
  hw-obj-$(CONFIG_ESP) += esp.o
  
  hw-obj-y += dma-helpers.o sysbus.o isa-bus.o

Just had a look through your patches and have to say nice work. Haven't
tested it though, but looks like a good step in the right direction.

Only comment, as you are adding another SCSI driver, maybe it's time to
make the driver selection configurable, rather than hard coding the build?

Cheers,
Jes



Re: [Qemu-devel] [PATCH 16/16] megasas: LSI Megaraid SAS emulation

2010-11-19 Thread Markus Armbruster
Jes Sorensen jes.soren...@redhat.com writes:

 On 11/18/10 15:47, Hannes Reinecke wrote:
 This patch adds an emulation for the LSI Megaraid SAS HBA.
 
 Signed-off-by: Hannes Reinecke h...@suse.de
 ---
  Makefile.objs |2 +-
  hw/megasas.c  | 1826 
 +
  hw/mfi.h  | 1197 +
  hw/pci_ids.h  |2 +
  hw/scsi.h |1 +
  5 files changed, 3027 insertions(+), 1 deletions(-)
  create mode 100644 hw/megasas.c
  create mode 100644 hw/mfi.h
 
 diff --git a/Makefile.objs b/Makefile.objs
 index 15569af..54c6e02 100644
 --- a/Makefile.objs
 +++ b/Makefile.objs
 @@ -231,7 +231,7 @@ hw-obj-$(CONFIG_IDE_MACIO) += ide/macio.o
  hw-obj-$(CONFIG_IDE_VIA) += ide/via.o
  
  # SCSI layer
 -hw-obj-y += lsi53c895a.o
 +hw-obj-y += lsi53c895a.o megasas.o
  hw-obj-$(CONFIG_ESP) += esp.o
  
  hw-obj-y += dma-helpers.o sysbus.o isa-bus.o

 Just had a look through your patches and have to say nice work. Haven't
 tested it though, but looks like a good step in the right direction.

 Only comment, as you are adding another SCSI driver, maybe it's time to
 make the driver selection configurable, rather than hard coding the build?

What do you mean by that?

We hardcode lsi53c895a in two places where we really mean default SCSI
controller type: pc_pci_device_init(), which applies to -drive
if=scsi, and qemu_pci_hot_add_storage(), which applies to pci_add
storage if=scsi.  Not sure making that default configurable is worth
it.

If you want more control than -drive and pci_add provice, use -device
and device_add.



Re: [Qemu-devel] [PATCH 16/16] megasas: LSI Megaraid SAS emulation

2010-11-19 Thread Hannes Reinecke
On 11/19/2010 03:06 PM, Markus Armbruster wrote:
 Jes Sorensen jes.soren...@redhat.com writes:
 
 On 11/18/10 15:47, Hannes Reinecke wrote:
 This patch adds an emulation for the LSI Megaraid SAS HBA.

 Signed-off-by: Hannes Reinecke h...@suse.de
 ---
  Makefile.objs |2 +-
  hw/megasas.c  | 1826 
 +
  hw/mfi.h  | 1197 +
  hw/pci_ids.h  |2 +
  hw/scsi.h |1 +
  5 files changed, 3027 insertions(+), 1 deletions(-)
  create mode 100644 hw/megasas.c
  create mode 100644 hw/mfi.h

 diff --git a/Makefile.objs b/Makefile.objs
 index 15569af..54c6e02 100644
 --- a/Makefile.objs
 +++ b/Makefile.objs
 @@ -231,7 +231,7 @@ hw-obj-$(CONFIG_IDE_MACIO) += ide/macio.o
  hw-obj-$(CONFIG_IDE_VIA) += ide/via.o
  
  # SCSI layer
 -hw-obj-y += lsi53c895a.o
 +hw-obj-y += lsi53c895a.o megasas.o
  hw-obj-$(CONFIG_ESP) += esp.o
  
  hw-obj-y += dma-helpers.o sysbus.o isa-bus.o

 Just had a look through your patches and have to say nice work. Haven't
 tested it though, but looks like a good step in the right direction.

 Only comment, as you are adding another SCSI driver, maybe it's time to
 make the driver selection configurable, rather than hard coding the build?
 
 What do you mean by that?
 
 We hardcode lsi53c895a in two places where we really mean default SCSI
 controller type: pc_pci_device_init(), which applies to -drive
 if=scsi, and qemu_pci_hot_add_storage(), which applies to pci_add
 storage if=scsi.  Not sure making that default configurable is worth
 it.
 
 If you want more control than -drive and pci_add provice, use -device
 and device_add.

Idea is probably to have megasas the default SCSI controller, if
configured during compile time. Basically have a configure option
'--scsi-hba=megasas' or somesuch.

But then, you can 'easily' select the megasas HBA nowadays with

-drive file=XXX,if=none,id=d1 \
-device megasas,id=m1 \
-device scsi-disk,drive=d1

So not sure if it's worthwhile.

Cheers,

Hannes
-- 
Dr. Hannes Reinecke   zSeries  Storage
h...@suse.de  +49 911 74053 688
SUSE LINUX Products GmbH, Maxfeldstr. 5, 90409 Nürnberg
GF: Markus Rex, HRB 16746 (AG Nürnberg)



Re: [Qemu-devel] [PATCH 16/16] megasas: LSI Megaraid SAS emulation

2010-11-19 Thread Jes Sorensen
On 11/19/10 15:06, Markus Armbruster wrote:
 Only comment, as you are adding another SCSI driver, maybe it's time to
 make the driver selection configurable, rather than hard coding the build?
 
 What do you mean by that?
 
 We hardcode lsi53c895a in two places where we really mean default SCSI
 controller type: pc_pci_device_init(), which applies to -drive
 if=scsi, and qemu_pci_hot_add_storage(), which applies to pci_add
 storage if=scsi.  Not sure making that default configurable is worth
 it.
 
 If you want more control than -drive and pci_add provice, use -device
 and device_add.

What I mean is for most other device types we allow to specify a list of
wanted devices at the configure line, which is what I am suggesting we
added support for for SCSI as well.

Cheers,
Jes



Re: [Qemu-devel] [PATCH 16/16] megasas: LSI Megaraid SAS emulation

2010-11-19 Thread Alexander Graf

On 19.11.2010, at 15:31, Jes Sorensen wrote:

 On 11/19/10 15:06, Markus Armbruster wrote:
 Only comment, as you are adding another SCSI driver, maybe it's time to
 make the driver selection configurable, rather than hard coding the build?
 
 What do you mean by that?
 
 We hardcode lsi53c895a in two places where we really mean default SCSI
 controller type: pc_pci_device_init(), which applies to -drive
 if=scsi, and qemu_pci_hot_add_storage(), which applies to pci_add
 storage if=scsi.  Not sure making that default configurable is worth
 it.
 
 If you want more control than -drive and pci_add provice, use -device
 and device_add.
 
 What I mean is for most other device types we allow to specify a list of
 wanted devices at the configure line, which is what I am suggesting we
 added support for for SCSI as well.

Oh, you mean something like:

hw-obj-$(CONFIG_MEGASAS) += megasas.o

with respective entries in default-config/*? Yeah, makes sense.


Alex




Re: [Qemu-devel] [PATCH 16/16] megasas: LSI Megaraid SAS emulation

2010-11-19 Thread Jes Sorensen
On 11/19/10 17:36, Alexander Graf wrote:
 
 On 19.11.2010, at 15:31, Jes Sorensen wrote:
 What I mean is for most other device types we allow to specify a list of
 wanted devices at the configure line, which is what I am suggesting we
 added support for for SCSI as well.
 
 Oh, you mean something like:
 
 hw-obj-$(CONFIG_MEGASAS) += megasas.o
 
 with respective entries in default-config/*? Yeah, makes sense.

Correct, and I suggest we add that for the 53c895 driver too.

Cheers,
Jes