All of lore.kernel.org
 help / color / mirror / Atom feed
* 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

* 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-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

* 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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.