Leon Romanovsky
2021-Sep-05 10:19 UTC
[PATCH v3 1/1] virtio-blk: add num_request_queues module parameter
On Sun, Sep 05, 2021 at 12:19:09PM +0300, Max Gurtovoy wrote:> > On 9/5/2021 11:49 AM, Chaitanya Kulkarni wrote: > > > > On 9/5/2021 12:46 AM, Leon Romanovsky wrote: > > > > +static unsigned int num_request_queues; > > > > +module_param_cb(num_request_queues, &queue_count_ops, > > > > &num_request_queues, > > > > +??????? 0644); > > > > +MODULE_PARM_DESC(num_request_queues, > > > > +???????? "Number of request queues to use for blk device. > > > > Should > 0"); > > > > + > > > Won't it limit all virtio block devices to the same limit? > > > > > > It is very common to see multiple virtio-blk devices on the same system > > > and they probably need different limits. > > > > > > Thanks > > > > > > Without looking into the code, that can be done adding a configfs > > > > interface and overriding a global value (module param) when it is set > > from > > > > configfs. > > > > > You have many ways to overcome this issue. > > For example: > > # ls -l /sys/block/vda/mq/ > drwxr-xr-x 18 root root 0 Sep? 5 12:14 0 > drwxr-xr-x 18 root root 0 Sep? 5 12:14 1 > drwxr-xr-x 18 root root 0 Sep? 5 12:14 2 > drwxr-xr-x 18 root root 0 Sep? 5 12:14 3 > > # echo virtio0 > /sys/bus/virtio/drivers/virtio_blk/unbind > > # echo 8 > /sys/module/virtio_blk/parameters/num_request_queuesThis is global to all virtio-blk devices.> > # echo virtio0 > /sys/bus/virtio/drivers/virtio_blk/bind > > # ls -l /sys/block/vda/mq/ > drwxr-xr-x 10 root root 0 Sep? 5 12:17 0 > drwxr-xr-x 10 root root 0 Sep? 5 12:17 1 > drwxr-xr-x 10 root root 0 Sep? 5 12:17 2 > drwxr-xr-x 10 root root 0 Sep? 5 12:17 3 > drwxr-xr-x 10 root root 0 Sep? 5 12:17 4 > drwxr-xr-x 10 root root 0 Sep? 5 12:17 5 > drwxr-xr-x 10 root root 0 Sep? 5 12:17 6 > drwxr-xr-x 10 root root 0 Sep? 5 12:17 7 > > -Max. > >