On Sun, Sep 8, 2013 at 4:27 PM, Sean Bruno <sean_br...@yahoo.com> wrote:
> On Sat, 2013-09-07 at 17:05 +0200, Davide Italiano wrote:
>> On Fri, Sep 6, 2013 at 6:00 PM, Sean Bruno <sean_br...@yahoo.com> wrote:
>> > Our "yBSD" builder needs to mount a disk image temporarily that has a
>> > dos partition (for openstack-ish things) to put configs into it.  It
>> > seems that under high stress, we can squeeze a panic out of it in
>> > namei().
>> >
>> > Sean
>> >
>> >
>> > Unread portion of the kernel message buffer:
>> > panic: namei: nameiop contaminated with flags
>> > cpuid = 8
>> > KDB: stack backtrace:
>> > db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 
>> > 0xfffffe048d8e53b0
>> > kdb_backtrace() at kdb_backtrace+0x39/frame 0xfffffe048d8e5460
>> > vpanic() at vpanic+0x126/frame 0xfffffe048d8e54a0
>> > kassert_panic() at kassert_panic+0x136/frame 0xfffffe048d8e5510
>> > namei() at namei+0x2c8/frame 0xfffffe048d8e5600
>> > msdosfs_mount() at msdosfs_mount+0x556/frame 0xfffffe048d8e57c0
>> > vfs_donmount() at vfs_donmount+0xc35/frame 0xfffffe048d8e5aa0
>> > sys_nmount() at sys_nmount+0x72/frame 0xfffffe048d8e5ae0
>> > amd64_syscall() at amd64_syscall+0x223/frame 0xfffffe048d8e5bf0
>> > Xfast_syscall() at Xfast_syscall+0xfb/frame 0xfffffe048d8e5bf0
>> > --- syscall (378, FreeBSD ELF64, sys_nmount), rip = 0x8000a8b68a, rsp = 
>> > 0x7fffffffd508, rbp = 0x7fffffffdb30 ---
>> > Uptime: 34m55s
>> > Dumping 1140 out of 16350 
>> > MB:..2%..12%..22%..31%..41%..51%..61%..71%..82%..92%
>> >
>> > Reading symbols from /boot/modules/msdosfs.ko...done.
>> > Loaded symbols for /boot/modules/msdosfs.ko
>> > #0  doadump (textdump=1) at pcpu.h:227
>> > 227     pcpu.h: No such file or directory.
>> >         in pcpu.h
>> > (kgdb) Hangup detected on fd 0
>> > error detected on stdin
>>
>> Can you please print the value of cnp->cn_nameiop (or, even better,
>> the whole struct) before the panic?
>>
>> Thanks,
>>
>
> Hrm ... tried to reproduce after recompiling the kernel (turning off
> KDB_UNATTENDED) and its not happening now.
>
> I'll keep an eye out for it.
>
> Sean

>From a first look (even without the informations) it looks very
strange that the assertion fails, NDINIT() is called just before
namei() in order to initialize struct nameidata, and that's what
almost every other filesystem do, so I'm surprised noone hit this
problem before. A (relatively random) guess is that you might run on
(some sort of) broken hardware.

Thanks,

-- 
Davide

"There are no solved problems; there are only problems that are more
or less solved" -- Henri Poincare
_______________________________________________
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"

Reply via email to