Commit 3dd1680d authored by Jens Axboe's avatar Jens Axboe
Browse files

io-wq: cancel request if it's asking for files and we don't have them



This can't currently happen, but will be possible shortly. Handle missing
files just like we do not being able to grab a needed mm, and mark the
request as needing cancelation.

Signed-off-by: default avatarJens Axboe <axboe@kernel.dk>
parent 3cea11cd
Loading
Loading
Loading
Loading
+4 −0
Original line number Diff line number Diff line
@@ -482,6 +482,10 @@ static void io_impersonate_work(struct io_worker *worker,
		current->files = work->identity->files;
		current->nsproxy = work->identity->nsproxy;
		task_unlock(current);
		if (!work->identity->files) {
			/* failed grabbing files, ensure work gets cancelled */
			work->flags |= IO_WQ_WORK_CANCEL;
		}
	}
	if ((work->flags & IO_WQ_WORK_FS) && current->fs != work->identity->fs)
		current->fs = work->identity->fs;