NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: port-alpha/38358: LOCKDEBUG panic when attaching tsp1



The following reply was made to PR port-alpha/38358; it has been noted by GNATS.

From: Jarle Greipsland <jarle%uninett.no@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: 
Subject: Re: port-alpha/38358: LOCKDEBUG panic when attaching tsp1
Date: Fri, 16 May 2008 17:37:15 +0200 (CEST)

 [ re-sent to gnats-bugs%netbsd.org@localhost in order to have it recorded
   for posterity. ]
 Hi,
 
 some further input.  I added a debug printf (diff below) to the
 relevant bus_io_init function in pci_bwx_bus_io_chipdep.c.  It
 turns out that the first printout from this function occurs right
 after the kernel gets control from the boot blocks:
 
 Boot file: netbsd
 Boot flags: a
 4060656+476168 [258960+166553]=0x4bbea8
 
 Entering netbsd at 0xfffffc0000301210...
 chip_io_ex_store(v) = 0xfffffc0000720f30
 Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
     2006, 2007, 2008
     The NetBSD Foundation, Inc.  All rights reserved.
 
 and then the second printout occurs later on:
 [ ... ]
 tsp1 at tsc0
 chip_io_ex_store(v) = 0xfffffc0000720f30
 Mutex error: lockdebug_alloc: already initialized
 
 lock address : 0xfffffc0000720f38 type     :               spin
 shared holds :                  0 exclusive:                  0
 shares wanted:                  0 exclusive:                  0
 current cpu  :                  0 last held:                  0
 current lwp  : 0xfffffc00006d2180 last held: 000000000000000000
 last locked  : 0xfffffc00005012dc unlocked : 0xfffffc0000501478
 initialized  : 0xfffffc0000501684
 owner field  : 000000000000000000 wait/spin:                0/0
 
 panic: LOCKDEBUG
 
 Might this somehow be related to initialization of the console
 (which is on a serial port on this system)?
 
                                        -jarle
 
 Diff:
 Index: sys/arch/alpha/pci/pci_bwx_bus_io_chipdep.c
 ===================================================================
 RCS file: /cvsroot/src/sys/arch/alpha/pci/pci_bwx_bus_io_chipdep.c,v
 retrieving revision 1.17
 diff -u -r1.17 pci_bwx_bus_io_chipdep.c
 --- sys/arch/alpha/pci/pci_bwx_bus_io_chipdep.c 28 Apr 2008 20:23:11 -0000     
 1.17
 +++ sys/arch/alpha/pci/pci_bwx_bus_io_chipdep.c 16 May 2008 14:46:44 -0000
 @@ -218,7 +218,7 @@
         void *v;
  {
         struct extent *ex;
 -
 +       void *p;
         /*
          * Initialize the bus space tag.
          */
 @@ -301,6 +301,8 @@
         t->abs_c_4 =            __C(CHIP,_io_copy_region_4);
         t->abs_c_8 =            __C(CHIP,_io_copy_region_8);
  
 +       p = (void *)CHIP_IO_EX_STORE(v);
 +       printf("chip_io_ex_store(v) = %p\n", p);
         ex = extent_create(__S(__C(CHIP,_bus_io)), 0x0UL, 0xffffffffUL,
             M_DEVBUF, (void *)CHIP_IO_EX_STORE(v), CHIP_IO_EX_STORE_SIZE(v),
             EX_NOWAIT|EX_NOCOALESCE);
 


Home | Main Index | Thread Index | Old Index