* [PATCH] Install kernel-page-flags.h
@ 2012-03-14 7:26 Ulrich Drepper
2012-03-14 7:58 ` Christoph Hellwig
0 siblings, 1 reply; 7+ messages in thread
From: Ulrich Drepper @ 2012-03-14 7:26 UTC (permalink / raw)
To: arnd, davem, hverkuil, laurent.pinchart, linux-kernel, mchehab
Programs using /proc/kpageflags need to know about the various flags. The
<linux/kernel-page-flags.h> provides them and the comments in the file
indicate that it is supposed to be used by user-level code. But the file
is not installed.
The patch below installs the headers and marks the unstable flags as
out-of-bounds.
Signed-off-by: Ulrich Drepper <drepper@gmail.com>
include/linux/Kbuild | 1 +
include/linux/kernel-page-flags.h | 4 ++++
2 files changed, 5 insertions(+)
diff --git a/include/linux/Kbuild b/include/linux/Kbuild
index c94e717..356928e 100644
--- a/include/linux/Kbuild
+++ b/include/linux/Kbuild
@@ -227,6 +227,7 @@ header-y += kd.h
header-y += kdev_t.h
header-y += kernel.h
header-y += kernelcapi.h
+header-y += kernel-page-flags.h
header-y += keyboard.h
header-y += keyctl.h
header-y += l2tp.h
diff --git a/include/linux/kernel-page-flags.h b/include/linux/kernel-page-flags.h
index bd92a89..096b05d 100644
--- a/include/linux/kernel-page-flags.h
+++ b/include/linux/kernel-page-flags.h
@@ -31,6 +31,8 @@
#define KPF_KSM 21
+#ifdef __KERNEL__
+
/* kernel hacking assistances
* WARNING: subject to change, never rely on them!
*/
@@ -43,4 +45,6 @@
#define KPF_ARCH 38
#define KPF_UNCACHED 39
+#endif /* __KERNEL__ */
+
#endif /* LINUX_KERNEL_PAGE_FLAGS_H */
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH] Install kernel-page-flags.h
2012-03-14 7:26 [PATCH] Install kernel-page-flags.h Ulrich Drepper
@ 2012-03-14 7:58 ` Christoph Hellwig
2012-03-14 8:03 ` Ulrich Drepper
2012-03-14 10:40 ` Alexey Dobriyan
0 siblings, 2 replies; 7+ messages in thread
From: Christoph Hellwig @ 2012-03-14 7:58 UTC (permalink / raw)
To: Ulrich Drepper
Cc: arnd, davem, hverkuil, laurent.pinchart, linux-kernel, mchehab
On Wed, Mar 14, 2012 at 03:26:07AM -0400, Ulrich Drepper wrote:
> Programs using /proc/kpageflags need to know about the various flags. The
> <linux/kernel-page-flags.h> provides them and the comments in the file
> indicate that it is supposed to be used by user-level code. But the file
> is not installed.
>
> The patch below installs the headers and marks the unstable flags as
> out-of-bounds.
I don't think this is a good idea at all. Let's shoot the person who
added that braindead interface ASAP, and replace it with one printing
the flags in ASCII format.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Install kernel-page-flags.h
2012-03-14 7:58 ` Christoph Hellwig
@ 2012-03-14 8:03 ` Ulrich Drepper
2012-03-14 10:40 ` Alexey Dobriyan
1 sibling, 0 replies; 7+ messages in thread
From: Ulrich Drepper @ 2012-03-14 8:03 UTC (permalink / raw)
To: Christoph Hellwig
Cc: arnd, davem, hverkuil, laurent.pinchart, linux-kernel, mchehab
On 03/14/2012 03:58 AM, Christoph Hellwig wrote:
> I don't think this is a good idea at all. Let's shoot the person who
> added that braindead interface ASAP, and replace it with one printing
> the flags in ASCII format.
This isn't really realistic. The information is retrieved based on the
PFN using lseek+read from a file descriptor. How is the read supposed
to work in case the record returned is not of a fixed size? Aside,
potentially a lot of these records are to be read and using ASCII
strings will significantly slow things down.
If you have a concrete proposal please go ahead and propose it.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Install kernel-page-flags.h
2012-03-14 7:58 ` Christoph Hellwig
2012-03-14 8:03 ` Ulrich Drepper
@ 2012-03-14 10:40 ` Alexey Dobriyan
2012-03-19 11:32 ` Christoph Hellwig
1 sibling, 1 reply; 7+ messages in thread
From: Alexey Dobriyan @ 2012-03-14 10:40 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Ulrich Drepper, arnd, davem, hverkuil, laurent.pinchart,
linux-kernel, mchehab
On Wed, Mar 14, 2012 at 10:58 AM, Christoph Hellwig <hch@infradead.org> wrote:
> On Wed, Mar 14, 2012 at 03:26:07AM -0400, Ulrich Drepper wrote:
>> Programs using /proc/kpageflags need to know about the various flags. The
>> <linux/kernel-page-flags.h> provides them and the comments in the file
>> indicate that it is supposed to be used by user-level code. But the file
>> is not installed.
>>
>> The patch below installs the headers and marks the unstable flags as
>> out-of-bounds.
>
> I don't think this is a good idea at all. Let's shoot the person who
> added that braindead interface ASAP, and replace it with one printing
> the flags in ASCII format.
ASCII sucks.
This interface is not for humans.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Install kernel-page-flags.h
2012-03-14 10:40 ` Alexey Dobriyan
@ 2012-03-19 11:32 ` Christoph Hellwig
2012-03-19 12:45 ` Alexey Dobriyan
0 siblings, 1 reply; 7+ messages in thread
From: Christoph Hellwig @ 2012-03-19 11:32 UTC (permalink / raw)
To: Alexey Dobriyan
Cc: Christoph Hellwig, Ulrich Drepper, arnd, davem, hverkuil,
laurent.pinchart, linux-kernel, mchehab
On Wed, Mar 14, 2012 at 12:40:36PM +0200, Alexey Dobriyan wrote:
> >> Programs using /proc/kpageflags need to know about the various flags. ??The
> >> <linux/kernel-page-flags.h> provides them and the comments in the file
> >> indicate that it is supposed to be used by user-level code. ??But the file
> >> is not installed.
> >>
> >> The patch below installs the headers and marks the unstable flags as
> >> out-of-bounds.
> >
> > I don't think this is a good idea at all. ??Let's shoot the person who
> > added that braindead interface ASAP, and replace it with one printing
> > the flags in ASCII format.
>
> ASCII sucks.
> This interface is not for humans.
But we still can't lock down the page flags for a user interface - they
are a very scare resource and we can't afford to keep them stable due
to userspace poking into internals.
I guess the best we can do is to have a translation table for kernel
internal to external documented flags. Once you export the header with
the meanings it's time to add that table, even if it starts out as a 1:1
mapping.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Install kernel-page-flags.h
2012-03-19 11:32 ` Christoph Hellwig
@ 2012-03-19 12:45 ` Alexey Dobriyan
2012-03-25 12:28 ` Ulrich Drepper
0 siblings, 1 reply; 7+ messages in thread
From: Alexey Dobriyan @ 2012-03-19 12:45 UTC (permalink / raw)
To: Christoph Hellwig
Cc: Ulrich Drepper, arnd, davem, hverkuil, laurent.pinchart,
linux-kernel, mchehab
On Mon, Mar 19, 2012 at 2:32 PM, Christoph Hellwig <hch@infradead.org> wrote:
> On Wed, Mar 14, 2012 at 12:40:36PM +0200, Alexey Dobriyan wrote:
>> >> Programs using /proc/kpageflags need to know about the various flags. ??The
>> >> <linux/kernel-page-flags.h> provides them and the comments in the file
>> >> indicate that it is supposed to be used by user-level code. ??But the file
>> >> is not installed.
>> >>
>> >> The patch below installs the headers and marks the unstable flags as
>> >> out-of-bounds.
>> >
>> > I don't think this is a good idea at all. ??Let's shoot the person who
>> > added that braindead interface ASAP, and replace it with one printing
>> > the flags in ASCII format.
>>
>> ASCII sucks.
>> This interface is not for humans.
>
> But we still can't lock down the page flags for a user interface - they
> are a very scare resource and we can't afford to keep them stable due
> to userspace poking into internals.
>
> I guess the best we can do is to have a translation table for kernel
> internal to external documented flags. Once you export the header with
> the meanings it's time to add that table, even if it starts out as a 1:1
> mapping.
Well, this is totally different issue.
Translation is already there, see stable_page_flags().
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH] Install kernel-page-flags.h
2012-03-19 12:45 ` Alexey Dobriyan
@ 2012-03-25 12:28 ` Ulrich Drepper
0 siblings, 0 replies; 7+ messages in thread
From: Ulrich Drepper @ 2012-03-25 12:28 UTC (permalink / raw)
To: Alexey Dobriyan
Cc: Christoph Hellwig, Ulrich Drepper, arnd, davem, hverkuil,
laurent.pinchart, linux-kernel, mchehab
On Mon, Mar 19, 2012 at 08:45, Alexey Dobriyan <adobriyan@gmail.com> wrote:
>> I guess the best we can do is to have a translation table for kernel
>> internal to external documented flags. Once you export the header with
>> the meanings it's time to add that table, even if it starts out as a 1:1
>> mapping.
>
> Well, this is totally different issue.
> Translation is already there, see stable_page_flags().
Considering this, could the patch please be used? Otherwise you might
as well remove the /proc interfaces.
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2012-03-25 12:29 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-03-14 7:26 [PATCH] Install kernel-page-flags.h Ulrich Drepper
2012-03-14 7:58 ` Christoph Hellwig
2012-03-14 8:03 ` Ulrich Drepper
2012-03-14 10:40 ` Alexey Dobriyan
2012-03-19 11:32 ` Christoph Hellwig
2012-03-19 12:45 ` Alexey Dobriyan
2012-03-25 12:28 ` Ulrich Drepper
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox