[Patch] kcore: remove its pointless size

Amerigo Wang
2009-06-22T08:52:21Z

On Wed, Jun 17, 2009 at 10:41:32PM -0700, Eric W. Biederman wrote:
>Amerigo Wang <xiyou.wangcong@gmail.com> writes:
>>
>> Of course I knew this.
>>
>> Just read the code:
>>
>> phdr->p_offset = kc_vaddr_to_offset(m->addr) + dataoff;
>>
>> So it should be 0, 'dataoff' is there...
>
>Sorry. The naming then is horrible. It is really
>kc_vaddr_to_something_like_the_offset.
>
>I still don't see the need for a flat offset space.
>
>I can see a real point of only having a single kc_vaddr_to_offset
>function. Instead of the 3 in existence.
>
>No point in cluttering the whole world with the oddities of the kcore
>code. Especially when it should get cleaned up.
>
>My real point earlier is that kc_vaddr_to_offset and
>kc_offset_to_vaddr actually on x86_64 aren't broken. They are just
>peculiar. There is some small point to their oddities, in that if
>something is in the upper half of the address space (like xen) but
>below PAGE_OFFSET you have a chance of accessing it with /proc/kcore.
>But that is a very minor benefit.

It looks like that Linus fixes this in commit 9063c61fd5cbd.

So I will only fix the rest.

Signed-off-by: WANG Cong <amwang@redhat.com>
Cc: mtk.manpages@gmail.com

---
diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c
index 59b43a0..eca5201 100644
--- a/fs/proc/kcore.c
+++ b/fs/proc/kcore.c
@@ -405,9 +405,6 @@ read_kcore(struct file *file, char __user *buffer, size_t buflen, loff_t *fpos)
static int __init proc_kcore_init(void)
{
proc_root_kcore = proc_create("kcore", S_IRUSR, NULL, &proc_kcore_operations);
- if (proc_root_kcore)
- proc_root_kcore->size =
- (size_t)high_memory - PAGE_OFFSET + PAGE_SIZE;
return 0;
}
module_init(proc_kcore_init);

---
diff --git a/man5/proc.5 b/man5/proc.5
index ed47f70..e31aae4 100644
--- a/man5/proc.5
+++ b/man5/proc.5
@@ -1246,8 +1246,6 @@ kernel
binary, GDB can be used to
examine the current state of any kernel data structures.

-The total length of the file is the size of physical memory (RAM) plus
-4KB.
.TP
.I /proc/kmsg
This file can be used instead of the