lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:   Fri, 25 Jun 2021 15:18:15 -0400
From:   Nicolas Dufresne <nicolas@...fresne.ca>
To:     Mauro Carvalho Chehab <mchehab+huawei@...nel.org>,
        Laurent Pinchart <laurent.pinchart@...asonboard.com>
Cc:     Linux Media Mailing List <linux-media@...r.kernel.org>,
        linuxarm@...wei.com, mauro.chehab@...wei.com,
        Mauro Carvalho Chehab <mchehab@...nel.org>,
        linux-kernel@...r.kernel.org
Subject: Re: [PATCH] media: uvc: limit max bandwidth for HDMI capture

Le mardi 22 juin 2021 à 10:29 +0200, Mauro Carvalho Chehab a écrit :
> Em Mon, 21 Jun 2021 21:22:26 +0300
> Laurent Pinchart <laurent.pinchart@...asonboard.com> escreveu:
> 
> > Hi Mauro,
> > 
> > Thank you for the patch.
> 
> Thanks for reviewing it!
> 
> > 
> > On Mon, Feb 01, 2021 at 08:08:59PM +0100, Mauro Carvalho Chehab wrote:
> > > This device:
> > >         534d:2109 MacroSilicon
> > > 
> > > Announces that it supports several frame intervals for
> > > their resolutions for MJPEG compression:
> > > 
> > >         VideoStreaming Interface Descriptor:
> > >         bLength                            46
> > >         bDescriptorType                    36
> > >         bDescriptorSubtype                  7 (FRAME_MJPEG)
> > >         bFrameIndex                         1
> > >         bmCapabilities                   0x00
> > >           Still image unsupported
> > >         wWidth                           1920
> > >         wHeight                          1080
> > >         dwMinBitRate                   768000
> > >         dwMaxBitRate                196608000
> > >         dwMaxVideoFrameBufferSize     4147200
> > >         dwDefaultFrameInterval         166666
> > >         bFrameIntervalType                  5
> > >         dwFrameInterval( 0)            166666
> > >         dwFrameInterval( 1)            333333
> > >         dwFrameInterval( 2)            400000
> > >         dwFrameInterval( 3)            500000
> > >         dwFrameInterval( 4)           1000000
> > > 
> > > However, the highest frame interval (166666), which means 60 fps
> > > is not supported. For such resolution, the maximum interval
> > > is, instead 333333 (30 fps).  
> > 
> > What happens if you try to select it ?
> 
> Basically, URBs get lost: they cause apps like qv4l2 to crash
> sometimes, with:
> 
> 	v4l-convert: libjpeg error: Corrupt JPEG data: premature end of data segment

This is the emulated format handler that decodes jpeg behind application back
that is broken. The converter should implement this in a nicer way. E.g. it
could return ERROR buffer with payload = 0 in that case.

> 
> The image keeps blinking, and part of the image is replaced by
> white noise.
> 
> Clearly, it tries to send more data than the maximum available bandwidth
> on this chipset.
> 
> 
> Sent a v2 addressing the issues you pointed.
> 
> 
> Thanks,
> Mauro


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ