[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20120217155922.0826ca48.akpm@linux-foundation.org>
Date: Fri, 17 Feb 2012 15:59:22 -0800
From: Andrew Morton <akpm@...ux-foundation.org>
To: Cong Wang <amwang@...hat.com>
Cc: linux-kernel@...r.kernel.org,
Cesar Eduardo Barros <cesarb@...arb.net>,
Nick Bowler <nbowler@...iptictech.com>,
Peter Zijlstra <a.p.zijlstra@...llo.nl>,
Stephen Warren <swarren@...dia.com>
Subject: Re: [PATCH 01/60] highmem: mark k[un]map_atomic() with two
arguments as deprecated
On Fri, 10 Feb 2012 13:39:22 +0800
Cong Wang <amwang@...hat.com> wrote:
> --- a/include/linux/highmem.h
> +++ b/include/linux/highmem.h
> @@ -109,20 +109,60 @@ static inline void kmap_atomic_idx_pop(void)
> #endif
>
> /*
> - * Make both: kmap_atomic(page, idx) and kmap_atomic(page) work.
> + * NOTE:
> + * kmap_atomic() and kunmap_atomic() with two arguments are deprecated.
> + * We only keep them for backward compatibility, any usage of them
> + * are now warned.
> */
> -#define kmap_atomic(page, args...) __kmap_atomic(page)
> +
> +#define PASTE(a, b) a ## b
> +#define PASTE2(a, b) PASTE(a, b)
> +
> +#define NARG_(_2, _1, n, ...) n
> +#define NARG(...) NARG_(__VA_ARGS__, 2, 1, :)
> +
> +static inline void *kmap_atomic(struct page *page)
> +{
> + return __kmap_atomic(page);
> +}
> +
> +static inline void __deprecated *kmap_atomic_deprecated(struct page *page,
> + enum km_type km)
> +{
> + return __kmap_atomic(page);
> +}
> +
> +#define kmap_atomic1(...) kmap_atomic(__VA_ARGS__)
> +#define kmap_atomic2(...) kmap_atomic_deprecated(__VA_ARGS__)
> +#define kmap_atomic(...) PASTE2(kmap_atomic, NARG(__VA_ARGS__)(__VA_ARGS__))
> +
> +static inline void __deprecated __kunmap_atomic_deprecated(void *addr,
> + enum km_type km)
> +{
> + __kunmap_atomic(addr);
> +}
Boggle.
I can't merge these patches because they're already in linux-next.
This is silly. Please send Linus the pull request for 3.4 and be sure to cc
myself on it.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists