From: Frederic Weisbecker Date: Tue, 30 Mar 2010 00:33:36 +0000 (+0200) Subject: procfs: Use generic_file_llseek in /proc/vmcore X-Git-Tag: v2.6.35-rc1~491^2~3 X-Git-Url: https://openfabrics.org/gitweb/?a=commitdiff_plain;h=73296bc611cee009f3be6b451e827d1425b9c10f;p=~shefty%2Frdma-dev.git procfs: Use generic_file_llseek in /proc/vmcore /proc/vmcore has no llseek and then falls down to use default_llseek. This is racy against read_vmcore() 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/vmcore.c b/fs/proc/vmcore.c index 0872afa58d3..00ef6046d8d 100644 --- a/fs/proc/vmcore.c +++ b/fs/proc/vmcore.c @@ -162,6 +162,7 @@ static ssize_t read_vmcore(struct file *file, char __user *buffer, static const struct file_operations proc_vmcore_operations = { .read = read_vmcore, + .llseek = generic_file_llseek, }; static struct vmcore* __init get_new_element(void)