public inbox for linux-block@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH V3 0/6] ublk_drv: add mechanism for supporting unprivileged ublk device
@ 2022-12-07 12:32 Ming Lei
  2022-12-07 12:33 ` [PATCH V3 1/6] ublk_drv: remove nr_aborted_queues from ublk_device Ming Lei
                   ` (6 more replies)
  0 siblings, 7 replies; 12+ messages in thread
From: Ming Lei @ 2022-12-07 12:32 UTC (permalink / raw)
  To: Jens Axboe; +Cc: linux-block, ZiyangZhang, Ming Lei

Hello,

Stefan Hajnoczi suggested un-privileged ublk device[1] for container
use case.

So far only administrator can create/control ublk device which is too
strict and increase system administrator burden, and this patchset
implements un-privileged ublk device:

- any user can create ublk device, which can only be controlled &
  accessed by the owner of the device or administrator

For using such mechanism, system administrator needs to deploy two
simple udev rules[2] after running 'make install' in ublksrv.

Userspace(ublksrv):

	https://github.com/ming1/ubdsrv/tree/unprivileged-ublk
    
'ublk add -t $TYPE --un_privileged' is for creating one un-privileged
ublk device if the user is un-privileged.


[1] https://lore.kernel.org/linux-block/YoOr6jBfgVm8GvWg@stefanha-x1.localdomain/
[2] https://github.com/ming1/ubdsrv/blob/unprivileged-ublk/README.rst#un-privileged-mode

V3:
	- don't warn on invalid user input for setting devt parameter, as
	  suggested by Ziyang, patch 4/6
	- fix one memory corruption issue, patch 6/6

V2:
	- fix "ublk_ctrl_uring_cmd_permission() error: uninitialized symbol 'mask'", reported
	by  Dan Carpenter' test robot
	- address Ziyang's comment on dealing with nr_privileged_daemon


Ming Lei (6):
  ublk_drv: remove nr_aborted_queues from ublk_device
  ublk_drv: don't probe partitions if the ubq daemon isn't trusted
  ublk_drv: move ublk_get_device_from_id into ublk_ctrl_uring_cmd
  ublk_drv: add device parameter UBLK_PARAM_TYPE_DEVT
  ublk_drv: add module parameter of ublks_max for limiting max allowed
    ublk dev
  ublk_drv: add mechanism for supporting unprivileged ublk device

 Documentation/block/ublk.rst  |  18 +-
 drivers/block/ublk_drv.c      | 336 ++++++++++++++++++++++++----------
 include/uapi/linux/ublk_cmd.h |  49 ++++-
 3 files changed, 296 insertions(+), 107 deletions(-)

-- 
2.31.1


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2023-01-04  8:20 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-12-07 12:32 [PATCH V3 0/6] ublk_drv: add mechanism for supporting unprivileged ublk device Ming Lei
2022-12-07 12:33 ` [PATCH V3 1/6] ublk_drv: remove nr_aborted_queues from ublk_device Ming Lei
2022-12-07 12:33 ` [PATCH V3 2/6] ublk_drv: don't probe partitions if the ubq daemon isn't trusted Ming Lei
2022-12-07 12:33 ` [PATCH V3 3/6] ublk_drv: move ublk_get_device_from_id into ublk_ctrl_uring_cmd Ming Lei
2022-12-07 12:33 ` [PATCH V3 4/6] ublk_drv: add device parameter UBLK_PARAM_TYPE_DEVT Ming Lei
2022-12-07 12:33 ` [PATCH V3 5/6] ublk_drv: add module parameter of ublks_max for limiting max allowed ublk dev Ming Lei
2022-12-07 12:33 ` [PATCH V3 6/6] ublk_drv: add mechanism for supporting unprivileged ublk device Ming Lei
2023-01-03 20:35   ` Jonathan Corbet
2023-01-04  8:19     ` Ming Lei
2022-12-12  3:59 ` [PATCH V3 0/6] " Ming Lei
2022-12-14 17:54   ` Jens Axboe
2022-12-15  0:35     ` Ming Lei

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox