diff options
| author | Ingo Molnar <mingo@elte.hu> | 2008-08-14 06:19:59 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@elte.hu> | 2008-08-14 06:19:59 -0400 |
| commit | 8d7ccaa545490cdffdfaff0842436a8dd85cf47b (patch) | |
| tree | 8129b5907161bc6ae26deb3645ce1e280c5e1f51 /fs/lockd/clntproc.c | |
| parent | b2139aa0eec330c711c5a279db361e5ef1178e78 (diff) | |
| parent | 30a2f3c60a84092c8084dfe788b710f8d0768cd4 (diff) | |
Merge commit 'v2.6.27-rc3' into x86/prototypes
Conflicts:
include/asm-x86/dma-mapping.h
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'fs/lockd/clntproc.c')
| -rw-r--r-- | fs/lockd/clntproc.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/fs/lockd/clntproc.c b/fs/lockd/clntproc.c index 1f6dc518505c..31668b690e03 100644 --- a/fs/lockd/clntproc.c +++ b/fs/lockd/clntproc.c | |||
| @@ -582,7 +582,15 @@ again: | |||
| 582 | } | 582 | } |
| 583 | if (status < 0) | 583 | if (status < 0) |
| 584 | goto out_unlock; | 584 | goto out_unlock; |
| 585 | status = nlm_stat_to_errno(resp->status); | 585 | /* |
| 586 | * EAGAIN doesn't make sense for sleeping locks, and in some | ||
| 587 | * cases NLM_LCK_DENIED is returned for a permanent error. So | ||
| 588 | * turn it into an ENOLCK. | ||
| 589 | */ | ||
| 590 | if (resp->status == nlm_lck_denied && (fl_flags & FL_SLEEP)) | ||
| 591 | status = -ENOLCK; | ||
| 592 | else | ||
| 593 | status = nlm_stat_to_errno(resp->status); | ||
| 586 | out_unblock: | 594 | out_unblock: |
| 587 | nlmclnt_finish_block(block); | 595 | nlmclnt_finish_block(block); |
| 588 | out: | 596 | out: |
