[lkml]   [2006]   [Sep]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: [RFC] Initial alpha-0 for new page allocator API
    Ar Gwe, 2006-09-22 am 21:10 +0200, ysgrifennodd Andi Kleen:
    > We already have that scheme. Any existing driver should be already converted
    > away from GFP_DMA towards dma_*/pci_*. dma_* knows all the magic
    > how to get memory for the various ranges. No need to mess up the
    > main allocator.

    Add an isa_device class and that'll fall into place nicely. isa_alloc_*
    will end up asking for 20bit DMA and it will work nicely.

    > Anyways, i suppose what could be added as a fallback would be a
    > really_slow_brute_force_try_to_get_something_in_this_range() allocator

    Implementation detail although I note that the defrag/antifrag proposal
    made at the vm summit would mean it mostly come out for free. If we have
    an isa_dma_* API then the detail is platform specific.

    > that basically goes through the buddy lists freeing in >O(1)
    > and does some directed reclaim, but that would likely be a separate
    > path anyways and not need your new structure to impact the O(1)
    > allocator.

    Just search within the candidate 4MB (or whatever it is these days)

    > I am still unconvinced of the real need. The only gaping hole was
    > GFP_DMA32, which we fixed already.

    Various devices are 30 and 31bit today - some broadcom for example.

    > Ok there is aacraid with its weird 2GB limit,
    > Ok now I'm sure someone will come up with a counter example (hi Alan), but:
    > - Does the device really need more than 16MB?
    > - How often is it used on systems with >1/2GB with a 64bit kernel?
    > [consider that 64bit kernels don't support ISA]
    > - How many users of that particular thing around?

    Ok the examples I know about are
    - ESS Maestro series audio - PCI, common on 32bit boxes a few years ago,
    no longer shipped and unlikely to be met on 64bit. Also slow allocations
    is fine.
    - Some aacraid, mostly only for control structures. Those found on 64bit
    are probably fine with slow alloc.
    - Broadcom stuff - not sure if 30 or 31bit, around today and on 64bit
    - Floppy controller

    > I think my point stands.

    I think its worthy of discussion.

    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2006-09-22 21:49    [W:0.027 / U:0.088 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site