Revert "media: videobuf2: Fix length check for single plane dmabuf queueing"

Message ID 20210106135210.12337-1-naush@raspberrypi.com (mailing list archive)
State Superseded, archived
Headers
Series Revert "media: videobuf2: Fix length check for single plane dmabuf queueing" |

Commit Message

Naushir Patuck Jan. 6, 2021, 1:52 p.m. UTC
  The updated length check for dmabuf types broke existing usage in v4l2
userland clients.

Fixes: 961d3b27 ("media: videobuf2: Fix length check for single plane dmabuf queueing")
Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
---
 drivers/media/common/videobuf2/videobuf2-v4l2.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
  

Comments

Kieran Bingham Jan. 6, 2021, 2:35 p.m. UTC | #1
Hi Naush,

On 06/01/2021 13:52, Naushir Patuck wrote:
> The updated length check for dmabuf types broke existing usage in v4l2
> userland clients.

Indeed, my tests have indeed been failing since 5.8 or such it seems.

Thank you for this - it fixes the tests again for me.

Tested-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>


> Fixes: 961d3b27 ("media: videobuf2: Fix length check for single plane dmabuf queueing")
> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> ---
>  drivers/media/common/videobuf2/videobuf2-v4l2.c | 3 +--
>  1 file changed, 1 insertion(+), 2 deletions(-)
> 
> diff --git a/drivers/media/common/videobuf2/videobuf2-v4l2.c b/drivers/media/common/videobuf2/videobuf2-v4l2.c
> index 96d3b2b2aa31..3f61f5863bf7 100644
> --- a/drivers/media/common/videobuf2/videobuf2-v4l2.c
> +++ b/drivers/media/common/videobuf2/videobuf2-v4l2.c
> @@ -118,8 +118,7 @@ static int __verify_length(struct vb2_buffer *vb, const struct v4l2_buffer *b)
>  				return -EINVAL;
>  		}
>  	} else {
> -		length = (b->memory == VB2_MEMORY_USERPTR ||
> -			  b->memory == VB2_MEMORY_DMABUF)
> +		length = (b->memory == VB2_MEMORY_USERPTR)
>  			? b->length : vb->planes[0].length;
>  
>  		if (b->bytesused > length)
>
  
Laurent Pinchart Jan. 6, 2021, 2:42 p.m. UTC | #2
On Wed, Jan 06, 2021 at 02:35:22PM +0000, Kieran Bingham wrote:
> Hi Naush,
> 
> On 06/01/2021 13:52, Naushir Patuck wrote:
> > The updated length check for dmabuf types broke existing usage in v4l2
> > userland clients.
> 
> Indeed, my tests have indeed been failing since 5.8 or such it seems.
> 
> Thank you for this - it fixes the tests again for me.
> 
> Tested-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>

Cc: stable@vger.kernel.org

?

> > Fixes: 961d3b27 ("media: videobuf2: Fix length check for single plane dmabuf queueing")
> > Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
> > ---
> >  drivers/media/common/videobuf2/videobuf2-v4l2.c | 3 +--
> >  1 file changed, 1 insertion(+), 2 deletions(-)
> > 
> > diff --git a/drivers/media/common/videobuf2/videobuf2-v4l2.c b/drivers/media/common/videobuf2/videobuf2-v4l2.c
> > index 96d3b2b2aa31..3f61f5863bf7 100644
> > --- a/drivers/media/common/videobuf2/videobuf2-v4l2.c
> > +++ b/drivers/media/common/videobuf2/videobuf2-v4l2.c
> > @@ -118,8 +118,7 @@ static int __verify_length(struct vb2_buffer *vb, const struct v4l2_buffer *b)
> >  				return -EINVAL;
> >  		}
> >  	} else {
> > -		length = (b->memory == VB2_MEMORY_USERPTR ||
> > -			  b->memory == VB2_MEMORY_DMABUF)
> > +		length = (b->memory == VB2_MEMORY_USERPTR)
> >  			? b->length : vb->planes[0].length;
> >  
> >  		if (b->bytesused > length)
  
Kieran Bingham Jan. 6, 2021, 2:50 p.m. UTC | #3
Hi Laurent,

On 06/01/2021 14:42, Laurent Pinchart wrote:
> On Wed, Jan 06, 2021 at 02:35:22PM +0000, Kieran Bingham wrote:
>> Hi Naush,
>>
>> On 06/01/2021 13:52, Naushir Patuck wrote:
>>> The updated length check for dmabuf types broke existing usage in v4l2
>>> userland clients.
>>
>> Indeed, my tests have indeed been failing since 5.8 or such it seems.
>>
>> Thank you for this - it fixes the tests again for me.
>>
>> Tested-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
>> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
> 
> Cc: stable@vger.kernel.org

Is that still needed/used nowadays? I thought backports were picked up
automatically by the Fixes: or by AI-Magic?

Though [0] does imply it's still a preferred option.

[0] https://www.kernel.org/doc/html/v5.10/process/stable-kernel-rules.html

--
Kieran


> 
> ?
> 
>>> Fixes: 961d3b27 ("media: videobuf2: Fix length check for single plane dmabuf queueing")
>>> Signed-off-by: Naushir Patuck <naush@raspberrypi.com>
>>> ---
>>>  drivers/media/common/videobuf2/videobuf2-v4l2.c | 3 +--
>>>  1 file changed, 1 insertion(+), 2 deletions(-)
>>>
>>> diff --git a/drivers/media/common/videobuf2/videobuf2-v4l2.c b/drivers/media/common/videobuf2/videobuf2-v4l2.c
>>> index 96d3b2b2aa31..3f61f5863bf7 100644
>>> --- a/drivers/media/common/videobuf2/videobuf2-v4l2.c
>>> +++ b/drivers/media/common/videobuf2/videobuf2-v4l2.c
>>> @@ -118,8 +118,7 @@ static int __verify_length(struct vb2_buffer *vb, const struct v4l2_buffer *b)
>>>  				return -EINVAL;
>>>  		}
>>>  	} else {
>>> -		length = (b->memory == VB2_MEMORY_USERPTR ||
>>> -			  b->memory == VB2_MEMORY_DMABUF)
>>> +		length = (b->memory == VB2_MEMORY_USERPTR)
>>>  			? b->length : vb->planes[0].length;
>>>  
>>>  		if (b->bytesused > length)
>
  

Patch

diff --git a/drivers/media/common/videobuf2/videobuf2-v4l2.c b/drivers/media/common/videobuf2/videobuf2-v4l2.c
index 96d3b2b2aa31..3f61f5863bf7 100644
--- a/drivers/media/common/videobuf2/videobuf2-v4l2.c
+++ b/drivers/media/common/videobuf2/videobuf2-v4l2.c
@@ -118,8 +118,7 @@  static int __verify_length(struct vb2_buffer *vb, const struct v4l2_buffer *b)
 				return -EINVAL;
 		}
 	} else {
-		length = (b->memory == VB2_MEMORY_USERPTR ||
-			  b->memory == VB2_MEMORY_DMABUF)
+		length = (b->memory == VB2_MEMORY_USERPTR)
 			? b->length : vb->planes[0].length;
 
 		if (b->bytesused > length)