]> git.baikalelectronics.ru Git - kernel.git/commit
loop: Clean up LOOP_SET_STATUS lo_flags handling
authorMartijn Coenen <maco@android.com>
Wed, 13 May 2020 13:38:44 +0000 (15:38 +0200)
committerJens Axboe <axboe@kernel.dk>
Thu, 21 May 2020 14:20:35 +0000 (08:20 -0600)
commit5060ca306445c739990660fb035d14319131d082
treeedf4e1c5f3dbc56b7545bc317d9d68366bfe02b8
parentf5ba2882226d0f554894dd9e7fc8f02eef72468c
loop: Clean up LOOP_SET_STATUS lo_flags handling

LOOP_SET_STATUS(64) will actually allow some lo_flags to be modified; in
particular, LO_FLAGS_AUTOCLEAR can be set and cleared, whereas
LO_FLAGS_PARTSCAN can be set to request a partition scan. Make this
explicit by updating the UAPI to include the flags that can be
set/cleared using this ioctl.

The implementation can then blindly take over the passed in flags,
and use the previous flags for those flags that can't be set / cleared
using LOOP_SET_STATUS.

Signed-off-by: Martijn Coenen <maco@android.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
drivers/block/loop.c
include/uapi/linux/loop.h