[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Tue, 8 Aug 2017 11:04:11 -0700
From: Florian Fainelli <f.fainelli@...il.com>
To: "Luis R. Rodriguez" <mcgrof@...nel.org>,
Juergen Gross <jgross@...e.com>
Cc: linux-kernel@...r.kernel.org, ard.biesheuvel@...aro.org,
labbott@...hat.com, Andrew Morton <akpm@...ux-foundation.org>,
"Paul E. McKenney" <paulmck@...ux.vnet.ibm.com>,
Kees Cook <keescook@...omium.org>,
Ingo Molnar <mingo@...nel.org>,
"David S. Miller" <davem@...emloft.net>,
Peter Zijlstra <peterz@...radead.org>,
Geert Uytterhoeven <geert@...ux-m68k.org>,
Nicholas Piggin <npiggin@...il.com>,
Olof Johansson <olof@...om.net>,
"Jason A. Donenfeld" <Jason@...c4.com>,
Theodore Ts'o <tytso@....edu>,
Thomas Gleixner <tglx@...utronix.de>,
Josh Poimboeuf <jpoimboe@...hat.com>,
Andy Shevchenko <andriy.shevchenko@...ux.intel.com>,
Bart Van Assche <bart.vanassche@...disk.com>,
Matthew Wilcox <mawilcox@...rosoft.com>,
Al Viro <viro@...iv.linux.org.uk>,
Jiri Pirko <jiri@...lanox.com>,
Jeff Layton <jlayton@...hat.com>
Subject: Re: [PATCH] lib: Add test module for CONFIG_DEBUG_VIRTUAL
On 08/08/2017 10:57 AM, Luis R. Rodriguez wrote:
> On Tue, Aug 08, 2017 at 09:40:26AM -0700, Florian Fainelli wrote:
>> Add a test module that allows testing that CONFIG_DEBUG_VIRTUAL works
>> correctly, at least that it can catch invalid calls to virt_to_phys()
>> against the non-linear kernel virtual address map.
>>
>> Signed-off-by: Florian Fainelli <f.fainelli@...il.com>
>> ---
>> +static int __init test_debug_virtual_init(void)
>> +{
>> + phys_addr_t pa;
>> + void *va;
>> +
>> + va = (void *)VMALLOC_START;
>> + pa = virt_to_phys(va);
>> +
>> + pr_info("PA: %pa for VA: 0x%lx\n", &pa, (unsigned long)va);
>> +
>> + foo = kzalloc(sizeof(*foo), GFP_KERNEL);
>> + if (!foo)
>> + return -ENOMEM;
>> +
>> + pa = virt_to_phys(foo);
>> + va = foo;
>> + pr_info("PA: %pa for VA: 0x%lx\n", &pa, (unsigned long)va);
>
> Should there be a tests here of some sort? When should this fail, why?
There is no test per-se, the kernel will produce warning with
CONFIG_DEBUG_VIRTUAL telling you that what you are doing is wrong.
> There is no docs on this self test, could one be added?
I suppose I could add one even though that just means pointing out the
code that produces the warning?
--
Florian
Powered by blists - more mailing lists