[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <4B589B29.4040201@zytor.com>
Date: Thu, 21 Jan 2010 10:21:29 -0800
From: "H. Peter Anvin" <hpa@...or.com>
To: Borislav Petkov <bp@...64.org>
CC: mingo@...e.hu, tglx@...utronix.de, andreas.herrmann3@....com,
x86@...nel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/3] x86, cacheinfo: Fix disabling of L3 cache indexes
On 01/21/2010 08:30 AM, Borislav Petkov wrote:
>
> The preexisting code using wbinvd is a bug since wbinvd has to happen on
> a core which contains the L3 cache whose indices(!) we disable.
>
OK, please make a note in the code as to why it is (if it is) correct
not to use the PV version here... I'm not sure the above explains why it
should invoke native_wbinvd() and not wbinvd() -- the fact that is has
to be done on the right CPU is another matter, of course.
> But yeah, a wbinvd smp version is a bit problematic since
> smp_call_function_* expects a function pointer which has a void *
> argument but native_wbinvd() has no args. By the way, there's a similar
> thing in <drivers/char/agp/intel-agp.c::do_wbinvd()>
Saw that, thank you for handling that.
>> Second, it's pretty obvious that the only reason for this function at
>> all is to provide a wrapper that can be passed to smp_call_function*().
>> It would be a lot cleaner to have a small function wbinvd_on_cpu(cpu)
>> as a wrapper for the higher-order functionality.
>
> Done, see my next patch series.
>
I wrote some comments on that before I saw this reply. I think it has
some code cleanliness issues (noted in comments), but otherwise it's a
lot better.
-hpa
--
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