Re: [PATCH] usb: fix number of mapped SG DMA entries

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

 



* Alan Stern | 2011-12-04 11:59:32 [-0500]:

>On Sat, 3 Dec 2011, Clemens Ladisch wrote:
>
>> Add a new field num_mapped_sgs to struct urb so that we have a place to
>> store the number of mapped entries and can also retain the original
>> value of entries in num_sgs.  Previously, usb_hcd_map_urb_for_dma()
>> would overwrite this with the number of mapped entries, which would
>> break dma_unmap_sg() because it requires the original number of entries.
>> 
>> This fixes warnings like the following when using USB storage devices:
>>  ------------[ cut here ]------------
>>  WARNING: at lib/dma-debug.c:902 check_unmap+0x4e4/0x695()
>>  ehci_hcd 0000:00:12.2: DMA-API: device driver frees DMA sg list with different entry count [map count=4] [unmap count=1]
>
>Interesting.  Do you have any idea why this warning didn't show up 
>earlier?  Is there perhaps a Kconfig option I ought to be using?

My question here is why don't we map the complete sg list but only
one entry. What happens to the remaining few sg list entries? Don't we
sent too less data?
Is there anything special you do to get into this kind of situation?
Like 16GiB of memory on 32bit with highmem and a brutal disk/io test
case so?

>Alan Stern

Sebastian
--
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