From: Frederic Weisbecker Date: Tue, 30 Mar 2010 00:14:26 +0000 (+0200) Subject: procfs: Use generic_file_llseek in /proc/kcore X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=34aacb2920667d405a8df15968b7f71ba46c8f18;p=linux-beck.git procfs: Use generic_file_llseek in /proc/kcore /proc/kcore has no llseek and then falls down to use default_llseek. This is racy against read_kcore() that directly manipulates fpos but it doesn't hold the bkl there so using it in llseek doesn't protect anything. Let's use generic_file_llseek() instead. Signed-off-by: Frederic Weisbecker Acked-by: Arnd Bergmann Cc: Thomas Gleixner Cc: Andrew Morton Cc: Ingo Molnar Cc: John Kacur Cc: KAMEZAWA Hiroyuki Cc: Al Viro --- diff --git a/fs/proc/kcore.c b/fs/proc/kcore.c index b442dac8f5f9..396453200ef4 100644 --- a/fs/proc/kcore.c +++ b/fs/proc/kcore.c @@ -557,6 +557,7 @@ static int open_kcore(struct inode *inode, struct file *filp) static const struct file_operations proc_kcore_operations = { .read = read_kcore, .open = open_kcore, + .llseek = generic_file_llseek, }; #ifdef CONFIG_MEMORY_HOTPLUG