diff mbox

locks: use list_first_entry_or_null()

Message ID f3623904d50b5392851044b545a8bdf42bb0c5d3.1447853914.git.geliangtang@163.com (mailing list archive)
State New, archived
Headers show

Commit Message

Geliang Tang Nov. 18, 2015, 1:40 p.m. UTC
Simplify the code with list_first_entry_or_null().

Signed-off-by: Geliang Tang <geliangtang@163.com>
---
 fs/locks.c | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

Comments

Jeff Layton Nov. 18, 2015, 2:22 p.m. UTC | #1
On Wed, 18 Nov 2015 21:40:33 +0800
Geliang Tang <geliangtang@163.com> wrote:

> Simplify the code with list_first_entry_or_null().
> 
> Signed-off-by: Geliang Tang <geliangtang@163.com>
> ---
>  fs/locks.c | 10 ++++------
>  1 file changed, 4 insertions(+), 6 deletions(-)
> 
> diff --git a/fs/locks.c b/fs/locks.c
> index 86c9467..d2ee8e3 100644
> --- a/fs/locks.c
> +++ b/fs/locks.c
> @@ -1505,12 +1505,10 @@ void lease_get_mtime(struct inode *inode, struct timespec *time)
>  	ctx = smp_load_acquire(&inode->i_flctx);
>  	if (ctx && !list_empty_careful(&ctx->flc_lease)) {
>  		spin_lock(&ctx->flc_lock);
> -		if (!list_empty(&ctx->flc_lease)) {
> -			fl = list_first_entry(&ctx->flc_lease,
> -						struct file_lock, fl_list);
> -			if (fl->fl_type == F_WRLCK)
> -				has_lease = true;
> -		}
> +		fl = list_first_entry_or_null(&ctx->flc_lease,
> +					      struct file_lock, fl_list);
> +		if (fl && (fl->fl_type == F_WRLCK))
> +			has_lease = true;
>  		spin_unlock(&ctx->flc_lock);
>  	}
>  

Looks fine. I'll merge it for v4.5.

Thanks!
diff mbox

Patch

diff --git a/fs/locks.c b/fs/locks.c
index 86c9467..d2ee8e3 100644
--- a/fs/locks.c
+++ b/fs/locks.c
@@ -1505,12 +1505,10 @@  void lease_get_mtime(struct inode *inode, struct timespec *time)
 	ctx = smp_load_acquire(&inode->i_flctx);
 	if (ctx && !list_empty_careful(&ctx->flc_lease)) {
 		spin_lock(&ctx->flc_lock);
-		if (!list_empty(&ctx->flc_lease)) {
-			fl = list_first_entry(&ctx->flc_lease,
-						struct file_lock, fl_list);
-			if (fl->fl_type == F_WRLCK)
-				has_lease = true;
-		}
+		fl = list_first_entry_or_null(&ctx->flc_lease,
+					      struct file_lock, fl_list);
+		if (fl && (fl->fl_type == F_WRLCK))
+			has_lease = true;
 		spin_unlock(&ctx->flc_lock);
 	}