summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthias Kaehlcke <matthias.kaehlcke@gmail.com>2007-10-02 20:21:34 +0200
committerJ. Bruce Fields <bfields@citi.umich.edu>2007-10-10 00:32:46 +0200
commit094f2825218fec1b240cb8537d2d0a10edf5ddc9 (patch)
treebadec49dc185e0b5cfcf6a6a04623077d35152ca
parentNFS: clean up explicit check for mandatory locks (diff)
downloadlinux-094f2825218fec1b240cb8537d2d0a10edf5ddc9.tar.xz
linux-094f2825218fec1b240cb8537d2d0a10edf5ddc9.zip
fs/locks.c: use list_for_each_entry() instead of list_for_each()
fs/locks.c: use list_for_each_entry() instead of list_for_each() in posix_locks_deadlock() and get_locks_status() Signed-off-by: Matthias Kaehlcke <matthias.kaehlcke@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
-rw-r--r--fs/locks.c17
1 files changed, 7 insertions, 10 deletions
diff --git a/fs/locks.c b/fs/locks.c
index 9a3fe0d8285b..c17bc00b1e8d 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -700,13 +700,12 @@ EXPORT_SYMBOL(posix_test_lock);
static int posix_locks_deadlock(struct file_lock *caller_fl,
struct file_lock *block_fl)
{
- struct list_head *tmp;
+ struct file_lock *fl;
next_task:
if (posix_same_owner(caller_fl, block_fl))
return 1;
- list_for_each(tmp, &blocked_list) {
- struct file_lock *fl = list_entry(tmp, struct file_lock, fl_link);
+ list_for_each_entry(fl, &blocked_list, fl_link) {
if (posix_same_owner(fl, block_fl)) {
fl = fl->fl_next;
block_fl = fl;
@@ -2164,24 +2163,22 @@ static void move_lock_status(char **p, off_t* pos, off_t offset)
int get_locks_status(char *buffer, char **start, off_t offset, int length)
{
- struct list_head *tmp;
+ struct file_lock *fl;
char *q = buffer;
off_t pos = 0;
int i = 0;
lock_kernel();
- list_for_each(tmp, &file_lock_list) {
- struct list_head *btmp;
- struct file_lock *fl = list_entry(tmp, struct file_lock, fl_link);
+ list_for_each_entry(fl, &file_lock_list, fl_link) {
+ struct file_lock *bfl;
+
lock_get_status(q, fl, ++i, "");
move_lock_status(&q, &pos, offset);
if(pos >= offset+length)
goto done;
- list_for_each(btmp, &fl->fl_block) {
- struct file_lock *bfl = list_entry(btmp,
- struct file_lock, fl_block);
+ list_for_each_entry(bfl, &fl->fl_block, fl_block) {
lock_get_status(q, bfl, i, " ->");
move_lock_status(&q, &pos, offset);