* oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) @ 2004-02-02 13:02 Todor Todorov 2004-02-02 19:51 ` Karsten Keil 0 siblings, 1 reply; 12+ messages in thread From: Todor Todorov @ 2004-02-02 13:02 UTC (permalink / raw) To: linux-kernel Hello everyone, didn't find any more applicabale mailing list, so here it goes: card: AVM A1 PCMCIA kernel: 2.6.2-rc3 isdn options: CONFIG_ISDN_BOOL=y CONFIG_ISDN=m CONFIG_ISDN_NET_SIMPLE=y CONFIG_ISDN_NET_CISCO=y CONFIG_ISDN_PPP=y CONFIG_ISDN_PPP_VJ=y CONFIG_ISDN_MPP=y CONFIG_ISDN_PPP_BSDCOMP=m CONFIG_ISDN_AUDIO=y CONFIG_ISDN_TTY_FAX=y CONFIG_ISDN_DRV_LOOP=m CONFIG_ISDN_DRV_HISAX=m CONFIG_HISAX_EURO=y CONFIG_DE_AOC=y CONFIG_HISAX_MAX_CARDS=2 CONFIG_HISAX_AVM_A1_PCMCIA=y CONFIG_HISAX_AVM_A1_CS=m pcmcia options: CONFIG_PCMCIA=m CONFIG_YENTA=m CONFIG_CARDBUS=y CONFIG_PCMCIA_PROBE=y When I insert the ISDN card I get the followin oops and the cardmgr proces does not respond anymore. oops output: Feb 2 13:44:11 styx kernel: cs: memory probe 0xa0000000-0xa0ffffff: clean. Feb 2 13:44:11 styx kernel: CSLIP: code copyright 1989 Regents of the University of California Feb 2 13:44:12 styx kernel: ISDN subsystem initialized Feb 2 13:44:12 styx kernel: HiSax: Linux Driver for passive ISDN cards Feb 2 13:44:12 styx kernel: HiSax: Version 3.5 (module) Feb 2 13:44:12 styx kernel: HiSax: Layer1 Revision 2.41.6.5 Feb 2 13:44:12 styx kernel: HiSax: Layer2 Revision 2.25.6.4 Feb 2 13:44:12 styx kernel: HiSax: TeiMgr Revision 2.17.6.3 Feb 2 13:44:12 styx kernel: HiSax: Layer3 Revision 2.17.6.5 Feb 2 13:44:12 styx kernel: HiSax: LinkLayer Revision 2.51.6.6 Feb 2 13:44:12 styx kernel: avma1_cs: testing i/o 0x140-0x147 Feb 2 13:44:12 styx kernel: avma1_cs: checking at i/o 0x140, irq 3 Feb 2 13:44:12 styx kernel: get_drv 0: 0 -> 1 Feb 2 13:44:12 styx kernel: HiSax: Card 1 Protocol EDSS1 Id=HiSax (0) Feb 2 13:44:12 styx kernel: HiSax: AVM A1 PCMCIA driver Rev. 2.7.6.2 Feb 2 13:44:12 styx kernel: printing eip: Feb 2 13:44:12 styx kernel: d19cd612 Feb 2 13:44:12 styx kernel: Oops: 0000 [#1] Feb 2 13:44:12 styx kernel: CPU: 0 Feb 2 13:44:12 styx kernel: EIP: 0060:[__crc_blk_attempt_remerge+2649154/3591710] Not tainted Feb 2 13:44:12 styx kernel: EFLAGS: 00010282 Feb 2 13:44:12 styx kernel: EIP is at 0xd19cd612 Feb 2 13:44:12 styx kernel: eax: c4e31000 ebx: d3e9f9a0 ecx: 00000001 edx: c0315598 Feb 2 13:44:12 styx kernel: esi: d3e96987 edi: cef7385d ebp: cef73894 esp: cef7383c Feb 2 13:44:12 styx kernel: ds: 007b es: 007b ss: 0068 Feb 2 13:44:12 styx kernel: Process cardmgr (pid: 975, threadinfo=cef72000 task=cedab900) Feb 2 13:44:12 styx kernel: Stack: d3e8ebfc c4e31000 d3e9f9a0 76655224 6f697369 32203a6e 362e372e 2400322e Feb 2 13:44:12 styx kernel: cef73800 00000246 cffad758 c4e31000 cef738ee c4e310d6 cef73894 d3e78c78 Feb 2 13:44:12 styx kernel: d3e97240 00000001 d3e94294 c4e31000 cef738ee c4e310d6 cef738bc d3e78e36 Feb 2 13:44:12 styx kernel: Call Trace: Feb 2 13:44:12 styx kernel: [__crc_journal_set_features+2091499/2437465] setup_avm_a1_pcmcia+0x4a/0x62 [hisax] Feb 2 13:44:12 styx kernel: [__crc_journal_set_features+2001511/2437465] do_register_isdn+0xe3/0xe9 [hisax] Feb 2 13:44:12 styx kernel: [__crc_journal_set_features+2001957/2437465] checkcard+0x168/0x1ad [hisax] Feb 2 13:44:12 styx kernel: [__crc_journal_set_features+2002290/2437465] HiSax_inithardware+0xc3/0x17e [hisax] Feb 2 13:44:12 styx kernel: [__crc_journal_set_features+2003505/2437465] avm_a1_init_pcmcia+0x105/0x125 [hisax] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2665386/3591710] avma1cs_config+0x269/0x38c [avma1_cs] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2483938/3591710] set_cis_map+0x3e/0x10b [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2484415/3591710] read_cis_mem+0x110/0x182 [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2488313/3591710] parse_vers_1+0x5c/0x63 [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2487241/3591710] pcmcia_get_next_tuple+0x249/0x2a3 [pcmcia_core] Feb 2 13:44:12 styx kernel: [__call_console_drivers+87/89] __call_console_drivers+0x57/0x59 Feb 2 13:44:12 styx kernel: [__wake_up_common+49/80] __wake_up_common+0x31/0x50 Feb 2 13:44:12 styx kernel: [printk+299/380] printk+0x12b/0x17c Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2495383/3591710] do_mem_probe+0xfc/0x1c2 [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2487241/3591710] pcmcia_get_next_tuple+0x249/0x2a3 [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2486012/3591710] pcmcia_get_first_tuple+0x94/0x130 [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2665883/3591710] avma1cs_event+0x59/0xb6 [avma1_cs] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2510239/3591710] pcmcia_register_client+0x232/0x282 [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2483938/3591710] set_cis_map+0x3e/0x10b [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2664285/3591710] avma1cs_attach+0x12d/0x1a4 [avma1_cs] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2665794/3591710] avma1cs_event+0x0/0xb6 [avma1_cs] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2507122/3591710] pcmcia_bind_device+0x68/0xa7 [pcmcia_core] Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2226992/3591710] bind_request+0x108/0x228 [ds] Feb 2 13:44:12 styx kernel: [capable+36/67] capable+0x24/0x43 Feb 2 13:44:12 styx kernel: [__crc_blk_attempt_remerge+2230000/3591710] ds_ioctl+0x52a/0x660 [ds] Feb 2 13:44:12 styx kernel: [sock_def_readable+128/130] sock_def_readable+0x80/0x82 Feb 2 13:44:12 styx kernel: [unix_dgram_sendmsg+1134/1364] unix_dgram_sendmsg+0x46e/0x554 Feb 2 13:44:12 styx kernel: [__free_pages_ok+175/183] __free_pages_ok+0xaf/0xb7 Feb 2 13:44:12 styx kernel: [__free_pages+58/72] __free_pages+0x3a/0x48 Feb 2 13:44:12 styx kernel: [slab_destroy+199/264] slab_destroy+0xc7/0x108 Feb 2 13:44:12 styx kernel: [free_block+185/205] free_block+0xb9/0xcd Feb 2 13:44:12 styx kernel: [cache_flusharray+78/236] cache_flusharray+0x4e/0xec Feb 2 13:44:12 styx kernel: [zap_pmd_range+75/101] zap_pmd_range+0x4b/0x65 Feb 2 13:44:12 styx kernel: [unmap_page_range+65/103] unmap_page_range+0x41/0x67 Feb 2 13:44:12 styx kernel: [unmap_vmas+229/522] unmap_vmas+0xe5/0x20a Feb 2 13:44:12 styx kernel: [unmap_vma+65/123] unmap_vma+0x41/0x7b Feb 2 13:44:12 styx kernel: [unmap_vma_list+29/42] unmap_vma_list+0x1d/0x2a Feb 2 13:44:12 styx kernel: [do_munmap+321/387] do_munmap+0x141/0x183 Feb 2 13:44:12 styx kernel: [sys_ioctl+286/675] sys_ioctl+0x11e/0x2a3 Feb 2 13:44:12 styx kernel: [syscall_call+7/11] syscall_call+0x7/0xb Feb 2 13:44:12 styx kernel: Feb 2 13:44:12 styx kernel: Code: Bad EIP value. Please help with this issue. TIA! Greetings, T.Todorov ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-02 13:02 oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) Todor Todorov @ 2004-02-02 19:51 ` Karsten Keil 2004-02-02 22:00 ` Marcel Holtmann ` (2 more replies) 0 siblings, 3 replies; 12+ messages in thread From: Karsten Keil @ 2004-02-02 19:51 UTC (permalink / raw) To: linux-kernel On Mon, Feb 02, 2004 at 02:02:56PM +0100, Todor Todorov wrote: > Hello everyone, > > didn't find any more applicabale mailing list, so here it goes: > try the actual I4L for 2.6 patch in ftp://ftp.isdn4linux.de/pub/isdn4linux/kernel/v2.6 -- Karsten Keil SuSE Labs ISDN development ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-02 19:51 ` Karsten Keil @ 2004-02-02 22:00 ` Marcel Holtmann 2004-02-03 7:48 ` Karsten Keil 2004-02-04 7:38 ` 2.6.2-rc3 with isdn patch + devfs doesn't compile Adrian Bunk 2004-02-09 12:13 ` oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) David Woodhouse 2 siblings, 1 reply; 12+ messages in thread From: Marcel Holtmann @ 2004-02-02 22:00 UTC (permalink / raw) To: Karsten Keil; +Cc: Linux Kernel Mailing List Hi Karsten, > try the actual I4L for 2.6 patch in > ftp://ftp.isdn4linux.de/pub/isdn4linux/kernel/v2.6 what is your current plan for including these patches into mainstream once 2.6.2 is out? Regards Marcel ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-02 22:00 ` Marcel Holtmann @ 2004-02-03 7:48 ` Karsten Keil 2004-02-05 22:59 ` Stian Jordet 0 siblings, 1 reply; 12+ messages in thread From: Karsten Keil @ 2004-02-03 7:48 UTC (permalink / raw) To: Linux Kernel Mailing List On Mon, Feb 02, 2004 at 11:00:13PM +0100, Marcel Holtmann wrote: > Hi Karsten, > > > try the actual I4L for 2.6 patch in > > ftp://ftp.isdn4linux.de/pub/isdn4linux/kernel/v2.6 > > what is your current plan for including these patches into mainstream > once 2.6.2 is out? > Was sent to Linus a week ago, but no answer so far. -- Karsten Keil SuSE Labs ISDN development ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-03 7:48 ` Karsten Keil @ 2004-02-05 22:59 ` Stian Jordet 0 siblings, 0 replies; 12+ messages in thread From: Stian Jordet @ 2004-02-05 22:59 UTC (permalink / raw) To: Karsten Keil; +Cc: Linux Kernel Mailing List tir, 03.02.2004 kl. 08.48 skrev Karsten Keil: > On Mon, Feb 02, 2004 at 11:00:13PM +0100, Marcel Holtmann wrote: > > Hi Karsten, > > > > > try the actual I4L for 2.6 patch in > > > ftp://ftp.isdn4linux.de/pub/isdn4linux/kernel/v2.6 > > > > what is your current plan for including these patches into mainstream > > once 2.6.2 is out? > > > > Was sent to Linus a week ago, but no answer so far. Now that 2.6.2 is out, and it still hasn't been applied, is it inappropriate to beg you to resend it to Linus and/or Andrew? It is really crucial for me, without this patch Hisax with TelesPCI support won't even compile. And probably lots of others as well. Thanks for your great work! Best regards, Stian ^ permalink raw reply [flat|nested] 12+ messages in thread
* 2.6.2-rc3 with isdn patch + devfs doesn't compile 2004-02-02 19:51 ` Karsten Keil 2004-02-02 22:00 ` Marcel Holtmann @ 2004-02-04 7:38 ` Adrian Bunk 2004-02-04 9:39 ` Karsten Keil 2004-02-09 12:13 ` oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) David Woodhouse 2 siblings, 1 reply; 12+ messages in thread From: Adrian Bunk @ 2004-02-04 7:38 UTC (permalink / raw) To: linux-kernel, kkeil; +Cc: isdn4linux On Mon, Feb 02, 2004 at 08:51:39PM +0100, Karsten Keil wrote: > On Mon, Feb 02, 2004 at 02:02:56PM +0100, Todor Todorov wrote: > > Hello everyone, > > > > didn't find any more applicabale mailing list, so here it goes: > > > > try the actual I4L for 2.6 patch in > ftp://ftp.isdn4linux.de/pub/isdn4linux/kernel/v2.6 FYI: I'm getting the following compile error in 2.6.2-rc3 with this patch applied and CONFIG_DEVFS_FS=n: <-- snip --> ... CC drivers/isdn/capi/capidrv.o In file included from drivers/isdn/capi/capidrv.c:25: include/linux/isdn.h:637: error: parse error before "devfs_handle_t" include/linux/isdn.h:637: warning: no semicolon at end of struct or union include/linux/isdn.h:638: warning: type defaults to `int' in declaration of `devfs_handle_isdnctrl' include/linux/isdn.h:638: warning: data definition has no type or storage class include/linux/isdn.h:639: error: parse error before "devfs_handle_isdnX" include/linux/isdn.h:639: warning: type defaults to `int' in declaration of `devfs_handle_isdnX' include/linux/isdn.h:639: warning: data definition has no type or storage class include/linux/isdn.h:640: error: parse error before "devfs_handle_isdnctrlX" include/linux/isdn.h:640: warning: type defaults to `int' in declaration of `devfs_handle_isdnctrlX' include/linux/isdn.h:640: warning: data definition has no type or storage class include/linux/isdn.h:642: error: parse error before "devfs_handle_ipppX" include/linux/isdn.h:642: warning: type defaults to `int' in declaration of `devfs_handle_ipppX' include/linux/isdn.h:642: warning: data definition has no type or storage class include/linux/isdn.h:645: error: parse error before '}' token include/linux/isdn.h:645: warning: type defaults to `int' in declaration of `isdn_dev' include/linux/isdn.h:645: warning: data definition has no type or storage class include/linux/isdn.h:647: error: parse error before '*' token include/linux/isdn.h:647: warning: type defaults to `int' in declaration of `dev' include/linux/isdn.h:647: warning: data definition has no type or storage class drivers/isdn/capi/capidrv.c:2111:10: warning: #warning FIXME: maybe a race condition the card should be removed here from global list /kkeil make[3]: *** [drivers/isdn/capi/capidrv.o] Error 1 <-- snip --> > Karsten Keil cu Adrian -- "Is there not promise of rain?" Ling Tan asked suddenly out of the darkness. There had been need of rain for many days. "Only a promise," Lao Er said. Pearl S. Buck - Dragon Seed ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: 2.6.2-rc3 with isdn patch + devfs doesn't compile 2004-02-04 7:38 ` 2.6.2-rc3 with isdn patch + devfs doesn't compile Adrian Bunk @ 2004-02-04 9:39 ` Karsten Keil 0 siblings, 0 replies; 12+ messages in thread From: Karsten Keil @ 2004-02-04 9:39 UTC (permalink / raw) To: isdn4linux; +Cc: linux-kernel On Wed, Feb 04, 2004 at 08:38:12AM +0100, Adrian Bunk wrote: > On Mon, Feb 02, 2004 at 08:51:39PM +0100, Karsten Keil wrote: > > On Mon, Feb 02, 2004 at 02:02:56PM +0100, Todor Todorov wrote: > > > Hello everyone, > > > > > > didn't find any more applicabale mailing list, so here it goes: > > > > > > > try the actual I4L for 2.6 patch in > > ftp://ftp.isdn4linux.de/pub/isdn4linux/kernel/v2.6 > > FYI: > I'm getting the following compile error in 2.6.2-rc3 with this patch > applied and CONFIG_DEVFS_FS=n: > Thank you. Next version of the patch will remove devfs support from I4L for 2.6 kernel versions. -- Karsten Keil SuSE Labs ISDN development ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-02 19:51 ` Karsten Keil 2004-02-02 22:00 ` Marcel Holtmann 2004-02-04 7:38 ` 2.6.2-rc3 with isdn patch + devfs doesn't compile Adrian Bunk @ 2004-02-09 12:13 ` David Woodhouse 2004-02-10 1:53 ` David Woodhouse 2 siblings, 1 reply; 12+ messages in thread From: David Woodhouse @ 2004-02-09 12:13 UTC (permalink / raw) To: Karsten Keil; +Cc: linux-kernel On Mon, 2004-02-02 at 20:51 +0100, Karsten Keil wrote: > try the actual I4L for 2.6 patch in > ftp://ftp.isdn4linux.de/pub/isdn4linux/kernel/v2.6 I applied isdn-2.6.2-rc2.diff.gz to 2.6.3-rc1 (actually to BK as of about Friday). Works fine for dialup, including isdn_lzscomp, on SMP. Dies horribly upon an incoming v.110 call though... (akpm/linus please note v.110 is fairly esoteric and it won't even _compile_ in 2.6 at the moment so this is not a reason not to merge Karsten's patch, which does at least make ISDN usable again in 2.6) NMI Watchdog detected LOCKUP on CPU1, eip f8a5cd65, registers: CPU: 1 EIP: 0060:[<f8a5cd65>] Not tainted EFLAGS: 00000086 EIP is at .text.lock.hfc_pci+0xfb/0x186 [hisax] eax: f6531000 ebx: 00000120 ecx: 00000000 edx: f6288a40 esi: f6531614 edi: f652ac00 ebp: f6288a40 esp: f7f81b40 ds: 007b es: 007b ss: 0068 Process events/1 (pid: 7, threadinfo=f7f80000 task=f7f94ce0) Stack: f6288800 00000028 c0224fea 00000097 f6531210 f652ac00 00000028 f6288800 f8a533e6 f652ac00 00000120 f6288a40 0000003c 00000020 f75b7810 f6d52000 f6288800 00000000 00000001 f89fb58f 00000000 00000001 00000001 f6288800 Call Trace: [<c0224fea>] skb_clone+0xaa/0x180 [<f8a533e6>] HiSax_writebuf_skb+0x156/0x230 [hisax] [<f89fb58f>] isdn_v110_stat_callback+0x2bf/0x330 [isdn] [<f89fc57e>] isdn_status_callback+0x76e/0x8e0 [isdn] [<f89fc09c>] isdn_status_callback+0x28c/0x8e0 [isdn] [<c01b5937>] vsprintf+0x27/0x30 [<f8a52231>] ll_writewakeup+0x61/0xa0 [hisax] [<c01b567d>] vsnprintf+0x23d/0x4a0 [<c011afea>] __wake_up_common+0x3a/0x60 [<f8a5af40>] hfcpci_fill_fifo+0x4e0/0x6a0 [hisax] [<f8a5c2d2>] hfcpci_send_data+0x22/0x50 [hisax] [<f8a5c5d5>] hfcpci_l2l1+0xa5/0x200 [hisax] [<c0224fea>] skb_clone+0xaa/0x180 [<f8a533e6>] HiSax_writebuf_skb+0x156/0x230 [hisax] [<f89fb3dc>] isdn_v110_stat_callback+0x10c/0x330 [isdn] [<f89fc109>] isdn_status_callback+0x2f9/0x8e0 [isdn] [<c01b567d>] vsnprintf+0x23d/0x4a0 [<f8a50370>] lli_go_active+0x0/0xd0 [hisax] [<c01b5937>] vsprintf+0x27/0x30 [<f8a50370>] lli_go_active+0x0/0xd0 [hisax] [<f8a4ff24>] link_debug+0x64/0x80 [hisax] [<f8a50370>] lli_go_active+0x0/0xd0 [hisax] [<f8a503e7>] lli_go_active+0x77/0xd0 [hisax] [<f8a50370>] lli_go_active+0x0/0xd0 [hisax] [<c01b5937>] vsprintf+0x27/0x30 [<f8a50370>] lli_go_active+0x0/0xd0 [hisax] [<f8a51c60>] callc_debug+0x50/0x60 [hisax] [<f8a44374>] l1m_debug+0x54/0x70 [hisax] [<f8a53640>] FsmEvent+0x90/0xf0 [hisax] [<f8a45130>] l1b_timer_act+0x0/0x40 [hisax] [<f8a45164>] l1b_timer_act+0x34/0x40 [hisax] [<f8a53640>] FsmEvent+0x90/0xf0 [hisax] [<f8a448b4>] BChannel_proc_rcv+0xa4/0xb0 [hisax] [<f8a4490d>] BChannel_bh+0x4d/0x50 [hisax] [<c012edea>] worker_thread+0x1aa/0x220 [<f8a448c0>] BChannel_bh+0x0/0x50 [hisax] [<c011af90>] default_wake_function+0x0/0x20 [<c0108e82>] ret_from_fork+0x6/0x14 [<c011af90>] default_wake_function+0x0/0x20 [<c012ec40>] worker_thread+0x0/0x220 [<c0106e69>] kernel_thread_helper+0x5/0xc Code: 80 38 00 7e f9 e9 fe f7 ff ff f3 90 80 7e 34 00 7e f8 e9 07 console shuts up ... -- dwmw2 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-09 12:13 ` oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) David Woodhouse @ 2004-02-10 1:53 ` David Woodhouse 2004-02-10 2:51 ` Karsten Keil 0 siblings, 1 reply; 12+ messages in thread From: David Woodhouse @ 2004-02-10 1:53 UTC (permalink / raw) To: Karsten Keil; +Cc: linux-kernel On Mon, 2004-02-09 at 12:13 +0000, David Woodhouse wrote: > Dies horribly upon an incoming v.110 call though... > NMI Watchdog detected LOCKUP on CPU1, eip f8a5cd65, registers: > CPU: 1 > EIP: 0060:[<f8a5cd65>] Not tainted > EFLAGS: 00000086 > EIP is at .text.lock.hfc_pci+0xfb/0x186 [hisax] This is line 1391 of hfc_pci.c, in hfcpci_l2l1(). It's trying to relock &bcs->cs->lock which is evidently already locked. This is because isdn_v110_stat_callback() is being called with the spinlock held when we've transmitted a skb... and it's trying to transmit another immediately. > eax: f6531000 ebx: 00000120 ecx: 00000000 edx: f6288a40 > esi: f6531614 edi: f652ac00 ebp: f6288a40 esp: f7f81b40 > ds: 007b es: 007b ss: 0068 > Process events/1 (pid: 7, threadinfo=f7f80000 task=f7f94ce0) > Stack: f6288800 00000028 c0224fea 00000097 f6531210 f652ac00 00000028 f6288800 > f8a533e6 f652ac00 00000120 f6288a40 0000003c 00000020 f75b7810 f6d52000 > f6288800 00000000 00000001 f89fb58f 00000000 00000001 00000001 f6288800 > Call Trace: <hfcpci_l2l1> > [<f8a533e6>] HiSax_writebuf_skb+0x156/0x230 [hisax] > [<f89fb58f>] isdn_v110_stat_callback+0x2bf/0x330 [isdn] > [<f89fc57e>] isdn_status_callback+0x76e/0x8e0 [isdn] > [<f89fc09c>] isdn_status_callback+0x28c/0x8e0 [isdn] > [<f8a52231>] ll_writewakeup+0x61/0xa0 [hisax] > [<f8a5af40>] hfcpci_fill_fifo+0x4e0/0x6a0 [hisax] > [<f8a5c2d2>] hfcpci_send_data+0x22/0x50 [hisax] > [<f8a5c5d5>] hfcpci_l2l1+0xa5/0x200 [hisax] > [<f8a533e6>] HiSax_writebuf_skb+0x156/0x230 [hisax] > [<f89fb3dc>] isdn_v110_stat_callback+0x10c/0x330 [isdn] > [<f89fc109>] isdn_status_callback+0x2f9/0x8e0 [isdn] I'm going to try an _evil_ hack like this... --- drivers/isdn/hisax/hfc_pci.c.orig 2004-02-10 01:49:49.278608994 +0000 +++ drivers/isdn/hisax/hfc_pci.c 2004-02-10 01:50:15.404811276 +0000 @@ -597,7 +597,7 @@ u_char new_f1, *src, *dst; unsigned short *z1t, *z2t; - if (!bcs->tx_skb) + if (!bcs->tx_skb && !(bcs->tx_skb = skb_dequeue(&bcs->squeue))) return; if (bcs->tx_skb->len <= 0) return; @@ -1388,7 +1388,13 @@ switch (pr) { case (PH_DATA | REQUEST): - spin_lock_irqsave(&bcs->cs->lock, flags); + local_irq_save(flags); + if (!spin_trylock(&bcs->cs->lock)) { + /* Possible recursion. Queue it and return */ + local_irq_restore(flags); + skb_queue_tail(&bcs->squeue, skb); + break; + } if (bcs->tx_skb) { skb_queue_tail(&bcs->squeue, skb); } else { -- dwmw2 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-10 1:53 ` David Woodhouse @ 2004-02-10 2:51 ` Karsten Keil 2004-02-10 10:19 ` David Woodhouse 0 siblings, 1 reply; 12+ messages in thread From: Karsten Keil @ 2004-02-10 2:51 UTC (permalink / raw) To: linux-kernel On Tue, Feb 10, 2004 at 01:53:42AM +0000, David Woodhouse wrote: > On Mon, 2004-02-09 at 12:13 +0000, David Woodhouse wrote: > > Dies horribly upon an incoming v.110 call though... > > > NMI Watchdog detected LOCKUP on CPU1, eip f8a5cd65, registers: > > CPU: 1 > > EIP: 0060:[<f8a5cd65>] Not tainted > > EFLAGS: 00000086 > > EIP is at .text.lock.hfc_pci+0xfb/0x186 [hisax] > > This is line 1391 of hfc_pci.c, in hfcpci_l2l1(). > It's trying to relock &bcs->cs->lock which is evidently already locked. > > This is because isdn_v110_stat_callback() is being called with the > spinlock held when we've transmitted a skb... and it's trying to > transmit another immediately. Your analyse is correct, but the error is, that ll_writewakeup is called with the lock. Upper layers should not be called in this path. > > > eax: f6531000 ebx: 00000120 ecx: 00000000 edx: f6288a40 > > esi: f6531614 edi: f652ac00 ebp: f6288a40 esp: f7f81b40 > > ds: 007b es: 007b ss: 0068 > > Process events/1 (pid: 7, threadinfo=f7f80000 task=f7f94ce0) > > Stack: f6288800 00000028 c0224fea 00000097 f6531210 f652ac00 00000028 f6288800 > > f8a533e6 f652ac00 00000120 f6288a40 0000003c 00000020 f75b7810 f6d52000 > > f6288800 00000000 00000001 f89fb58f 00000000 00000001 00000001 f6288800 > > Call Trace: > <hfcpci_l2l1> > > [<f8a533e6>] HiSax_writebuf_skb+0x156/0x230 [hisax] > > [<f89fb58f>] isdn_v110_stat_callback+0x2bf/0x330 [isdn] > > [<f89fc57e>] isdn_status_callback+0x76e/0x8e0 [isdn] > > [<f89fc09c>] isdn_status_callback+0x28c/0x8e0 [isdn] > > [<f8a52231>] ll_writewakeup+0x61/0xa0 [hisax] > > [<f8a5af40>] hfcpci_fill_fifo+0x4e0/0x6a0 [hisax] > > [<f8a5c2d2>] hfcpci_send_data+0x22/0x50 [hisax] > > [<f8a5c5d5>] hfcpci_l2l1+0xa5/0x200 [hisax] > > [<f8a533e6>] HiSax_writebuf_skb+0x156/0x230 [hisax] > > [<f89fb3dc>] isdn_v110_stat_callback+0x10c/0x330 [isdn] > > [<f89fc109>] isdn_status_callback+0x2f9/0x8e0 [isdn] > > I'm going to try an _evil_ hack like this... > Yes this should help you for the moment. > --- drivers/isdn/hisax/hfc_pci.c.orig 2004-02-10 01:49:49.278608994 +0000 > +++ drivers/isdn/hisax/hfc_pci.c 2004-02-10 01:50:15.404811276 +0000 > @@ -597,7 +597,7 @@ > u_char new_f1, *src, *dst; > unsigned short *z1t, *z2t; > > - if (!bcs->tx_skb) > + if (!bcs->tx_skb && !(bcs->tx_skb = skb_dequeue(&bcs->squeue))) > return; > if (bcs->tx_skb->len <= 0) > return; > @@ -1388,7 +1388,13 @@ > > switch (pr) { > case (PH_DATA | REQUEST): > - spin_lock_irqsave(&bcs->cs->lock, flags); > + local_irq_save(flags); > + if (!spin_trylock(&bcs->cs->lock)) { > + /* Possible recursion. Queue it and return */ > + local_irq_restore(flags); > + skb_queue_tail(&bcs->squeue, skb); > + break; > + } > if (bcs->tx_skb) { > skb_queue_tail(&bcs->squeue, skb); > } else { > > > -- > dwmw2 > -- Karsten Keil SuSE Labs ISDN development ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-10 2:51 ` Karsten Keil @ 2004-02-10 10:19 ` David Woodhouse 2004-02-10 11:45 ` Karsten Keil 0 siblings, 1 reply; 12+ messages in thread From: David Woodhouse @ 2004-02-10 10:19 UTC (permalink / raw) To: Karsten Keil; +Cc: linux-kernel On Tue, 2004-02-10 at 03:51 +0100, Karsten Keil wrote: > Your analyse is correct, but the error is, that > ll_writewakeup is called with the lock. > Upper layers should not be called in this path. That's an evidently sensible answer, yes -- but it looks like it's always been like this, and fixing it really wasn't not a task I particularly wanted to undertake at 2am this morning... I think I might leave that to you :) -- dwmw2 ^ permalink raw reply [flat|nested] 12+ messages in thread
* Re: oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) 2004-02-10 10:19 ` David Woodhouse @ 2004-02-10 11:45 ` Karsten Keil 0 siblings, 0 replies; 12+ messages in thread From: Karsten Keil @ 2004-02-10 11:45 UTC (permalink / raw) To: linux-kernel On Tue, Feb 10, 2004 at 10:19:11AM +0000, David Woodhouse wrote: > On Tue, 2004-02-10 at 03:51 +0100, Karsten Keil wrote: > > Your analyse is correct, but the error is, that > > ll_writewakeup is called with the lock. > > Upper layers should not be called in this path. > > That's an evidently sensible answer, yes -- but it looks like it's > always been like this, and fixing it really wasn't not a task I > particularly wanted to undertake at 2am this morning... I think I might > leave that to you :) I don't want give you the impression of a "evidently sensible answer", (maybe ist was also a little bit late or early ... :-) I only want to point out that here is a deeper design flaw in this code and it is here for a long time, but the old none spinlock code with a big CLI (bad,bad,bad) make it working well enough. During porting I saw this problem, but forget to mark it for fixing later. These things (missing separation of layers) was one reason for me to begin a new driver from scratch some time ago (mISDN). -- Karsten Keil SuSE Labs ISDN development ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2004-02-10 11:45 UTC | newest] Thread overview: 12+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2004-02-02 13:02 oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) Todor Todorov 2004-02-02 19:51 ` Karsten Keil 2004-02-02 22:00 ` Marcel Holtmann 2004-02-03 7:48 ` Karsten Keil 2004-02-05 22:59 ` Stian Jordet 2004-02-04 7:38 ` 2.6.2-rc3 with isdn patch + devfs doesn't compile Adrian Bunk 2004-02-04 9:39 ` Karsten Keil 2004-02-09 12:13 ` oops in old isdn4linux and 2.6.2-rc3 (was in -rc2 too) David Woodhouse 2004-02-10 1:53 ` David Woodhouse 2004-02-10 2:51 ` Karsten Keil 2004-02-10 10:19 ` David Woodhouse 2004-02-10 11:45 ` Karsten Keil
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox