aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/workqueue.c
diff options
context:
space:
mode:
authorJerome Marchand <jmarchan@redhat.com>2010-10-26 14:22:33 -0700
committerLinus Torvalds <torvalds@linux-foundation.org>2010-10-26 16:52:13 -0700
commit99dc829256bb8cfcb1f58b7f118893fdbf608e60 (patch)
tree07c5b353965b1ead7183bd01c0b48903ded0d8af /kernel/workqueue.c
parentfs: move exportfs since it is not a networking filesystem (diff)
downloadlinux-dev-99dc829256bb8cfcb1f58b7f118893fdbf608e60.tar.xz
linux-dev-99dc829256bb8cfcb1f58b7f118893fdbf608e60.zip
procfs: fix numbering in /proc/locks
The lock number in /proc/locks (first field) is implemented by a counter (private field of struct seq_file) which is incremented at each call of locks_show() and reset to 1 in locks_start() whatever the offset is. It should be reset according to the actual position in the list. Because of this, the numbering erratically restarts at 1 several times when reading a long /proc/locks file. Moreover, locks_show() can be called twice to print a single line thus skipping a number. The counter should be incremented in locks_next(). And last, pos is a loff_t, which can be bigger than a pointer, so we don't use the pointer as an integer anymore, and allocate a loff_t instead. Signed-off-by: Jerome Marchand <jmarchan@redhat.com> Cc: Pavel Emelyanov <xemul@parallels.com> Cc: Matthew Wilcox <matthew@wil.cx> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'kernel/workqueue.c')
0 files changed, 0 insertions, 0 deletions