usbmon problem

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

 



Hi,

any ideas?

Mar  7 18:51:00 vanamonde kernel: usb-storage: Issuing auto-REQUEST_SENSE                                                                                                                                         
Mar  7 18:51:00 vanamonde kernel: usb-storage: Bulk Command S 0x43425355 T 0xff L 18 F 128 Trg 0 LUN 0 CL 6                                                                                                       
Mar  7 18:51:00 vanamonde kernel: usb-storage: usb_stor_bulk_transfer_buf: xfer 31 bytes                                                                                                                          
Mar  7 18:51:00 vanamonde kernel: mon_text_get_data: num_sgs == 0: src ffff880037c07000                                                                                                                           
Mar  7 18:51:00 vanamonde kernel: usb-storage: Status code 0; transferred 31/31                                                                                                                                   
Mar  7 18:51:00 vanamonde kernel: usb-storage: -- transfer complete                                                                                                                                               
Mar  7 18:51:00 vanamonde kernel: usb-storage: Bulk command transfer result=0                                                                                                                                     
Mar  7 18:51:00 vanamonde kernel: usb-storage: usb_stor_bulk_transfer_sglist: xfer 18 bytes, 1 entries                                                                                                            
Mar  7 18:51:00 vanamonde kernel: mon_text_get_data: num_sgs == 1: src ffff8801351ed440, length 18, scatterlist at ffff880134051dc8, page ffffea000439ebd8

static inline char mon_text_get_data(struct mon_event_text *ep, struct urb *urb,
    int len, char ev_type, struct mon_bus *mbus)
{
	void *src;

	if (len <= 0)
		return 'L';
	if (len >= DATA_MAX)
		len = DATA_MAX;

	if (ep->is_in) {
		if (ev_type != 'C')
			return '<';
	} else {
		if (ev_type != 'S')
			return '>';
	}

	if (urb->num_sgs == 0) {
		src = urb->transfer_buffer;
printk(KERN_ERR"%s: num_sgs == 0: src %p\n", __func__, src);
		if (src == NULL)
			return 'Z';	/* '0' would be not as pretty. */
	} else {
		struct scatterlist *sg = urb->sg->sg;

		/* If IOMMU coalescing occurred, we cannot trust sg_page */
		if (urb->sg->nents != urb->num_sgs ||
				PageHighMem(sg_page(sg)))
			return 'D';

		/* For the text interface we copy only the first sg buffer */
		len = min_t(int, sg->length, len);
		src = sg_virt(sg);
printk(KERN_ERR"%s: num_sgs == %d: src %p, length %d, scatterlist at %p, page %p\n",
		__func__, urb->num_sgs, src, len, sg, sg_page(sg));
	}

	memcpy(ep->data, src, len);
	return 0;
}

	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