[lkml]   [2001]   [Oct]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRe: %u-order allocation failed
    Alex Bligh - linux-kernel <> writes:

    > Mikulas,
    > > It uses vmalloc only when __GFP_VMALLOC flag is given - and so it is
    > > expected to not use __GFP_VMALLOC flag in IRQ.
    > Ah OK. If your point is that people use GFP_ATOMIC when it's
    > not needed, and demand physically contiguous memory when only
    > virtually contiguous memory is needed, in several places in
    > the kernel, then you are correct. [I am not convinced that
    > vmalloc() is the best way to fix it though.]
    > Most of the order>0 users of __get_free_pages() don't
    > 'need' to do that. For instance I was convinced that networking
    > code needed this for larger than 4k packets (pre-fragmentation
    > or post-prefragmentation) until someone pointed out that
    > the kiovec stuff was there, waiting to be used, if someone
    > made the code changes. But the code changes are non-trivial.

    The zero copy stuff introduced in 2.4.4 allows for skb fragments.
    I haven't seen any of the network drivers using it on their receive
    path but it should be possible.

    > Note also that something (not sure what) has made fragmentation
    > increasingly prevalent over the years since the buddy allocator
    > was originally put in.

    Actually it seems to be situations like the stack now being two
    contiguous pages instead of one, where the demand for contiguous
    memory has increased instead of the amount of fragmentation having

    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: 2005-03-22 13:04    [W:0.021 / U:5.924 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site