Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-09 Thread Stefan Richter
Kristian Høgsberg wrote: > This mean we have to add all the LUs from the unit directory > corresponding to the sbp2_device struct to that host. Is that > a problem? Most certainly not for now. > I think we had this discussion before, I believe that was on a different aspect of multi-LU targets.

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-09 Thread Kristian Høgsberg
Stefan Richter wrote: Kristian Høgsberg wrote: I was trying to be clever and only allocate the host once the device had been discovered and initialized. I have now changed the code to just allocate the host up front and use the hostdata mechanism for the sbp2_device struct, which also addresses

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-09 Thread Stefan Richter
Kristian Høgsberg wrote: > Christoph Hellwig wrote: >>> +static int add_scsi_devices(struct fw_unit *unit) >>> +{ >>> +struct sbp2_device *sd = unit->device.driver_data; >>> +int retval, lun; >>> + >>> +if (sd->scsi_host != NULL) >>> +return 0; >>> + >>> +sd->scsi_host = scs

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-09 Thread Stefan Richter
Kristian Høgsberg wrote: > Isn't max_sectors the overall size limit of the request, though? BTW, mainline sbp2 sets max_sectors=512 per default because one 1st generation bridge needed it. fw-sbp2 lets the SCSI stack chose the default max_sectors, which is SCSI_DEFAULT_MAX_SECTORS i.e. 1024. I th

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-09 Thread Kristian Høgsberg
Christoph Hellwig wrote: + sg = (struct scatterlist *)orb->cmd->request_buffer; + count = dma_map_sg(device->card->device, sg, orb->cmd->use_sg, + orb->cmd->sc_data_direction); you need to handle the error case (count == 0) Yup, done. + /* Convert

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-04 Thread Stefan Richter
Christoph Hellwig wrote: >> >> + sd->scsi_host->hostdata[0] = (unsigned long)unit; ... > scsi_host_alloc > is designed to allocate space for your private data aswell. So you > should call it early on an allocate the sbp2_device as part of the Scsi_Host > instead of just stuffing in a pointer. Aha

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-04 Thread Christoph Hellwig
On Wed, May 02, 2007 at 11:53:30PM +0200, Stefan Richter wrote: > > Please set the max_sectors value in your host template so that the > > block layer doesn't build sg entries too big for you. > > Hmm, what about this: > > James Bottomley wrote on 2007-01-15: > | Actually, there's one unfortunate

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-02 Thread Stefan Richter
I wrote: > Christoph Hellwig wrote: >>> + /* Convert the scatterlist to an sbp2 page table. If any >>> +* scatterlist entries are too big for sbp2 we split the as we go. */ >> Please set the max_sectors value in your host template so that the >> block layer doesn't build sg entries too big f

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-02 Thread Stefan Richter
Christoph Hellwig wrote: >> +/* Convert the scatterlist to an sbp2 page table. If any >> + * scatterlist entries are too big for sbp2 we split the as we go. */ > > Please set the max_sectors value in your host template so that the > block layer doesn't build sg entries too big for you. H

Re: [PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-02 Thread Christoph Hellwig
> + sg = (struct scatterlist *)orb->cmd->request_buffer; > + count = dma_map_sg(device->card->device, sg, orb->cmd->use_sg, > +orb->cmd->sc_data_direction); you need to handle the error case (count == 0) > + /* Convert the scatterlist to an sbp2 page table. If

[PATCH 5/6] firewire: SBP-2 highlevel driver

2007-05-02 Thread Stefan Richter
Signed-off-by: Stefan Richter <[EMAIL PROTECTED]> --- drivers/firewire/fw-sbp2.c | 1165 + 1 file changed, 1165 insertions(+) Index: linux_juju/drivers/firewire/fw-sbp2.c === --- /dev/null +++ linu