diff options
author | Denis Cheng <crquan@gmail.com> | 2007-07-25 05:53:58 -0400 |
---|---|---|
committer | Steven Whitehouse <swhiteho@redhat.com> | 2007-10-10 03:54:58 -0400 |
commit | cee23c79d08c57bbbb9923703409af3b17518c58 (patch) | |
tree | 57a09aa5c4d846a1fc65e8c576b5fd9bfbe8bc4f /fs/gfs2 | |
parent | 6760bdcd03a12d7d082794311ccbaf44bfc23b06 (diff) |
[GFS2] use an temp variable to reduce a spin_unlock
this is more clear.
Signed-off-by: Denis Cheng <crquan@gmail.com>
Signed-off-by: David Teigland <teigland@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2')
-rw-r--r-- | fs/gfs2/locking/dlm/plock.c | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/fs/gfs2/locking/dlm/plock.c b/fs/gfs2/locking/dlm/plock.c index fba1f1d87e4f..1f7b038530b4 100644 --- a/fs/gfs2/locking/dlm/plock.c +++ b/fs/gfs2/locking/dlm/plock.c | |||
@@ -346,15 +346,16 @@ static ssize_t dev_write(struct file *file, const char __user *u, size_t count, | |||
346 | 346 | ||
347 | static unsigned int dev_poll(struct file *file, poll_table *wait) | 347 | static unsigned int dev_poll(struct file *file, poll_table *wait) |
348 | { | 348 | { |
349 | unsigned int mask = 0; | ||
350 | |||
349 | poll_wait(file, &send_wq, wait); | 351 | poll_wait(file, &send_wq, wait); |
350 | 352 | ||
351 | spin_lock(&ops_lock); | 353 | spin_lock(&ops_lock); |
352 | if (!list_empty(&send_list)) { | 354 | if (!list_empty(&send_list)) |
353 | spin_unlock(&ops_lock); | 355 | mask = POLLIN | POLLRDNORM; |
354 | return POLLIN | POLLRDNORM; | ||
355 | } | ||
356 | spin_unlock(&ops_lock); | 356 | spin_unlock(&ops_lock); |
357 | return 0; | 357 | |
358 | return mask; | ||
358 | } | 359 | } |
359 | 360 | ||
360 | static const struct file_operations dev_fops = { | 361 | static const struct file_operations dev_fops = { |