From: Namhyung Kim <namhyung@kernel.org>
To: Jiri Olsa <jolsa@kernel.org>
Cc: linux-kernel@vger.kernel.org,
Adrian Hunter <adrian.hunter@intel.com>,
Arnaldo Carvalho de Melo <acme@redhat.com>,
David Ahern <dsahern@gmail.com>,
Frederic Weisbecker <fweisbec@gmail.com>,
Ingo Molnar <mingo@redhat.com>, Paul Mackerras <paulus@samba.org>,
Peter Zijlstra <peterz@infradead.org>
Subject: Re: [PATCH 1/3] perf tools: Add test_and_set_bit function
Date: Tue, 04 Nov 2014 17:39:14 +0900 [thread overview]
Message-ID: <87d2935php.fsf@sejong.aot.lge.com> (raw)
In-Reply-To: <1414363445-22370-1-git-send-email-jolsa@kernel.org> (Jiri Olsa's message of "Sun, 26 Oct 2014 23:44:03 +0100")
Hi Jiri,
On Sun, 26 Oct 2014 23:44:03 +0100, Jiri Olsa wrote:
> Set a bit and return its old value. Stolen from kernel
> sources, will be used in next patches.
>
> Cc: Adrian Hunter <adrian.hunter@intel.com>
> Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
> Cc: David Ahern <dsahern@gmail.com>
> Cc: Frederic Weisbecker <fweisbec@gmail.com>
> Cc: Ingo Molnar <mingo@redhat.com>
> Cc: Paul Mackerras <paulus@samba.org>
> Cc: Peter Zijlstra <peterz@infradead.org>
> Signed-off-by: Jiri Olsa <jolsa@kernel.org>
For all 3 patches,
Acked-by: Namhyung Kim <namhyung@gmail.com>
Thanks,
Namhyung
> ---
> tools/perf/util/include/linux/bitmap.h | 17 +++++++++++++++++
> tools/perf/util/include/linux/bitops.h | 2 ++
> 2 files changed, 19 insertions(+)
>
> diff --git a/tools/perf/util/include/linux/bitmap.h b/tools/perf/util/include/linux/bitmap.h
> index 01ffd12dc791..40bd21488032 100644
> --- a/tools/perf/util/include/linux/bitmap.h
> +++ b/tools/perf/util/include/linux/bitmap.h
> @@ -46,4 +46,21 @@ static inline void bitmap_or(unsigned long *dst, const unsigned long *src1,
> __bitmap_or(dst, src1, src2, nbits);
> }
>
> +/**
> + * test_and_set_bit - Set a bit and return its old value
> + * @nr: Bit to set
> + * @addr: Address to count from
> + */
> +static inline int test_and_set_bit(int nr, unsigned long *addr)
> +{
> + unsigned long mask = BIT_MASK(nr);
> + unsigned long *p = ((unsigned long *)addr) + BIT_WORD(nr);
> + unsigned long old;
> +
> + old = *p;
> + *p = old | mask;
> +
> + return (old & mask) != 0;
> +}
> +
> #endif /* _PERF_BITOPS_H */
> diff --git a/tools/perf/util/include/linux/bitops.h b/tools/perf/util/include/linux/bitops.h
> index dadfa7e54287..c3294163de17 100644
> --- a/tools/perf/util/include/linux/bitops.h
> +++ b/tools/perf/util/include/linux/bitops.h
> @@ -15,6 +15,8 @@
> #define BITS_TO_U64(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(u64))
> #define BITS_TO_U32(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(u32))
> #define BITS_TO_BYTES(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE)
> +#define BIT_WORD(nr) ((nr) / BITS_PER_LONG)
> +#define BIT_MASK(nr) (1UL << ((nr) % BITS_PER_LONG))
>
> #define for_each_set_bit(bit, addr, size) \
> for ((bit) = find_first_bit((addr), (size)); \
next prev parent reply other threads:[~2014-11-04 8:39 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-10-26 22:44 [PATCH 1/3] perf tools: Add test_and_set_bit function Jiri Olsa
2014-10-26 22:44 ` [PATCH 2/3] perf script perl: Removing event cache as it's no longer needed Jiri Olsa
2014-11-07 5:31 ` [tip:perf/core] perf script perl: Removing event cache as it' s " tip-bot for Jiri Olsa
2014-10-26 22:44 ` [PATCH 3/3] perf script python: Removing event cache as it's " Jiri Olsa
2014-11-07 5:32 ` [tip:perf/core] perf script python: Removing event cache as it' s " tip-bot for Jiri Olsa
2014-11-04 8:39 ` Namhyung Kim [this message]
2014-11-07 5:31 ` [tip:perf/core] perf tools: Add test_and_set_bit function tip-bot for Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87d2935php.fsf@sejong.aot.lge.com \
--to=namhyung@kernel.org \
--cc=acme@redhat.com \
--cc=adrian.hunter@intel.com \
--cc=dsahern@gmail.com \
--cc=fweisbec@gmail.com \
--cc=jolsa@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=paulus@samba.org \
--cc=peterz@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.