Searched hist:"99 dc829256bb8cfcb1f58b7f118893fdbf608e60" (Results 1 – 1 of 1) sorted by relevance
/linux/fs/ |
H A D | locks.c | diff 99dc829256bb8cfcb1f58b7f118893fdbf608e60 Tue Oct 26 23:22:33 CEST 2010 Jerome Marchand <jmarchan@redhat.com> 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>
|