lkml.org 
[lkml]   [2005]   [Dec]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 06/14] page-replace-move-macros.patch
    Date

    From: Peter Zijlstra <a.p.zijlstra@chello.nl>

    Move some utility marco's to the new common header to they can be used
    by the code moved over to page_replace.c

    Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>

    --- linux-2.6-git.orig/include/linux/mm_page_replace.h 2005-12-10 20:50:44.000000000 +0100
    +++ linux-2.6-git/include/linux/mm_page_replace.h 2005-12-10 20:53:12.000000000 +0100
    @@ -6,6 +6,36 @@
    #include <linux/mmzone.h>
    #include <linux/mm.h>

    +#define lru_to_page(_head) (list_entry((_head)->prev, struct page, lru))
    +
    +#ifdef ARCH_HAS_PREFETCH
    +#define prefetch_prev_lru_page(_page, _base, _field) \
    + do { \
    + if ((_page)->lru.prev != _base) { \
    + struct page *prev; \
    + \
    + prev = lru_to_page(&(_page->lru)); \
    + prefetch(&prev->_field); \
    + } \
    + } while (0)
    +#else
    +#define prefetch_prev_lru_page(_page, _base, _field) do { } while (0)
    +#endif
    +
    +#ifdef ARCH_HAS_PREFETCHW
    +#define prefetchw_prev_lru_page(_page, _base, _field) \
    + do { \
    + if ((_page)->lru.prev != _base) { \
    + struct page *prev; \
    + \
    + prev = lru_to_page(&(_page->lru)); \
    + prefetchw(&prev->_field); \
    + } \
    + } while (0)
    +#else
    +#define prefetchw_prev_lru_page(_page, _base, _field) do { } while (0)
    +#endif
    +
    void __page_replace_insert(struct zone *, struct page *);
    static inline void page_replace_activate(struct page *page)
    {
    --- linux-2.6-git.orig/mm/vmscan.c 2005-12-10 20:50:44.000000000 +0100
    +++ linux-2.6-git/mm/vmscan.c 2005-12-10 20:53:12.000000000 +0100
    @@ -104,36 +104,6 @@
    long nr; /* objs pending delete */
    };

    -#define lru_to_page(_head) (list_entry((_head)->prev, struct page, lru))
    -
    -#ifdef ARCH_HAS_PREFETCH
    -#define prefetch_prev_lru_page(_page, _base, _field) \
    - do { \
    - if ((_page)->lru.prev != _base) { \
    - struct page *prev; \
    - \
    - prev = lru_to_page(&(_page->lru)); \
    - prefetch(&prev->_field); \
    - } \
    - } while (0)
    -#else
    -#define prefetch_prev_lru_page(_page, _base, _field) do { } while (0)
    -#endif
    -
    -#ifdef ARCH_HAS_PREFETCHW
    -#define prefetchw_prev_lru_page(_page, _base, _field) \
    - do { \
    - if ((_page)->lru.prev != _base) { \
    - struct page *prev; \
    - \
    - prev = lru_to_page(&(_page->lru)); \
    - prefetchw(&prev->_field); \
    - } \
    - } while (0)
    -#else
    -#define prefetchw_prev_lru_page(_page, _base, _field) do { } while (0)
    -#endif
    -
    /*
    * From 0 .. 100. Higher means more swappy.
    */
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/
    \
     
     \ /
      Last update: 2005-12-30 23:45    [W:0.022 / U:89.344 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site