Re: [PATCH 1 of 6] x86, UV: smp_processor_id in a preemptable region
From: Rakib Mullick
Date: Wed Jun 15 2011 - 02:05:25 EST
On Wed, Jun 15, 2011 at 5:06 AM, Cliff Wickman <cpw@xxxxxxx> wrote:
> From: Cliff Wickman <cpw@xxxxxxx>
>
> Calling smp_processor_id() from within a preemptable region will issue
> a warning if DEBUG_PREEMPT is set.
>
> Diffed against 3.0.0-rc3
>
> Signed-off-by: Cliff Wickman <cpw@xxxxxxx>
> ---
> arch/x86/platform/uv/tlb_uv.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> Index: linux/arch/x86/platform/uv/tlb_uv.c
> ===================================================================
> --- linux.orig/arch/x86/platform/uv/tlb_uv.c
> +++ linux/arch/x86/platform/uv/tlb_uv.c
> @@ -1334,7 +1334,9 @@ static ssize_t tunables_write(struct fil
>
> instr[count] = '\0';
>
> + preempt_disable(); /* avoid DEBUG_PREEMPT warning */
I think above code comment, "avoid DEBUG_PREEMPT warning" should be to
something more meaningful. It's a BUG, if smp_processor_id() is called
within preemptible context. So, we don't want to hit that BUG.
> bcp = &per_cpu(bau_control, smp_processor_id());
> + preempt_enable_no_resched();
>
> ret = parse_tunables_write(bcp, instr, count);
> if (ret)
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/