]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit - block/bsg.c
block: Simplify bsg complete all
authorPeter Zijlstra <peterz@infradead.org>
Tue, 3 Feb 2015 11:55:31 +0000 (12:55 +0100)
committerJens Axboe <axboe@fb.com>
Wed, 4 Feb 2015 16:57:52 +0000 (09:57 -0700)
commit2c561246524c3319473bf47b558354f7ff47f0cf
treede8d6589065919ca581aae1c34a54c769592b8e0
parentb7f120b211510b80cb72c1d790d9a4531271edfa
block: Simplify bsg complete all

It took me a few tries to figure out what this code did; lets rewrite
it into a more regular form.

The thing that makes this one 'special' is the BSG_F_BLOCK flag, if
that is not set we're not supposed/allowed to block and should spin
wait for completion.

The (new) io_wait_event() will never see a false condition in case of
the spinning and we will therefore not block.

Cc: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Signed-off-by: Jens Axboe <axboe@fb.com>
block/bsg.c
include/linux/wait.h