[Stgt-devel] ibmvio is slow
    FUJITA Tomonori 
    tomof
       
    Wed Aug 15 05:11:37 CEST 2007
    
    
  
On Tue, 14 Aug 2007 21:20:54 +0200
Bastian Blank <waldi at berlios.de> wrote:
> On Tue, Aug 14, 2007 at 08:36:02PM +0200, Bastian Blank wrote:
> > There is only lvm between it. This looks like some sort of read-ahead
> > for the data, which should not happen for write requests. I tried to dig
> > a little bit in the block code but was not able to found the cause.
> 
> I found something:
> 
> scsi_host_get_command
> | int write = (data_dir == DMA_TO_DEVICE);
> 
> According to ibmvstgt, this is a write to the scsi device, aka data
> transfer to this system.
> 
> | rq = blk_get_request(shost->uspace_req_q, !write, gfp_mask);
> 
> The second parameter should be READ or WRITE, not true/false and it
> seems to have the wrong direction.
No. The code is correct.
READ is zero so it works though we can do better here.
The in-kernel ibmvio driver (ibmvstgt) uses the block layer functions
in reverse. You can try your correct direction to see data corruption.
    
    
More information about the stgt
mailing list