[patch 6/7] ps3: ROM Storage Driver

Christoph Hellwig hch at lst.de
Wed May 30 20:01:45 EST 2007


On Tue, May 29, 2007 at 06:21:36PM +0200, Geert Uytterhoeven wrote:
> On Tue, 29 May 2007, Christoph Hellwig wrote:
> > > +/*
> > > + * copy data from device into scatter/gather buffer
> > > + */
> > > +static int fill_from_dev_buffer(struct scsi_cmnd *cmd, const void *buf,
> > > +				int buflen)
> > > +{
> > > +	int k, req_len, act_len, len, active;
> > > +	void *kaddr;
> > > +	struct scatterlist *sgpnt;
> > > +
> > > +	if (!cmd->request_bufflen)
> > > +		return 0;
> > > +
> > > +	if (!cmd->request_buffer)
> > > +		return DID_ERROR << 16;
> > > +
> > > +	if (cmd->sc_data_direction != DMA_BIDIRECTIONAL &&
> > > +	    cmd->sc_data_direction != DMA_FROM_DEVICE)
> > > +		return DID_ERROR << 16;
> > > +
> > > +	if (!cmd->use_sg) {
> > > +		req_len = cmd->request_bufflen;
> > > +		act_len = min(req_len, buflen);
> > > +		memcpy(cmd->request_buffer, buf, act_len);
> > > +		cmd->resid = req_len - act_len;
> > > +		return 0;
> > > +	}
> > 
> > This is never true anymore.
> 
> Just to be sure: all four if-cases or only the last one?

That's just in reference to the last one.  The checks above could
be condensed a little more aswell, but I'll comment on further in
the second round of review, in the hope that the command submission
path is a lot more streamline by then already.




More information about the Linuxppc-dev mailing list