Re: usbmon problem

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am Montag, 8. März 2010 19:50:23 schrieb Alan Stern:
> > > sg and src need to be compared with the original values when the
> > > scatterlist was created.  In invoke_transport() print out the values of
> > > scsi_sglist(srb), srb->sense_buffer, &ses->sense_sgl, and
> > > sg_virt(&ses->sense_sgl).  Do this after the call to
> > > scsi_eh_prep_cmnd().
> > Mar  8 19:06:10 vanamonde kernel: usb-storage: Issuing auto-REQUEST_SENSE                                                                                                                                          
> > Mar  8 19:06:10 vanamonde kernel: usb_stor_invoke_transport - sglist ffff880135b37dc8 sense buffer ffff8801363db940 sense sgl ffff8801363db940 sg_virt ffffea00043dd7ea page link 0000000087654321 dmaaddr ffffea0 0043dd7ea                                                                                                                                                                                                          
> > Mar  8 19:06:10 vanamonde kernel: usb-storage: Bulk Command S 0x43425355 T 0x118 L 18 F 128 Trg 0 LUN 0 CL 6                                                                                                       
> > Mar  8 19:06:10 vanamonde kernel: usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes                                                                                                                           
> > Mar  8 19:06:10 vanamonde kernel: mon_text_get_data: num_sgs == 0: src ffff880037807000                                                                                                                            
> 
> There are several problems here.  Are you sure your printk line really 
> matches the right value with each label?

Retry_Sense:
		US_DEBUGP("Issuing auto-REQUEST_SENSE\n");
		
		scsi_eh_prep_cmnd(srb, &ses, NULL, 0, sense_size);
printk(KERN_ERR"%s - sglist %p sense buffer %p sense sgl %p sg_virt %p page link %p dmaaddr %p\n", __func__,
	scsi_sglist(srb), srb->sense_buffer, ses.sense_sgl, ((void *)sg_virt(&ses.sense_sgl)),
	(void *)ses.sense_sgl.page_link, (void *)ses.sense_sgl.dma_address);

As far as I can tell, it is correct? Disassembly needed?

	Regards
		Oliver
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux