diff options
author | Haiyang Zhang <haiyangz@microsoft.com> | 2012-07-25 12:08:41 +0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2012-07-26 02:31:30 +0400 |
commit | fa85a6c29a493e8a574bf62a6349b38b591bf885 (patch) | |
tree | 4022b7c94ff929f0f91d6eb6dffcf3feffa301ba | |
parent | 4331debc51ee1ce319f4a389484e0e8e05de2aca (diff) | |
download | linux-fa85a6c29a493e8a574bf62a6349b38b591bf885.tar.xz |
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>
-rw-r--r-- | drivers/net/hyperv/netvsc_drv.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/net/hyperv/netvsc_drv.c b/drivers/net/hyperv/netvsc_drv.c index 8e23c084c4a7..8c5a1c43c81d 100644 --- a/drivers/net/hyperv/netvsc_drv.c +++ b/drivers/net/hyperv/netvsc_drv.c @@ -47,7 +47,7 @@ struct net_device_context { struct work_struct work; }; - +#define RING_SIZE_MIN 64 static int ring_size = 128; module_param(ring_size, int, S_IRUGO); 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) { + 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); } |