From: Justin P. Mattock on
On 06/30/2010 02:22 PM, Randy Dunlap wrote:
> On Wed, 30 Jun 2010 14:20:42 -0700 Justin P. Mattock wrote:
>
>>
>>> Hehe, ugly. How about making it a single string? GCC preprocessor
>>> documentation suggests the same anyway ...
>>>
>>> Neither `#error' nor `#warning' macro-expands its argument.
>>> Internal whitespace sequences are each replaced with a single space.
>>> The line must consist of complete tokens. It is wisest to make the
>>> argument of these directives be a single string constant; this avoids
>>> problems with apostrophes and the like.
>
> Doesn't that mean just put double quotation marks around the entire message string??
>

didnt even notice that. but to answer your question your right. updated
patch below.

>
>
>> o.k. jiri, here is what I came up with, after re-reading and looking at
>> other in the kernel(below).
>>
>>
>>
>> From 45f24db45faa06aad01cfc62ff4b475380e5cb11 Mon Sep 17 00:00:00 2001
>> From: Justin P. Mattock<justinmattock(a)gmail.com>
>> Date: Wed, 30 Jun 2010 14:06:18 -0700
>> Subject: [PATCH]kernel.h Fix #warning message according to the GCC
>> preprocessor docs.
>>
>> received this #warning from a simple printk program and noticed the web
>> address is not showing up:
>> gcc printk.c -o printk
>> In file included from printk.c:3:
>> include/linux/kernel.h:733:2: warning: #warning Attempt to use kernel
>> headers from user space, see http:
>>
>> after the changes the warning should just say:
>> #warning Attempt to use kernel headers from user space!
>>
>> Signed-off-by: Justin P. Mattock<justinmattock(a)gmail.com>
>> ---
>> include/linux/kernel.h | 2 +-
>> 1 files changed, 1 insertions(+), 1 deletions(-)
>>
>> diff --git a/include/linux/kernel.h b/include/linux/kernel.h
>> index 8317ec4..b542961 100644
>> --- a/include/linux/kernel.h
>> +++ b/include/linux/kernel.h
>> @@ -730,7 +730,7 @@ extern int do_sysinfo(struct sysinfo *info);
>>
>> #ifndef __EXPORTED_HEADERS__
>> #ifndef __KERNEL__
>> -#warning Attempt to use kernel headers from user space, see
>> http://kernelnewbies.org/KernelHeaders
>> +#warning Attempt to use kernel headers from user space!
>> #endif /* __KERNEL__ */
>> #endif /* __EXPORTED_HEADERS__ */
>>
>> --
>> 1.7.1.rc1.21.gf3bd6
>>
>>
>> now I'm wondering if there should be a lead to the documentation with
>> this web address(seems grep is not finding anything that I might be able
>> to use).or just leave as is, and let people connect-the-dots!!
>>
>> let me know..
>>
>> Justin P. Mattock
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo(a)vger.kernel.org
>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at http://www.tux.org/lkml/
>
>
> ---
> ~Randy
> *** Remember to use Documentation/SubmitChecklist when testing your code ***
>



From 5e0b59283521c4b222c1131626e306752cd157f3 Mon Sep 17 00:00:00 2001
From: Justin P. Mattock <justinmattock(a)gmail.com>
Date: Wed, 30 Jun 2010 14:30:22 -0700
Subject: [PATCH]kernel.h Add quotation marks around the message so the
web address is shown.

Add quotation marks around the message so the web address is shown.
before:
gcc printk.c -o printk
In file included from printk.c:3:
include/linux/kernel.h:733:2: warning: #warning Attempt to use kernel
headers from user space, see http:
after:
gcc printk.c -o printk
In file included from printk.c:3:
warning: #warning "Attempt to use kernel headers from user space,
see http://kernelnewbies.org/KernelHeaders"
Signed-off-by: Justin P. Mattock <justinmattock(a)gmail.com>

---
include/linux/kernel.h | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/include/linux/kernel.h b/include/linux/kernel.h
index 8317ec4..4055858 100644
--- a/include/linux/kernel.h
+++ b/include/linux/kernel.h
@@ -730,7 +730,7 @@ extern int do_sysinfo(struct sysinfo *info);

#ifndef __EXPORTED_HEADERS__
#ifndef __KERNEL__
-#warning Attempt to use kernel headers from user space, see
http://kernelnewbies.org/KernelHeaders
+#warning "Attempt to use kernel headers from user space, see
http://kernelnewbies.org/KernelHeaders"
#endif /* __KERNEL__ */
#endif /* __EXPORTED_HEADERS__ */

--
1.6.5.2.180.gc5b3e


of the two whatever works best.

Justin P. Mattock
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
From: Justin P. Mattock on
On 06/30/2010 02:36 PM, Arnd Bergmann wrote:
> On Wednesday 30 June 2010 23:20:42 Justin P. Mattock wrote:
>>
>>> Hehe, ugly. How about making it a single string? GCC preprocessor
>>> documentation suggests the same anyway ...
>>>
>>> Neither `#error' nor `#warning' macro-expands its argument.
>>> Internal whitespace sequences are each replaced with a single space.
>>> The line must consist of complete tokens. It is wisest to make the
>>> argument of these directives be a single string constant; this avoids
>>> problems with apostrophes and the like.
>>>
>
> What this is telling you is to put the text into a string constant, which
> means you add quotation marks at the beginning and end of the line, like
>
> #warning "see http://example.com/"
>

just realized that whole comment. was thrown off by the ` ' things.

>> From 45f24db45faa06aad01cfc62ff4b475380e5cb11 Mon Sep 17 00:00:00 2001
>> From: Justin P. Mattock<justinmattock(a)gmail.com>
>> Date: Wed, 30 Jun 2010 14:06:18 -0700
>> Subject: [PATCH]kernel.h Fix #warning message according to the GCC
>> preprocessor docs.
>
> BTW, your mail client adds incorrect word wrapping.
>

I'm copy/pasting from another machine(vnc) somehow thunderbird is
churning this up when doing so.

>> --- a/include/linux/kernel.h
>> +++ b/include/linux/kernel.h
>> @@ -730,7 +730,7 @@ extern int do_sysinfo(struct sysinfo *info);
>>
>> #ifndef __EXPORTED_HEADERS__
>> #ifndef __KERNEL__
>> -#warning Attempt to use kernel headers from user space, see
>> http://kernelnewbies.org/KernelHeaders
>> +#warning Attempt to use kernel headers from user space!
>> #endif /* __KERNEL__ */
>> #endif /* __EXPORTED_HEADERS__ */
>
> Here, too.
>
> Also, since you're already touching the warning message, it would be
> nice to move it from kernel.h to types.h, which is much more commonly
> used. When I introduced the message, I made the mistake to think
> that kernel.h was universally used by the majority of all headers,
> which turned out to be wrong. linux/types.h (or possibly linux/stddef.h)
> seems to be the most commonly used one, so that would be a more
> adequate place.
>
> Arnd
>

o.k. just sent a patch, but please have a look, Im not sure if it's
correct.(if theres a test case I can use let me know, seems my printk
program is not working with this change).

Justin P. Mattock
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo(a)vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/