Re: smb related problem

From: Takanori Saneto <sanewo_at_ba2.so-net.ne.jp>
Date: Sun, 17 Jun 2007 19:27:46 +0900
OK, here it is:

smb_co_lock: recursive lock for object 1
panic: recursive lock for object 0xc1b3e600
KDB: enter: panic
[thread pid 592 tid 100032 ]
Stopped at    kdb_enter+0x32: leave
db> bt
Tracing pid 592 tid 100032 td 0xc1a44e00
kdb_enter(c060f652, c066e920,c1b89b5a,cc398a70,cc398a70,...) at
kdb_enter+0x32
panic(x1b89b5a,c1b3e600,1,c1bc0638,cc398ab0,...) at panic+0xc4
smb_share_lock(c1b3e600,2,c1a44e00,c,c1a44e00,...) at smb_share_lock
smb_co_gone(c1bc0600,cc398ba4,cc398ba4,cc398ac8,c1bc0600,...) at
smb_co_gone+0x3a
smb_sm_lookup(cc398af4,cc398b30,cc398ba4,cc398b4c,c199041c,...) at
smb_sm_lookup+0x16b
smb_usr_lookup(c1990400,cc398ba4,cc398bb0,cc398bac,c060ac51,...) at
smb_usr_lookup+0x95
nsmb_dev_ioctl(c1b5b100,82fc6e6a,c1990400,3,c1a44e00,...) at
nsmb_dev_ioctl+0x1d6
giant_ioctl(c1b5b100,82fc6e6a,c1990400,3,c1a44e00,...) at giant_ioctl+0x56
devfs_ioctl_f(c1a6a120,82fc6e6a,c1990400,c18eb800,c1a44e00,...) at
devfs_ioctl_f+0xc3
kern_ioctl(c1a44e00,4,82fc6e6a,c1990400,0,...) at kern_ioctl+0x23d
ioctl(c1a44e00,cc398cfc,c,c06057ee,c06397d0,...) at ioctl+0x128
syscall(cc398d38) at syscall+0x2a0
Xint0x80_syscall() at Xint0x80_syscall+0x20
--- syscall (54, FreeBSD ELF32, ioctl), eip = 0x2814f077, esp = 0xbfbfe55c,
ebp = 0xbfbfe888 ---
db>

kernel source is 7-CURRENT cvsup'ed this morning. kernel config is like
this:

# MUSE -- Puntium-4 HTT CPU in VMware
cpu        I686_CPU
ident        MUSE

makeoptions    DEBUG=-g        # Build kernel with gdb(1) debug symbols
makeoptions    MODULES_OVERRIDE="le random sysvipc acpi procfs pseudofs
smbfs libiconv libmchain linux accf_http splash vesa fdc sio usb ugen umass
ums i2c agp drm"

options     CPU_FASTER_5X86_FPU

options     SCHED_4BSD        # 4BSD scheduler
options     PREEMPTION        # Enable kernel thread preemption
options     INET            # InterNETworking
options     FFS            # Berkeley Fast Filesystem
options     SOFTUPDATES        # Enable FFS soft updates support
options     UFS_ACL            # Support for access control lists
options     UFS_DIRHASH        # Improve performance on big directories
options     UFS_GJOURNAL        # Enable gjournal-based UFS journaling
options     GEOM_PART_GPT        # GUID Partition Tables.
options     GEOM_LABEL        # Provides labelization
options     COMPAT_43        # !!! vmware binaries may need this (using
old.sigaction)
options     COMPAT_43TTY        # BSD 4.3 TTY compat [KEEP THIS!]
options     COMPAT_FREEBSD4        # Compatible with FreeBSD4
options     COMPAT_FREEBSD5        # Compatible with FreeBSD5
options     COMPAT_FREEBSD6        # Compatible with FreeBSD6
options     SCSI_DELAY=5000        # Delay (in ms) before probing SCSI
options     KTRACE            # ktrace(1) support
options     _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time
extensions
options     KBD_INSTALL_CDEV    # install a CDEV entry in /dev
options     ADAPTIVE_GIANT        # Giant mutex is adaptive.
options     STOP_NMI        # Stop CPUS using NMI instead of IPI
options     AUDIT            # Security event auditing

# Debugging for use in -current
options     KDB            # Enable kernel debugger support.
options     DDB            # Support DDB.
options     INVARIANTS        # Enable calls of extra sanity checking
options     INVARIANT_SUPPORT    # Extra sanity checks of internal
structures, required by INVARIANTS
options     WITNESS            # Enable checks to detect deadlocks and
cycles
options     WITNESS_SKIPSPIN    # Don't run witness on spinlocks for speed

device        pci

device        ata
device        atadisk        # ATA disk drives
device        atapicd        # ATAPI CDROM drives

device        atkbdc        # AT keyboard controller
device        atkbd        # AT keyboard
device        psm        # PS/2 mouse

device        vga        # VGA video card driver

device        splash        # Splash screen and screen saver support

device        sc
options     MAXCONS=12

device        pmtimer

device        loop        # Network loopback
device        ether        # Ethernet support
device        pty        # Pseudo-ttys (telnet etc)

device        bpf        # Berkeley packet filter

options     CLK_USE_I8254_CALIBRATION

# kldstat
Id Refs Address    Size     Name
 1   17 0xc0400000 32f54c   kernel
 2    1 0xc0730000 8b28     if_le.ko
 3    1 0xc0739000 c314     random.ko
 4    1 0xc0746000 4bac     sysvshm.ko
 5    1 0xc074b000 4940     sysvmsg.ko
 6    1 0xc0750000 6418     sysvsem.ko
 7    1 0xc0757000 67c8c    acpi.ko
 8    1 0xc1aa0000 6000     procfs.ko
 9    1 0xc1aaa000 8000     pseudofs.ko
10    1 0xc1b73000 3000     vmmemctl.ko
11    1 0xc1b81000 1e000    smbfs.ko
12    2 0xc1b9f000 4000     libiconv.ko
13    2 0xc1ba3000 3000     libmchain.ko
14    1 0xc1cb1000 2000     accf_http.ko

Hope this helps,

-- Takanori Saneto

2007/6/15, John Baldwin <jhb_at_freebsd.org>:
>
> On Thursday 14 June 2007 07:02:04 am Takanori Saneto wrote:
> > Hi,
> >
> > I encountered this smb_co_lock problem, too.
> > In my case, server was WindowsXP Pro and the share I was trying to mount
> was
> > 500GB of capacity.
> > When I try to use smbclient to mount the same share, I got
> > NT_STATUS_INSUFF_SERVER_RESOURCES error.
> > After resolving server problem (increasing IRPStackSize to 0x11),
> > smb_co_lock problem went away as well.
> > So, I guess this problem seems to be related to the handling of above
> server
> > error status.
> >
> > I hope this might help improving smbfs.
>
> Hmm, I really would need the stack trace to attempt to resolve the panic
> unfortunately.
>
> > Regards,
> >
> >
> > 2007/4/27, John Baldwin <jhb_at_freebsd.org>:
> > >
> > > On Thursday 19 April 2007 10:02:13 am Goran Gajic wrote:
> > > >
> > > > Hi,
> > > >
> > > > I have just noticed from today build:
> > > >
> > > > FreeBSD fbsd.interex-pla.net 7.0-CURRENT FreeBSD 7.0-CURRENT #0: Thu
> Apr
> > > > 19 11:42:17 CEST 2007
> > > > root_at_fbsd.interex-pla.net:/usr/src/sys/i386/compile/GENERIC i386
> > > >
> > > > netsmb_dev: loaded
> > > > smb_co_lock: recursive lock for object 1
> > > > lockmgr: thread 0xc3a39a20 unlocking unheld lock
> > > > KDB: stack backtrace:
> > > > db_trace_self_wrapper(c094fe7e) at db_trace_self_wrapper+0x25
> > > > kdb_backtrace(c094b1d7,c3a39a20) at kdb_backtrace+0x29
> > > > _lockmgr(c367ce08,2006,c367ce38,c3a39a20,c3a6e210,...) at
> _lockmgr+0x5fa
> > > > smb_co_put(c367ce00,d728ab90,c3678d00,c367ce00,0,...) at
> smb_co_put+0x50
> > > > smb_sm_lookup(d728ab1c,d728aafc,d728ab90,d728aaf8,d728aafc,...) at
> > > > smb_sm_lookup+0x11a
> > > > smb_usr_lookup(c2f09400,d728ab90,d728ab8c,d728ab88,c0a9e708,...) at
> > > > smb_usr_lookup+0x76
> > > >
> > >
> > >
>
> nsmb_dev_ioctl(c3678700,82fc6e6a,c2f09400,3,c3a39a20,c0a51488,0,c0948e06,131)
> > > > at nsmb_dev_ioctl+0x1e5
> > > > giant_ioctl(c3678700,82fc6e6a,c2f09400,3,c3a39a20,...) at
> > > giant_ioctl+0x33
> > > > devfs_ioctl_f(c37e8090,82fc6e6a,c2f09400,c3673e80,c3a39a20) at
> > > > devfs_ioctl_f+0xaf
> > > > kern_ioctl(c3a39a20,3,82fc6e6a,c2f09400) at kern_ioctl+0x1ae
> > > > ioctl(c3a39a20,d728ad00) at ioctl+0xf1
> > > > syscall(d728ad38) at syscall+0x252
> > > > Xint0x80_syscall() at Xint0x80_syscall+0x20
> > > > --- syscall (54, FreeBSD ELF32, ioctl), eip = 0x2815772f, esp =
> > > > 0xbfbfe40c, ebp = 0xbfbfe738 ---
> > > >
> > > > I've noticed this when I have tried mount_smbfs..
> > >
> > > Can you try this and reply with the stack trace from the panic?
> > >
> > > Index: smb_conn.c
> > > ===================================================================
> > > RCS file: /usr/cvs/src/sys/netsmb/smb_conn.c,v
> > > retrieving revision 1.18
> > > diff -u -r1.18 smb_conn.c
> > > --- smb_conn.c  6 Nov 2006 13:42:06 -0000       1.18
> > > +++ smb_conn.c  7 Nov 2006 18:42:41 -0000
> > > _at__at_ -351,6 +351,7 _at__at_
> > >         if (smb_co_lockstatus(cp, td) == LK_EXCLUSIVE &&
> > >             (flags & LK_CANRECURSE) == 0) {
> > >                 SMBERROR("recursive lock for object %d\n",
> cp->co_level);
> > > +               panic("rescursive lock for object %p", cp);
> > >                 return 0;
> > >         }
> > >         return lockmgr(&cp->co_lock, flags, &cp->co_interlock, td);
> > >
> > > --
> > > John Baldwin
> > > _______________________________________________
> > > freebsd-current_at_freebsd.org mailing list
> > > http://lists.freebsd.org/mailman/listinfo/freebsd-current
> > > To unsubscribe, send any mail to "
> freebsd-current-unsubscribe_at_freebsd.org"
> > >
> >
>
>
>
> --
> John Baldwin
>
Received on Sun Jun 17 2007 - 08:27:47 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:12 UTC