[Pkg-samba-maint] Bug#439882: Bug#439882: samba: Panic or segfault in Samba, and (unable to) core dump

Steve Langasek vorlon at debian.org
Wed Aug 29 01:30:12 UTC 2007

On Wed, Aug 29, 2007 at 02:59:21AM +0200, Paolo wrote:
> On Tue, Aug 28, 2007 at 06:51:05AM -0700, Steve Langasek wrote:
> > On Tue, Aug 28, 2007 at 10:17:25AM +0200, Paolo wrote:
> > > [2007/08/28 09:54:06, 1] smbd/service.c:make_connection_snum(950)
> > >   utec ( connect to service usb-utec initially as user utec (uid=1004, gid=1004) (pid 3469)
> > > [2007/08/28 09:54:06, 0] tdb/tdbutil.c:tdb_log(783)
> > >   tdb(/var/run/samba/locking.tdb): expand_file write of 1024 failed (Success)

> > This looks like the root problem.

> > Is there any obvious reason why samba would not be able to write to
> > locking.tdb?  E.g., out of disk space, strange file permissions?

> yep, seems that's the problem indeed; a while after filing the bug rep I
> had the same suspect. Still, I'm not clear why it'd happen: fs was 100% full
> ie filled beyond mke2fs -m limit, but there's still ~10 MB avail for root 
> only, and: 


> # ls -l /var/run/samba/locking.tdb
> -rw-r--r-- 1 root root 40200 2007-08-28 21:05 /var/run/samba/locking.tdb

> so it seems that's root stuff and shouldn't have failed to write/expand it.

Right, so the file is going to be opened as root, but the locks are going to
be written after the process has changed uids to handle a client request; so
I think the write will fail because of that.

> Anyway, samba shows poor/bad behaviour here (ie buggy), it went into a tight
> loop, restarting smbd and firing off ~1000 panic msgs in a few mins and 
> filling up logs.

No, samba is doing exactly what it's asked to by the client.  smbd doesn't
restart itself, if you're getting multiple copies spawned it's because it's
being restarted by repeated client requests.

> Finally, there's the last log bits:

> [2007/08/28 09:53:48, 0] lib/fault.c:dump_core(168)
>   unable to change to /var/log/samba/cores/smbdrefusing to dump core
> [2007/08/28 09:53:48, 0] smbd/server.c:main(847)

> there's no such /var/log/samba/cores/smbdrefusing and no core dump; /var/log
> is on another partition with plenty of space.

Well, presumably you could create these directories by hand and capture a
core dump that way, but if you're running out of disk space that doesn't
sound like it would be too helpful in this case.

On my system, these directories exist and appear to have been autocreated by
the daemons on start.

Steve Langasek                   Give me a lever long enough and a Free OS
Debian Developer                   to set it on, and I can move the world.
vorlon at debian.org                                   http://www.debian.org/

More information about the Pkg-samba-maint mailing list