[PATCH] comedi: vmk80xx: fix expression for tx buffer size

Ian Abbott posted 1 patch 3 years, 10 months ago
There is a newer version of this series
drivers/comedi/drivers/vmk80xx.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[PATCH] comedi: vmk80xx: fix expression for tx buffer size
Posted by Ian Abbott 3 years, 10 months ago
The expression for setting the size of the allocated bulk TX buffer
(`devpriv->usb_tx_buf`) is calling `usb_endpoint_maxp(devpriv->ep_rx)`,
which is using the wrong endpoint (should be `devpriv->ep_tx`).  Fix it.

Fixes: a23461c47482 ("comedi: vmk80xx: fix transfer-buffer overflow")
Cc: Johan Hovold <johan@kernel.org>
Cc: stable@vger.kernel.org # 5.10, 5.15+
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
---
 drivers/comedi/drivers/vmk80xx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/comedi/drivers/vmk80xx.c b/drivers/comedi/drivers/vmk80xx.c
index 46023adc5395..4536ed43f65b 100644
--- a/drivers/comedi/drivers/vmk80xx.c
+++ b/drivers/comedi/drivers/vmk80xx.c
@@ -684,7 +684,7 @@ static int vmk80xx_alloc_usb_buffers(struct comedi_device *dev)
 	if (!devpriv->usb_rx_buf)
 		return -ENOMEM;
 
-	size = max(usb_endpoint_maxp(devpriv->ep_rx), MIN_BUF_SIZE);
+	size = max(usb_endpoint_maxp(devpriv->ep_tx), MIN_BUF_SIZE);
 	devpriv->usb_tx_buf = kzalloc(size, GFP_KERNEL);
 	if (!devpriv->usb_tx_buf)
 		return -ENOMEM;
-- 
2.35.1
Re: [PATCH] comedi: vmk80xx: fix expression for tx buffer size
Posted by Johan Hovold 3 years, 10 months ago
On Mon, Jun 06, 2022 at 11:52:37AM +0100, Ian Abbott wrote:
> The expression for setting the size of the allocated bulk TX buffer
> (`devpriv->usb_tx_buf`) is calling `usb_endpoint_maxp(devpriv->ep_rx)`,
> which is using the wrong endpoint (should be `devpriv->ep_tx`).  Fix it.

Bah. Good catch.

> Fixes: a23461c47482 ("comedi: vmk80xx: fix transfer-buffer overflow")
> Cc: Johan Hovold <johan@kernel.org>
> Cc: stable@vger.kernel.org # 5.10, 5.15+

I believe this one is needed in all stable trees (e.g. 4.9+).

> Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
> ---
>  drivers/comedi/drivers/vmk80xx.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/drivers/comedi/drivers/vmk80xx.c b/drivers/comedi/drivers/vmk80xx.c
> index 46023adc5395..4536ed43f65b 100644
> --- a/drivers/comedi/drivers/vmk80xx.c
> +++ b/drivers/comedi/drivers/vmk80xx.c
> @@ -684,7 +684,7 @@ static int vmk80xx_alloc_usb_buffers(struct comedi_device *dev)
>  	if (!devpriv->usb_rx_buf)
>  		return -ENOMEM;
>  
> -	size = max(usb_endpoint_maxp(devpriv->ep_rx), MIN_BUF_SIZE);
> +	size = max(usb_endpoint_maxp(devpriv->ep_tx), MIN_BUF_SIZE);
>  	devpriv->usb_tx_buf = kzalloc(size, GFP_KERNEL);
>  	if (!devpriv->usb_tx_buf)
>  		return -ENOMEM;

Looks good otherwise:

Reviewed-by: Johan Hovold <johan@kernel.org>
Re: [PATCH] comedi: vmk80xx: fix expression for tx buffer size
Posted by Ian Abbott 3 years, 10 months ago
On 07/06/2022 17:16, Johan Hovold wrote:
> On Mon, Jun 06, 2022 at 11:52:37AM +0100, Ian Abbott wrote:
>> The expression for setting the size of the allocated bulk TX buffer
>> (`devpriv->usb_tx_buf`) is calling `usb_endpoint_maxp(devpriv->ep_rx)`,
>> which is using the wrong endpoint (should be `devpriv->ep_tx`).  Fix it.
> 
> Bah. Good catch.
> 
>> Fixes: a23461c47482 ("comedi: vmk80xx: fix transfer-buffer overflow")
>> Cc: Johan Hovold <johan@kernel.org>
>> Cc: stable@vger.kernel.org # 5.10, 5.15+
> 
> I believe this one is needed in all stable trees (e.g. 4.9+).

True.  I didn't think the patch it fixes had been applied yet, but I 
didn't look hard enough.  I'll send a v2 with amended Cc line.

> 
>> Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
>> ---
>>   drivers/comedi/drivers/vmk80xx.c | 2 +-
>>   1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/comedi/drivers/vmk80xx.c b/drivers/comedi/drivers/vmk80xx.c
>> index 46023adc5395..4536ed43f65b 100644
>> --- a/drivers/comedi/drivers/vmk80xx.c
>> +++ b/drivers/comedi/drivers/vmk80xx.c
>> @@ -684,7 +684,7 @@ static int vmk80xx_alloc_usb_buffers(struct comedi_device *dev)
>>   	if (!devpriv->usb_rx_buf)
>>   		return -ENOMEM;
>>   
>> -	size = max(usb_endpoint_maxp(devpriv->ep_rx), MIN_BUF_SIZE);
>> +	size = max(usb_endpoint_maxp(devpriv->ep_tx), MIN_BUF_SIZE);
>>   	devpriv->usb_tx_buf = kzalloc(size, GFP_KERNEL);
>>   	if (!devpriv->usb_tx_buf)
>>   		return -ENOMEM;
> 
> Looks good otherwise:
> 
> Reviewed-by: Johan Hovold <johan@kernel.org>

Thanks for the review!

-- 
-=( Ian Abbott <abbotti@mev.co.uk> || MEV Ltd. is a company  )=-
-=( registered in England & Wales.  Regd. number: 02862268.  )=-
-=( Regd. addr.: S11 & 12 Building 67, Europa Business Park, )=-
-=( Bird Hall Lane, STOCKPORT, SK3 0XA, UK. || www.mev.co.uk )=-
[PATCH v2] comedi: vmk80xx: fix expression for tx buffer size
Posted by Ian Abbott 3 years, 10 months ago
The expression for setting the size of the allocated bulk TX buffer
(`devpriv->usb_tx_buf`) is calling `usb_endpoint_maxp(devpriv->ep_rx)`,
which is using the wrong endpoint (should be `devpriv->ep_tx`).  Fix it.

Fixes: a23461c47482 ("comedi: vmk80xx: fix transfer-buffer overflow")
Cc: Johan Hovold <johan@kernel.org>
Cc: stable@vger.kernel.org # 4.9+
Signed-off-by: Ian Abbott <abbotti@mev.co.uk>
Reviewed-by: Johan Hovold <johan@kernel.org>
---
v2: Amended Cc: stable@vger.kernel.org line to apply to 4.9+.
    Added Reviewed-by: Johan Hovold

 drivers/comedi/drivers/vmk80xx.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/comedi/drivers/vmk80xx.c b/drivers/comedi/drivers/vmk80xx.c
index 46023adc5395..4536ed43f65b 100644
--- a/drivers/comedi/drivers/vmk80xx.c
+++ b/drivers/comedi/drivers/vmk80xx.c
@@ -684,7 +684,7 @@ static int vmk80xx_alloc_usb_buffers(struct comedi_device *dev)
 	if (!devpriv->usb_rx_buf)
 		return -ENOMEM;
 
-	size = max(usb_endpoint_maxp(devpriv->ep_rx), MIN_BUF_SIZE);
+	size = max(usb_endpoint_maxp(devpriv->ep_tx), MIN_BUF_SIZE);
 	devpriv->usb_tx_buf = kzalloc(size, GFP_KERNEL);
 	if (!devpriv->usb_tx_buf)
 		return -ENOMEM;
-- 
2.35.1