• Linus Torvalds's avatar
    list: remove prefetching from regular list iterators · e66eed65
    Linus Torvalds authored
    This is removes the use of software prefetching from the regular list
    iterators.  We don't want it.  If you do want to prefetch in some
    iterator of yours, go right ahead.  Just don't expect the iterator to do
    it, since normally the downsides are bigger than the upsides.
    
    It also replaces <linux/prefetch.h> with <linux/const.h>, because the
    use of LIST_POISON ends up needing it.  <linux/poison.h> is sadly not
    self-contained, and including prefetch.h just happened to hide that.
    
    Suggested by David Miller (networking has a lot of regular lists that
    are often empty or a single entry, and prefetching is not going to do
    anything but add useless instructions).
    Acked-by: default avatarIngo Molnar <mingo@elte.hu>
    Acked-by: default avatarDavid S. Miller <davem@davemloft.net>
    Cc: linux-arch@vger.kernel.org
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    e66eed65
list.h 20.7 KB