diff options
Diffstat (limited to 'fs')
-rw-r--r-- | fs/nfsd/nfs4state.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c index bc8507c2352..db7258c1342 100644 --- a/fs/nfsd/nfs4state.c +++ b/fs/nfsd/nfs4state.c | |||
@@ -2554,9 +2554,14 @@ static void nfsd_break_deleg_cb(struct file_lock *fl) | |||
2554 | struct nfs4_file *fp = (struct nfs4_file *)fl->fl_owner; | 2554 | struct nfs4_file *fp = (struct nfs4_file *)fl->fl_owner; |
2555 | struct nfs4_delegation *dp; | 2555 | struct nfs4_delegation *dp; |
2556 | 2556 | ||
2557 | BUG_ON(!fp); | 2557 | if (!fp) { |
2558 | /* We assume break_lease is only called once per lease: */ | 2558 | WARN(1, "(%p)->fl_owner NULL\n", fl); |
2559 | BUG_ON(fp->fi_had_conflict); | 2559 | return; |
2560 | } | ||
2561 | if (fp->fi_had_conflict) { | ||
2562 | WARN(1, "duplicate break on %p\n", fp); | ||
2563 | return; | ||
2564 | } | ||
2560 | /* | 2565 | /* |
2561 | * We don't want the locks code to timeout the lease for us; | 2566 | * We don't want the locks code to timeout the lease for us; |
2562 | * we'll remove it ourself if a delegation isn't returned | 2567 | * we'll remove it ourself if a delegation isn't returned |