Re: Problems in 3.3.x with via VT6315
Brought to you by:
aeb,
bencollins
From: Lluís B. i R. <vi...@vi...> - 2012-05-08 15:11:24
|
On Tue, May 08, 2012 at 04:27:20PM +0200, Clemens Ladisch wrote: > Lluís Batlle i Rossell wrote: > > On Tue, May 08, 2012 at 02:00:15PM +0200, Clemens Ladisch wrote: > >> Lluís Batlle i Rossell wrote: > >>> here we have two computers, both with VT6315, running all x86_64, one is an > >>> intel i7 and the other an amd Phenom II. > >>> > >>> The I7 runs 2.6.35 and dc1394 cameras work perfectly in it. > >>> The Phenom II runs 3.3.4 and dc1394 cameras work for a short seconds, and hang. > >>> Then the process hangs too. Killing the process leaves it <defunct> (unrelated > >>> to the parent accepting it or not). > >> > >> Apparently, the driver is waiting for the hardware to do something. > >> > >> When this happens, are there any messages in the system log (see the output of > >> dmesg)? > > > > Nothing there. I only get some lines if I disconnect the camera, but the process > > remains <defunct>. > The FireWire stack was completely rewritten. Check that your libraw1394 package > is recent enough (current is 2.0.8, but 2.0.6 or newer should work). In any > case, this library could not cause the kernel to lock up. I'm using libraw1394 2.0.7. I can try 2.0.8. I will later. The program just blocked (in 3.3.4), and I attach strace: read(13, I look at the fd 13 in /proc: 13 -> /dev/fw1 I use kill. SIGINT causes the read() call to restart: read(13, 0x7fff19de7760, 40) = ? ERESTARTSYS (To be restarted) --- {si_signo=SIGINT, si_code=SI_KERNEL, si_value={int=1174533440, ptr=0x7fbf4601f540}} (Interrupt) --- rt_sigaction(SIGINT, {0x7fe92d954390, [INT], SA_RESTORER|SA_RESTART, 0x7fe92b4e8b10}, {0x7fe92d954390, [INT], SA_RESTORER|SA_RESTART, 0x7fe92b4e8b10}, 8) = 0 rt_sigreturn(0) = 0 read(13, If now with strace attached I use kill -9, strace does not notice that. Ctrl-C to the strace, hangs: read(13, ^C <unfinished ...> cat /proc/5918/status: Name: cc1394 State: D (disk sleep) .... If I hadn't had strace attached, the process would appear defunct - as I tried other times. Unplugging the fw camera does not show any message in dmesg. Now issuing the sysreq w shows one task: [17613.274738] SysRq : Show Blocked State [17613.274749] task PC stack pid father [17613.274790] cc1394 D ffffffff81407520 0 5918 5880 0x00000005 [17613.274801] ffff880032101b68 0000000000000046 ffff880032101b08 ffff880000000000 [17613.274810] ffff8801285ea940 ffff880032101fd8 ffff880032101fd8 ffff880032101fd8 [17613.274819] ffff880129ace040 ffff8801285ea940 ffff880032101b78 ffff8800364a2c00 [17613.274828] Call Trace: [17613.274843] [<ffffffff813c8baf>] schedule+0x3f/0x60 [17613.274882] [<ffffffffa0106fcd>] fw_device_op_release+0x18d/0x250 [firewire_core] [17613.274894] [<ffffffff8106b7c0>] ? add_wait_queue+0x60/0x60 [17613.274904] [<ffffffff8114c6ba>] fput+0xea/0x220 [17613.274912] [<ffffffff81149466>] filp_close+0x66/0x90 [17613.274921] [<ffffffff8104cc88>] put_files_struct+0x88/0xf0 [17613.274930] [<ffffffff8104cd9a>] exit_files+0x4a/0x60 [17613.274938] [<ffffffff8104d277>] do_exit+0x197/0x870 [17613.274946] [<ffffffff8104dcb4>] do_group_exit+0x44/0xa0 [17613.274955] [<ffffffff8105d7c5>] get_signal_to_deliver+0x215/0x5e0 [17613.274964] [<ffffffff810131b5>] do_signal+0x65/0x710 [17613.274972] [<ffffffff8104dfbb>] ? sys_wait4+0xab/0xf0 [17613.274979] [<ffffffff8106b7c0>] ? add_wait_queue+0x60/0x60 [17613.274987] [<ffffffff810138e5>] do_notify_resume+0x65/0x80 [17613.274996] [<ffffffff813ca7a2>] int_signal+0x12/0x17 Does it tell enough to you? Any other test? Regards, Lluís. |