Hi!
After update from 3.5 kernel to newer version I got kernel oops when I
connect my Hercules Blog Webcam. The full error stacktrace is at the end
of this e-mail.
Commit bisect revealed the regression at:
-
1bd7d6adc691993206cf7dd69f1aaf8dccb06677 is the first bad commit
commit 1bd7d6adc691993206cf7dd69f1aaf8dccb06677
Author: Antonio Ospite ospite@
Date: Wed May 16 18:42:46 2012 -0300
[media] gspca_ov534: Convert to the control framework
Signed-off-by: Antonio Ospite ospite@
Signed-off-by: Hans de Goede hdegoede@
Signed-off-by: Mauro Carvalho Chehab mchehab@
:04 04 81bb6d86a59d2fca15fea4d43a8abe34354cf69e
6b7c2077ae5d8bdea32864841b5cd14149c6a44a M drivers
-
I also try to change the gspca_ov534 module source (ov534.c) from the
3.8 kernel and added some additional null checks in sd_start function
and add the extensive logging to it. With those changes my webcam is
working OK. As far as I can see, sd_start function is called couple of
times, but when it is called the first time (when a usb cable was
inserted), sd struct is almost empty and without null check this leads
to kernel oops. Here is the part of test version log when sd_start was
called first time:
sd_start: NO sd-hue!
sd_start: NO sd-saturation!
sd_start: NO sd-autogain!
sd_start: NO sd-autowhitebalance!
sd_start: NO sd-autoexposure!
sd_start: NO sd-gain!
sd_start: NO sd-exposure!
sd_start: NO sd-brightness!
sd_start: NO sd-contrast!
sd_start: NO sd-sharpness!
sd_start: NO sd-hflip and sd-vflip!
sd_start: NO sd-plfreq!
Additional info can be found here:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1173723/
Here is the error stacktrace:
kernel: [ 52.679705] usb 3-2: new high-speed USB device number 2 using
xhci_hcd
kernel: [ 52.697906] usb 3-2: New USB device found, idVendor=06f8,
idProduct=3002
kernel: [ 52.697910] usb 3-2: New USB device strings: Mfr=1,
Product=2, SerialNumber=0
kernel: [ 52.697912] usb 3-2: Product: Hercules Blog Microphone
kernel: [ 52.697914] usb 3-2: Manufacturer: Hercules Blog Webcam
kernel: [ 52.708983] Linux video capture interface: v2.00
kernel: [ 52.710778] gspca_main: v2.14.0 registered
kernel: [ 52.712210] gspca_main: ov534-2.14.0 probing 06f8:3002
kernel: [ 55.506311] BUG: unable to handle kernel NULL pointer
dereference at 0050
kernel: [ 55.506367] IP: [a03c1b01]
v4l2_ctrl_g_ctrl+0x11/0x60 [videodev]
kernel: [ 55.506414] PGD 0
kernel: [ 55.506429] Oops: [#1] SMP
kernel: [ 55.506453] Modules linked in: gspca_ov534(+) gspca_main
videodev rfcomm bnep ppdev bluetooth binfmt_misc snd_hda_codec_hdmi
snd_hda_codec_realtek stir4200 irda crc_ccitt usblp snd_hda_intel
snd_hda_codec snd_hwdep snd_pcm hid_generic snd_page_alloc snd_seq_midi
snd_seq_midi_event usbhid snd_rawmidi snd_seq snd_seq_device snd_timer
hid i915 snd psmouse drm_kms_helper serio_raw mei_me drm mei soundcore
video i2c_algo_bit lpc_ich mac_hid coretemp lp parport firewire_ohci
firewire_core crc_itu_t ahci libahci alx mdio r8169 mii [last unloaded:
parport_pc]
kernel: [ 55.506819] CPU: 3 PID: 4352 Comm: modprobe Not tainted
3.11.0-031100rc2-generic #201307211535
kernel: [ 55.506864] Hardware name: Gigabyte Technology Co., Ltd. To
be filled by O.E.M./Z77-DS3H, BIOS F9 09/19/2012
kernel: [ 55.506913] task: 8801c20f9770 ti: 8801ceaa
task.ti: 8801ceaa
kernel: [ 55.506952] RIP: 0010:[a03c1b01]
[a03c1b01] v4l2_ctrl_g_ctrl+0x11/0x60 [videodev]
kernel: [ 55.507005] RSP: 0018:8801ceaa1af8 EFLAGS: 00010292
kernel: [ 55.507033] RAX: 0001 RBX: RCX:
0001988b
kernel: [ 55.507069] RDX: 0001988a RSI: a032745a RDI:
kernel: [ 55.507106] RBP: 8801ceaa1b28 R08: 00017380 R09:
ea0008419d80
kernel: [ 55.507142] R10: 81538f5a R11: 0002 R12:
a03273dc
kernel: [ 55.507178] R13: a03273dc R14: R15:
a03270a0
kernel: [ 55.507215] FS: 7f72d564a740()
GS:88021f38() knlGS:
kernel: [ 55.507256] CS: 0010 DS: ES: CR0: 80050033
kernel: [ 55.507286] CR2: 0050 CR3: 0001bd1f CR4:
001407e0
kernel: [ 55.507323] Stack:
kernel: [ 55.507335] 8801ceaa1b28 a0325cff
880101f4 8801ceb44000
kernel: [ 55.507380] a03273dc 8801ceb44000
8801ceaa1b58 a032688e
kernel: [ 55.507426] 8801ceb44000 a03274f0
a03274f0 8801ceb44380
kernel: [ 55.507471] Call Trace:
kernel: [ 55.507490] [a0325cff] ? sccb_w_array+0x3f/0x80
[gspca_ov534]
kernel: [ 55.507527] [a032688e] sd_start+0xce/0x2b0
[gspca_ov534]
kernel: [ 55.507561] [a0326bf9] sd_init+0x189/0x1e8
[gspca_ov534]
kernel: [