hyperv: Add a check for ring_size value
It prevents ring_size being set to a too small value. Reported-by: Jason Wang <jasowang@redhat.com> Signed-off-by: Haiyang Zhang <haiyangz@microsoft.com> Reviewed-by: K. Y. Srinivasan <kys@microsoft.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
4331debc51
commit
fa85a6c29a
|
@ -47,7 +47,7 @@ struct net_device_context {
|
||||||
struct work_struct work;
|
struct work_struct work;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
#define RING_SIZE_MIN 64
|
||||||
static int ring_size = 128;
|
static int ring_size = 128;
|
||||||
module_param(ring_size, int, S_IRUGO);
|
module_param(ring_size, int, S_IRUGO);
|
||||||
MODULE_PARM_DESC(ring_size, "Ring buffer size (# of pages)");
|
MODULE_PARM_DESC(ring_size, "Ring buffer size (# of pages)");
|
||||||
|
@ -518,6 +518,11 @@ static void __exit netvsc_drv_exit(void)
|
||||||
|
|
||||||
static int __init netvsc_drv_init(void)
|
static int __init netvsc_drv_init(void)
|
||||||
{
|
{
|
||||||
|
if (ring_size < RING_SIZE_MIN) {
|
||||||
|
ring_size = RING_SIZE_MIN;
|
||||||
|
pr_info("Increased ring_size to %d (min allowed)\n",
|
||||||
|
ring_size);
|
||||||
|
}
|
||||||
return vmbus_driver_register(&netvsc_drv);
|
return vmbus_driver_register(&netvsc_drv);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue