* Re: video: USB webcam fails since kernel 3.2
[not found] ` <20120616044137.GB4076@burratino>
@ 2012-06-17 11:23 ` Martin-Éric Racine
2012-06-17 17:11 ` Jonathan Nieder
2012-07-08 13:01 ` Martin-Éric Racine
0 siblings, 2 replies; 9+ messages in thread
From: Martin-Éric Racine @ 2012-06-17 11:23 UTC (permalink / raw)
To: Jean-François Moine; +Cc: 677533, linux-media, linux-kernel
pe, 2012-06-15 kello 23:41 -0500, Jonathan Nieder kirjoitti:
> Martin-Éric Racine wrote:
> > usb 1-7: new high-speed USB device number 3 using ehci_hcd
> [...]
> > usb 1-7: New USB device found, idVendor=0ac8, idProduct=0321
> > usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=0
> > usb 1-7: Product: USB2.0 Web Camera
> > usb 1-7: Manufacturer: Vimicro Corp.
> [...]
> > Linux media interface: v0.10
> > Linux video capture interface: v2.00
> > gspca_main: v2.14.0 registered
> > gspca_main: vc032x-2.14.0 probing 0ac8:0321
> > usbcore: registered new interface driver vc032x
>
> The device of interest is discovered.
>
> > gspca_main: ISOC data error: [36] len=0, status=-71
> > gspca_main: ISOC data error: [65] len=0, status=-71
> [...]
> > gspca_main: ISOC data error: [48] len=0, status=-71
> > video_source:sr[3246]: segfault at 0 ip (null) sp ab36de1c error 14 in cheese[8048000+21000]
> > gspca_main: ISOC data error: [17] len=0, status=-71
>
> (The above data error spew starts around t=121 seconds and continues
> at a rate of about 15 messages per second. The segfault is around
> t=154.)
> The vc032x code hasn't changed since 3.4.1, so please report your
> symptoms to Jean-François Moine <moinejf@free.fr>, cc-ing
> linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, and either
> me or this bug log so we can track it. Be sure to mention:
>
> - steps to reproduce, expected result, actual result, and how the
> difference indicates a bug (should be simple enough in this case)
1. Ensure that user 'myself' is a member of the 'video' group.
2. Launch the webcam application Cheese from the GNOME desktop.
Expected result: Cheese displays whatever this laptop's camera sees.
Actual result: Cheese crashes while attempting to access the camera.
> - how reproducible the bug is (100%?)
100%
> - which kernel versions you have tested and result with each (what is
> the newest kernel version that worked?)
It probably was 3.1.0 or some earlier 3.2 release (the upcoming Debian
will release with 3.2.x; 3.4 was only used here for testing purposes),
but I wouldn't know for sure since I don't use my webcam too often.
> - a log from booting and reproducing the bug, or a link to one
See http://bugs.debian.org/677533
> - any other weird symptoms or observations
When testing the camera using the closed-source Skype 4.x compiled for
Debian, the video preferences dialog shows that a USB 2.0 camera is
found at /dev/video0. However, no image is shown. This would confirm the
assumption that the issue lies with the kernel video driver, rather than
with the Gstreamer framework that Cheese uses to access the camera.
> Hopefully someone upstream will have ideas for commands to run or
> patches to apply to further track down the cause.
Let's indeed hope so. Thanks for providing these instructions!
Regards,
Martin-Éric
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: video: USB webcam fails since kernel 3.2
2012-06-17 11:23 ` video: USB webcam fails since kernel 3.2 Martin-Éric Racine
@ 2012-06-17 17:11 ` Jonathan Nieder
2012-06-17 17:12 ` Jonathan Nieder
2012-07-08 13:01 ` Martin-Éric Racine
1 sibling, 1 reply; 9+ messages in thread
From: Jonathan Nieder @ 2012-06-17 17:11 UTC (permalink / raw)
To: Martin-Éric Racine
Cc: Jean-François Moine, linux-media, linux-kernel
(cc-ing Hans de Goede, the new gspca maintainer. Sorry I missed that before.)
>> Martin-Éric Racine wrote:
>>> usb 1-7: new high-speed USB device number 3 using ehci_hcd
[...]
>>> usb 1-7: Product: USB2.0 Web Camera
>>> usb 1-7: Manufacturer: Vimicro Corp.
[...]
>>> gspca_main: v2.14.0 registered
>>> gspca_main: vc032x-2.14.0 probing 0ac8:0321
[...]
>>> gspca_main: ISOC data error: [36] len=0, status=-71
>>> gspca_main: ISOC data error: [65] len=0, status=-71
[...]
>>> gspca_main: ISOC data error: [48] len=0, status=-71
>>> video_source:sr[3246]: segfault at 0 ip (null) sp ab36de1c error 14 in cheese[8048000+21000]
>>> gspca_main: ISOC data error: [17] len=0, status=-71
Thanks again.
If you get a chance to test Hans's media-for_v3.5 branch, that would
be interesting. It works like so:
0. prerequisites:
apt-get install git build-essential
1. get the kernel history, if you don't already have it:
git clone \
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
2. fetch gspca updates:
cd linux
git remote add gspca \
git://linuxtv.org/hgoede/gspca.git
git fetch gspca
3. configure, build, test:
git checkout gspca/media-for_v3.5
cp /boot/config-$(uname -r) .config; # current configuration
scripts/config --disable DEBUG_INFO
make localmodconfig; # optional: minimize configuration
make deb-pkg; # optionally with -j<num> for parallel build
dpkg -i ../<name of package>; # as root
reboot
... test test test ...
I ask because there have been some gspca core fixes cooking that are
not part of the 3.4.y tree, though none of them looks especially
relevant.
Hope that helps,
Jonathan
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: video: USB webcam fails since kernel 3.2
2012-06-17 17:11 ` Jonathan Nieder
@ 2012-06-17 17:12 ` Jonathan Nieder
0 siblings, 0 replies; 9+ messages in thread
From: Jonathan Nieder @ 2012-06-17 17:12 UTC (permalink / raw)
To: Martin-Éric Racine
Cc: Jean-François Moine, linux-media, linux-kernel, Hans de Goede
Jonathan Nieder wrote:
> (cc-ing Hans de Goede, the new gspca maintainer. Sorry I missed
> that before.)
Actually cc-ing this time. Sorry for the noise.
>> Martin-Éric Racine wrote:
>>> usb 1-7: new high-speed USB device number 3 using ehci_hcd
[...]
>>> usb 1-7: Product: USB2.0 Web Camera
>>> usb 1-7: Manufacturer: Vimicro Corp.
[...]
>>> gspca_main: v2.14.0 registered
>>> gspca_main: vc032x-2.14.0 probing 0ac8:0321
[...]
>>> gspca_main: ISOC data error: [36] len=0, status=-71
>>> gspca_main: ISOC data error: [65] len=0, status=-71
[...]
>>> gspca_main: ISOC data error: [48] len=0, status=-71
>>> video_source:sr[3246]: segfault at 0 ip (null) sp ab36de1c error 14 in cheese[8048000+21000]
>>> gspca_main: ISOC data error: [17] len=0, status=-71
Thanks again.
If you get a chance to test Hans's media-for_v3.5 branch, that would
be interesting. It works like so:
0. prerequisites:
apt-get install git build-essential
1. get the kernel history, if you don't already have it:
git clone \
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
2. fetch gspca updates:
cd linux
git remote add gspca \
git://linuxtv.org/hgoede/gspca.git
git fetch gspca
3. configure, build, test:
git checkout gspca/media-for_v3.5
cp /boot/config-$(uname -r) .config; # current configuration
scripts/config --disable DEBUG_INFO
make localmodconfig; # optional: minimize configuration
make deb-pkg; # optionally with -j<num> for parallel build
dpkg -i ../<name of package>; # as root
reboot
... test test test ...
I ask because there have been some gspca core fixes cooking that are
not part of the 3.4.y tree, though none of them looks especially
relevant.
Hope that helps,
Jonathan
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: video: USB webcam fails since kernel 3.2
2012-06-17 11:23 ` video: USB webcam fails since kernel 3.2 Martin-Éric Racine
2012-06-17 17:11 ` Jonathan Nieder
@ 2012-07-08 13:01 ` Martin-Éric Racine
2012-07-08 17:58 ` Hans de Goede
1 sibling, 1 reply; 9+ messages in thread
From: Martin-Éric Racine @ 2012-07-08 13:01 UTC (permalink / raw)
To: Jean-François Moine; +Cc: 677533, linux-media, linux-kernel
2012/6/17 Martin-Éric Racine <martin-eric.racine@iki.fi>:
> pe, 2012-06-15 kello 23:41 -0500, Jonathan Nieder kirjoitti:
>> Martin-Éric Racine wrote:
>> > usb 1-7: new high-speed USB device number 3 using ehci_hcd
>> [...]
>> > usb 1-7: New USB device found, idVendor=0ac8, idProduct=0321
>> > usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=0
>> > usb 1-7: Product: USB2.0 Web Camera
>> > usb 1-7: Manufacturer: Vimicro Corp.
>> [...]
>> > Linux media interface: v0.10
>> > Linux video capture interface: v2.00
>> > gspca_main: v2.14.0 registered
>> > gspca_main: vc032x-2.14.0 probing 0ac8:0321
>> > usbcore: registered new interface driver vc032x
>>
>> The device of interest is discovered.
>>
>> > gspca_main: ISOC data error: [36] len=0, status=-71
>> > gspca_main: ISOC data error: [65] len=0, status=-71
>> [...]
>> > gspca_main: ISOC data error: [48] len=0, status=-71
>> > video_source:sr[3246]: segfault at 0 ip (null) sp ab36de1c error 14 in cheese[8048000+21000]
>> > gspca_main: ISOC data error: [17] len=0, status=-71
>>
>> (The above data error spew starts around t=121 seconds and continues
>> at a rate of about 15 messages per second. The segfault is around
>> t=154.)
>
>> The vc032x code hasn't changed since 3.4.1, so please report your
>> symptoms to Jean-François Moine <moinejf@free.fr>, cc-ing
>> linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, and either
>> me or this bug log so we can track it. Be sure to mention:
>>
>> - steps to reproduce, expected result, actual result, and how the
>> difference indicates a bug (should be simple enough in this case)
>
> 1. Ensure that user 'myself' is a member of the 'video' group.
> 2. Launch the webcam application Cheese from the GNOME desktop.
>
> Expected result: Cheese displays whatever this laptop's camera sees.
>
> Actual result: Cheese crashes while attempting to access the camera.
>
>> - how reproducible the bug is (100%?)
>
> 100%
>
>> - which kernel versions you have tested and result with each (what is
>> the newest kernel version that worked?)
>
> It probably was 3.1.0 or some earlier 3.2 release (the upcoming Debian
> will release with 3.2.x; 3.4 was only used here for testing purposes),
> but I wouldn't know for sure since I don't use my webcam too often.
I finally found time to perform further testing, using kernel packages
from snapshots.debian.org, and the last one that positively worked (at
least using GNOME's webcam application Cheese) was:
linux-image-3.1.0-1-686-pae 3.1.8-2
Linux 3.1 for modern PCs
This loaded the following video modules:
gspca_vc032x
gspca_main
videodev
media
Tests using 3.2.1-1 or more recent crashed as described before. This
at least gives us a time frame for when the regression started.
Martin-Éric
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: video: USB webcam fails since kernel 3.2
2012-07-08 13:01 ` Martin-Éric Racine
@ 2012-07-08 17:58 ` Hans de Goede
2012-07-09 11:33 ` Martin-Éric Racine
0 siblings, 1 reply; 9+ messages in thread
From: Hans de Goede @ 2012-07-08 17:58 UTC (permalink / raw)
To: martin-eric.racine
Cc: Jean-François Moine, 677533, linux-media, linux-kernel
Hi,
On 07/08/2012 03:01 PM, Martin-Éric Racine wrote:
> 2012/6/17 Martin-Éric Racine <martin-eric.racine@iki.fi>:
>> pe, 2012-06-15 kello 23:41 -0500, Jonathan Nieder kirjoitti:
>>> Martin-Éric Racine wrote:
>>>> usb 1-7: new high-speed USB device number 3 using ehci_hcd
>>> [...]
>>>> usb 1-7: New USB device found, idVendor=0ac8, idProduct=0321
>>>> usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=0
>>>> usb 1-7: Product: USB2.0 Web Camera
>>>> usb 1-7: Manufacturer: Vimicro Corp.
>>> [...]
>>>> Linux media interface: v0.10
>>>> Linux video capture interface: v2.00
>>>> gspca_main: v2.14.0 registered
>>>> gspca_main: vc032x-2.14.0 probing 0ac8:0321
>>>> usbcore: registered new interface driver vc032x
>>>
>>> The device of interest is discovered.
>>>
>>>> gspca_main: ISOC data error: [36] len=0, status=-71
>>>> gspca_main: ISOC data error: [65] len=0, status=-71
>>> [...]
>>>> gspca_main: ISOC data error: [48] len=0, status=-71
>>>> video_source:sr[3246]: segfault at 0 ip (null) sp ab36de1c error 14 in cheese[8048000+21000]
>>>> gspca_main: ISOC data error: [17] len=0, status=-71
>>>
>>> (The above data error spew starts around t=121 seconds and continues
>>> at a rate of about 15 messages per second. The segfault is around
>>> t=154.)
>>
>>> The vc032x code hasn't changed since 3.4.1, so please report your
>>> symptoms to Jean-François Moine <moinejf@free.fr>, cc-ing
>>> linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, and either
>>> me or this bug log so we can track it. Be sure to mention:
>>>
>>> - steps to reproduce, expected result, actual result, and how the
>>> difference indicates a bug (should be simple enough in this case)
>>
>> 1. Ensure that user 'myself' is a member of the 'video' group.
>> 2. Launch the webcam application Cheese from the GNOME desktop.
>>
>> Expected result: Cheese displays whatever this laptop's camera sees.
>>
>> Actual result: Cheese crashes while attempting to access the camera.
>>
>>> - how reproducible the bug is (100%?)
>>
>> 100%
>>
>>> - which kernel versions you have tested and result with each (what is
>>> the newest kernel version that worked?)
>>
>> It probably was 3.1.0 or some earlier 3.2 release (the upcoming Debian
>> will release with 3.2.x; 3.4 was only used here for testing purposes),
>> but I wouldn't know for sure since I don't use my webcam too often.
>
> I finally found time to perform further testing, using kernel packages
> from snapshots.debian.org, and the last one that positively worked (at
> least using GNOME's webcam application Cheese) was:
>
> linux-image-3.1.0-1-686-pae 3.1.8-2
> Linux 3.1 for modern PCs
>
> This loaded the following video modules:
>
> gspca_vc032x
> gspca_main
> videodev
> media
>
> Tests using 3.2.1-1 or more recent crashed as described before. This
> at least gives us a time frame for when the regression started.
Hmm, this is then likely caused by the new isoc bandwidth negotiation code
in 3.2, unfortunately the vc032x driver is one of the few gspca drivers
for which I don't have a cam to test with. Can you try to build your own
kernel from source?
Boot into your own kernel, and verify the regression is still there,
then edit drivers/media/video/gspca/gspca.c and go to the which_bandwidth
function, and at the beginning of this function add the following line:
return 2000 * 2000 * 120;
Then rebuild and re-install the kernel and try again.
If that helps, remove the added
return 2000 * 2000 * 120;
line, and also remove the following lines from which_bandwidth:
/* if the image is compressed, estimate its mean size */
if (!gspca_dev->cam.needs_full_bandwidth &&
bandwidth < gspca_dev->cam.cam_mode[i].width *
gspca_dev->cam.cam_mode[i].height)
bandwidth = bandwidth * 3 / 8; /* 0.375 */
And try again if things still work this way.
Once you've tested this I can try to write a fix for this.
Regards,
Hans
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: video: USB webcam fails since kernel 3.2
2012-07-08 17:58 ` Hans de Goede
@ 2012-07-09 11:33 ` Martin-Éric Racine
2012-07-09 13:12 ` Hans de Goede
0 siblings, 1 reply; 9+ messages in thread
From: Martin-Éric Racine @ 2012-07-09 11:33 UTC (permalink / raw)
To: Hans de Goede; +Cc: Jean-François Moine, 677533, linux-media, linux-kernel
2012/7/8 Hans de Goede <hdegoede@redhat.com>:
> On 07/08/2012 03:01 PM, Martin-Éric Racine wrote:
>>
>> 2012/6/17 Martin-Éric Racine <martin-eric.racine@iki.fi>:
>>>
>>> pe, 2012-06-15 kello 23:41 -0500, Jonathan Nieder kirjoitti:
>>>>
>>>> Martin-Éric Racine wrote:
>>>>>
>>>>> usb 1-7: new high-speed USB device number 3 using ehci_hcd
>>>>
>>>> [...]
>>>>>
>>>>> usb 1-7: New USB device found, idVendor=0ac8, idProduct=0321
>>>>> usb 1-7: New USB device strings: Mfr=1, Product=2, SerialNumber=0
>>>>> usb 1-7: Product: USB2.0 Web Camera
>>>>> usb 1-7: Manufacturer: Vimicro Corp.
>>>>
>>>> [...]
>>>>>
>>>>> Linux media interface: v0.10
>>>>> Linux video capture interface: v2.00
>>>>> gspca_main: v2.14.0 registered
>>>>> gspca_main: vc032x-2.14.0 probing 0ac8:0321
>>>>> usbcore: registered new interface driver vc032x
>>>>
>>>>
>>>> The device of interest is discovered.
>>>>
>>>>> gspca_main: ISOC data error: [36] len=0, status=-71
>>>>> gspca_main: ISOC data error: [65] len=0, status=-71
>>>>
>>>> [...]
>>>>>
>>>>> gspca_main: ISOC data error: [48] len=0, status=-71
>>>>> video_source:sr[3246]: segfault at 0 ip (null) sp ab36de1c error 14
>>>>> in cheese[8048000+21000]
>>>>> gspca_main: ISOC data error: [17] len=0, status=-71
>>>>
>>>>
>>>> (The above data error spew starts around t=121 seconds and continues
>>>> at a rate of about 15 messages per second. The segfault is around
>>>> t=154.)
>>>
>>>
>>>> The vc032x code hasn't changed since 3.4.1, so please report your
>>>> symptoms to Jean-François Moine <moinejf@free.fr>, cc-ing
>>>> linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, and either
>>>> me or this bug log so we can track it. Be sure to mention:
>>>>
>>>> - steps to reproduce, expected result, actual result, and how the
>>>> difference indicates a bug (should be simple enough in this case)
>>>
>>>
>>> 1. Ensure that user 'myself' is a member of the 'video' group.
>>> 2. Launch the webcam application Cheese from the GNOME desktop.
>>>
>>> Expected result: Cheese displays whatever this laptop's camera sees.
>>>
>>> Actual result: Cheese crashes while attempting to access the camera.
>>>
>>>> - how reproducible the bug is (100%?)
>>>
>>>
>>> 100%
>>>
>>>> - which kernel versions you have tested and result with each (what is
>>>> the newest kernel version that worked?)
>>>
>>>
>>> It probably was 3.1.0 or some earlier 3.2 release (the upcoming Debian
>>> will release with 3.2.x; 3.4 was only used here for testing purposes),
>>> but I wouldn't know for sure since I don't use my webcam too often.
>>
>>
>> I finally found time to perform further testing, using kernel packages
>> from snapshots.debian.org, and the last one that positively worked (at
>> least using GNOME's webcam application Cheese) was:
>>
>> linux-image-3.1.0-1-686-pae 3.1.8-2
>> Linux 3.1 for modern PCs
>>
>> This loaded the following video modules:
>>
>> gspca_vc032x
>> gspca_main
>> videodev
>> media
>>
>> Tests using 3.2.1-1 or more recent crashed as described before. This
>> at least gives us a time frame for when the regression started.
>
>
> Hmm, this is then likely caused by the new isoc bandwidth negotiation code
> in 3.2, unfortunately the vc032x driver is one of the few gspca drivers
> for which I don't have a cam to test with. Can you try to build your own
> kernel from source?
>
> Boot into your own kernel, and verify the regression is still there,
> then edit drivers/media/video/gspca/gspca.c and go to the which_bandwidth
> function, and at the beginning of this function add the following line:
>
> return 2000 * 2000 * 120;
>
> Then rebuild and re-install the kernel and try again.
>
> If that helps, remove the added
> return 2000 * 2000 * 120;
> line, and also remove the following lines from which_bandwidth:
>
> /* if the image is compressed, estimate its mean size */
> if (!gspca_dev->cam.needs_full_bandwidth &&
> bandwidth < gspca_dev->cam.cam_mode[i].width *
> gspca_dev->cam.cam_mode[i].height)
> bandwidth = bandwidth * 3 / 8; /* 0.375 */
>
> And try again if things still work this way.
>
> Once you've tested this I can try to write a fix for this.
Hans,
Thank you for your reply.
Just to eliminate the possibility of mistakes on my part while trying
to perform the above changes, could you send me a patch against Linux
3.2.21 that I could apply as-is, before building myself a test kernel
package?
Cheers!
Martin-Éric
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: video: USB webcam fails since kernel 3.2
2012-07-09 11:33 ` Martin-Éric Racine
@ 2012-07-09 13:12 ` Hans de Goede
2012-07-09 20:39 ` Jonathan Nieder
0 siblings, 1 reply; 9+ messages in thread
From: Hans de Goede @ 2012-07-09 13:12 UTC (permalink / raw)
To: martin-eric.racine
Cc: Jean-François Moine, 677533, linux-media, linux-kernel
Hi,
On 07/09/2012 01:33 PM, Martin-Éric Racine wrote:
<snip>
>> Hmm, this is then likely caused by the new isoc bandwidth negotiation code
>> in 3.2, unfortunately the vc032x driver is one of the few gspca drivers
>> for which I don't have a cam to test with. Can you try to build your own
>> kernel from source?
>>
>> Boot into your own kernel, and verify the regression is still there,
>> then edit drivers/media/video/gspca/gspca.c and go to the which_bandwidth
>> function, and at the beginning of this function add the following line:
>>
>> return 2000 * 2000 * 120;
>>
>> Then rebuild and re-install the kernel and try again.
>>
>> If that helps, remove the added
>> return 2000 * 2000 * 120;
>> line, and also remove the following lines from which_bandwidth:
>>
>> /* if the image is compressed, estimate its mean size */
>> if (!gspca_dev->cam.needs_full_bandwidth &&
>> bandwidth < gspca_dev->cam.cam_mode[i].width *
>> gspca_dev->cam.cam_mode[i].height)
>> bandwidth = bandwidth * 3 / 8; /* 0.375 */
>>
>> And try again if things still work this way.
>>
>> Once you've tested this I can try to write a fix for this.
>
> Hans,
>
> Thank you for your reply.
>
> Just to eliminate the possibility of mistakes on my part while trying
> to perform the above changes, could you send me a patch against Linux
> 3.2.21 that I could apply as-is, before building myself a test kernel
> package?
Erm, that is quite a bit of work from my side for something which you
can easily do yourself, edit gspca.c, search for which_bandwidth
and then under the following lines:
u32 bandwidth;
int i;
Add a line like this:
return 2000 * 2000 * 120;
Regards,
Hans
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: video: USB webcam fails since kernel 3.2
2012-07-09 13:12 ` Hans de Goede
@ 2012-07-09 20:39 ` Jonathan Nieder
2012-07-10 12:56 ` Martin-Éric Racine
0 siblings, 1 reply; 9+ messages in thread
From: Jonathan Nieder @ 2012-07-09 20:39 UTC (permalink / raw)
To: martin-eric.racine
Cc: Hans de Goede, 677533, Jean-François Moine, linux-media,
linux-kernel
Hi Martin-Éric,
Hans de Goede wrote:
> Erm, that is quite a bit of work from my side for something which you
> can easily do yourself, edit gspca.c, search for which_bandwidth
> and then under the following lines:
> u32 bandwidth;
> int i;
>
> Add a line like this:
> return 2000 * 2000 * 120;
In case it helps, here are some more complete instructions.
0. Prerequisites:
apt-get install git build-essential
1. Get the kernel history, if you don't already have it:
git clone \
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
2. Try linus's master:
cd linux
git fetch origin
git reset --hard origin/master
cp /boot/config-$(uname -r) .config; # current configuration
scripts/config --disable DEBUG_INFO
make localmodconfig; # optional: minimize configuration
make deb-pkg; # optionally with -j<num> for parallel build
dpkg -i ../<name of package>; # as root
reboot
... test test test ...
Hopefully it reproduces the bug.
3. Try Hans's first suggested change, as described in the quoted text
above:
cd linux
vi drivers/media/video/gspca/gspca.c
... make the suggested edits ...
make deb-pkg; # maybe with -j4
dpkg -i ../<name of package>; # as root
reboot
... test test test ...
4. Try Hans's second suggested change, as described in a previous
message:
cd linux
vi drivers/media/video/gspca/gspca.c
... make the suggested edits ...
make deb-pkg; # maybe with -j4
dpkg -i ../<name of package>; # as root
reboot
... test test test ...
No doubt Jean-François will notice that it is easier to test the
standalone driver because the first build does not have to compile the
whole kernel. That's fine, too. The instructions above describe how
to test the in-kernel driver because it's what I'm used to (and
because it means you test the driver against the same version of the
rest of the kernel as would get the fix).
Hope that helps,
Jonathan
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: video: USB webcam fails since kernel 3.2
2012-07-09 20:39 ` Jonathan Nieder
@ 2012-07-10 12:56 ` Martin-Éric Racine
0 siblings, 0 replies; 9+ messages in thread
From: Martin-Éric Racine @ 2012-07-10 12:56 UTC (permalink / raw)
To: Jonathan Nieder
Cc: Hans de Goede, 677533, Jean-François Moine, linux-media,
linux-kernel
Hi Jonathan,
Thank you for these detailed instructions. Find the results of my testing below:
2012/7/9 Jonathan Nieder <jrnieder@gmail.com>:
> Hans de Goede wrote:
>
>> Erm, that is quite a bit of work from my side for something which you
>> can easily do yourself, edit gspca.c, search for which_bandwidth
>> and then under the following lines:
>> u32 bandwidth;
>> int i;
>>
>> Add a line like this:
>> return 2000 * 2000 * 120;
>
> In case it helps, here are some more complete instructions.
>
> 0. Prerequisites:
>
> apt-get install git build-essential
>
> 1. Get the kernel history, if you don't already have it:
>
> git clone \
> git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
Cloned up to the following commit:
commit 2437fccfbfc83bcb868ccc7fdfe2b5310bf07835
Merge: 6c6ee53 d92d95b6
Author: Linus Torvalds <torvalds@linux-foundation.org>
Date: Mon Jul 9 13:43:02 2012 -0700
Merge tag 'regulator-3.5' of
git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator
> 2. Try linus's master:
>
> cd linux
> git fetch origin
> git reset --hard origin/master
> cp /boot/config-$(uname -r) .config; # current configuration
> scripts/config --disable DEBUG_INFO
> make localmodconfig; # optional: minimize configuration
> make deb-pkg; # optionally with -j<num> for parallel build
> dpkg -i ../<name of package>; # as root
> reboot
> ... test test test ...
>
> Hopefully it reproduces the bug.
Fails as previously.
> 3. Try Hans's first suggested change, as described in the quoted text
> above:
/* compute the minimum bandwidth for the current transfer */
static u32 which_bandwidth(struct gspca_dev *gspca_dev)
{
u32 bandwidth;
int i;
return 2000 * 2000 * 120;
/* get the (max) image size */
> cd linux
> vi drivers/media/video/gspca/gspca.c
> ... make the suggested edits ...
> make deb-pkg; # maybe with -j4
> dpkg -i ../<name of package>; # as root
> reboot
> ... test test test ...
The camera works again in Cheese, at least some of the time. Other
times, launching Cheese immediately crashes GNOME, which restarts the
X.org server.
However, with Skype 4.0.0.7, it only shows a green square, instead of
the camera's output.
> 4. Try Hans's second suggested change, as described in a previous
> message:
>
> cd linux
> vi drivers/media/video/gspca/gspca.c
> ... make the suggested edits ...
> make deb-pkg; # maybe with -j4
> dpkg -i ../<name of package>; # as root
> reboot
> ... test test test ...
This produces a severely distorted image for a few seconds, then
Cheese crashes; GNOME itself survives.
Meanwhile, Skype 4.0.0.7 shows a black square, instead of the camera's output.
I hope that the above already provides some usable answers.
Martin-Éric
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2012-07-10 12:56 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <20120614162609.4613.22122.reportbug@henna.lan>
[not found] ` <20120614215359.GF3537@burratino>
[not found] ` <CAPZXPQd9gNCxn7xGyqj_xymPaF5OxvRtxRFkt+SsLs942te4og@mail.gmail.com>
[not found] ` <20120616044137.GB4076@burratino>
2012-06-17 11:23 ` video: USB webcam fails since kernel 3.2 Martin-Éric Racine
2012-06-17 17:11 ` Jonathan Nieder
2012-06-17 17:12 ` Jonathan Nieder
2012-07-08 13:01 ` Martin-Éric Racine
2012-07-08 17:58 ` Hans de Goede
2012-07-09 11:33 ` Martin-Éric Racine
2012-07-09 13:12 ` Hans de Goede
2012-07-09 20:39 ` Jonathan Nieder
2012-07-10 12:56 ` Martin-Éric Racine
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).