[lkml]   [2010]   [Apr]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: USB transfer_buffer allocations on 64bit systems
    [Removed alsa-devel from the CC: list because this doesn't involve ALSA 
    any more]

    On Wed, 14 Apr 2010, Daniel Mack wrote:

    > No worries - I agree. But unfortunately, I'm out of ideas now, and my
    > initial thoughts about what might cause the trouble were abviously not
    > able to explain the issue. Does anyone see further steps of tracking
    > this issue down?

    Since using mem=4096M or GFP_DMA stopped the symptoms, it seems very
    likely that a buffer is getting allocated above the 4 GB line and not
    bounced or IOMMU-mapped correctly.

    David, do you have anything to suggest? Any ways to check for IOMMU or
    related errors?

    The problem, in short, is that USB audio doesn't work properly when
    Pedro boots a 64-bit kernel on his 4-GB machine. With a 32-bit kernel
    it works okay, and it also works if we use dma_alloc_coherent(). The
    host controller is limited to 32-bit DMA, and the DMA addresses
    generated by dma_map_single() appear to be normal.

    At the moment we don't even know if this is caused by a bug in the
    kernel or a bug in Pedro's hardware. But he has observed the same
    problem on two different machines, both using the ICH9 chipset.

    Alan Stern

     \ /
      Last update: 2010-04-14 20:19    [W:0.061 / U:6.664 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site