We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent dd1beb3 commit d2a7de0Copy full SHA for d2a7de0
fs/nfs/direct.c
@@ -353,10 +353,12 @@ static ssize_t nfs_direct_wait(struct nfs_direct_req *dreq)
353
354
result = wait_for_completion_killable(&dreq->completion);
355
356
+ if (!result) {
357
+ result = dreq->count;
358
+ WARN_ON_ONCE(dreq->count < 0);
359
+ }
360
if (!result)
361
result = dreq->error;
- if (!result)
- result = dreq->count;
362
363
out:
364
return (ssize_t) result;
@@ -386,8 +388,10 @@ static void nfs_direct_complete(struct nfs_direct_req *dreq, bool write)
386
388
387
389
if (dreq->iocb) {
390
long res = (long) dreq->error;
- if (!res)
391
+ if (dreq->count != 0) {
392
res = (long) dreq->count;
393
394
395
dreq->iocb->ki_complete(dreq->iocb, res, 0);
396
}
397
0 commit comments