kern/86550: kernel (w/ UFS_EXTATTR* and UFS_ACL) paniced by mount
mitrohin a.s.
swp at uni-altai.ru
Sun Sep 25 03:00:39 PDT 2005
>Number: 86550
>Category: kern
>Synopsis: kernel (w/ UFS_EXTATTR* and UFS_ACL) paniced by mount
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sun Sep 25 10:00:34 GMT 2005
>Closed-Date:
>Last-Modified:
>Originator: mitrohin a.s.
>Release: FreeBSD 6.0-BETA5 i386
>Organization:
Barnaul State Pedagogical University
>Environment:
System: FreeBSD swp.bspu.secna.ru 6.0-BETA5 FreeBSD 6.0-BETA5 #0: Thu Sep 22 17:15:06 NOVST 2005 root@:/usr/src/sys/i386/compile/ch_smpkernel_big i386
>Description:
my freebsd paniced by mount /home. i have mtree generated file from
this partition mounted read-only. if recreate hierarhy to new (created from
scratch) partition and umount it, then i get panic on next mount.
i remove this options from kernel config and have no panic now.
option UFS_EXTATTR
option UFS_EXTATTR_AUTOSTART
option UFS_ACL
/home/swp > tunefs -p /dev/ad3s2g
tunefs: ACLs: (-a) disabled
tunefs: MAC multilabel: (-l) disabled
tunefs: soft updates: (-n) enabled
tunefs: maximum blocks per file in a cylinder group: (-e) 2048
tunefs: average file size: (-f) 16384
tunefs: average number of files in a directory: (-s) 64
tunefs: minimum percentage of free space: (-m) 8%
tunefs: optimization preference: (-o) time
tunefs: volume label: (-L)
dmesg:
Copyright (c) 1992-2005 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD 6.0-BETA5 #0: Sun Sep 25 13:55:49 NOVST 2005
swp at swp.bspu.secna.ru:/usr/src/sys/i386/compile/ch_smpkernelpanic_big
Timecounter "i8254" frequency 1193182 Hz quality 0
CPU: Intel(R) Pentium(R) 4 CPU 2.80GHz (2793.01-MHz 686-class CPU)
Origin = "GenuineIntel" Id = 0xf33 Stepping = 3
Features=0xbfebfbff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CLFLUSH,DTS,ACPI,MMX,FXSR,SSE,SSE2,SS,HTT,TM,PBE>
Features2=0x41d<SSE3,RSVD2,MON,DS_CPL,CNTX-ID>
Hyperthreading: 2 logical CPUs
real memory = 534970368 (510 MB)
avail memory = 514215936 (490 MB)
ACPI APIC Table: <INTEL D865PERL>
FreeBSD/SMP: Multiprocessor System Detected: 2 CPUs
cpu0 (BSP): APIC ID: 0
cpu1 (AP): APIC ID: 1
ioapic0 <Version 2.0> irqs 0-23 on motherboard
npx0: [FAST]
npx0: <math processor> on motherboard
npx0: INT 16 interface
acpi0: <INTEL D865PERL> on motherboard
acpi0: Power Button (fixed)
pci_link0: <ACPI PCI Link LNKA> irq 11 on acpi0
pci_link1: <ACPI PCI Link LNKB> irq 3 on acpi0
pci_link2: <ACPI PCI Link LNKC> irq 9 on acpi0
pci_link3: <ACPI PCI Link LNKD> irq 5 on acpi0
pci_link4: <ACPI PCI Link LNKE> irq 0 on acpi0
pci_link5: <ACPI PCI Link LNKF> irq 0 on acpi0
pci_link6: <ACPI PCI Link LNKG> irq 0 on acpi0
pci_link7: <ACPI PCI Link LNKH> irq 10 on acpi0
Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
cpu0: <ACPI CPU> on acpi0
acpi_throttle0: <ACPI CPU Throttling> on cpu0
cpu1: <ACPI CPU> on acpi0
acpi_throttle1: <ACPI CPU Throttling> on cpu1
acpi_throttle1: failed to attach P_CNT
device_attach: acpi_throttle1 attach returned 6
pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
pci0: <ACPI PCI bus> on pcib0
agp0: <Intel 82865 host to AGP bridge> mem 0xf0000000-0xf3ffffff at device 0.0 on pci0
pcib1: <ACPI PCI-PCI bridge> at device 1.0 on pci0
pci1: <ACPI PCI bus> on pcib1
pci1: <display, VGA> at device 0.0 (no driver attached)
pci1: <display> at device 0.1 (no driver attached)
pcib2: <ACPI PCI-PCI bridge> at device 3.0 on pci0
pci2: <ACPI PCI bus> on pcib2
em0: <Intel(R) PRO/1000 Network Connection, Version - 2.1.7> port 0xbc00-0xbc1f mem 0xff600000-0xff61ffff irq 18 at device 1.0 on pci2
em0: Ethernet address: 00:0c:f1:d0:34:5e
em0: Speed:N/A Duplex:N/A
uhci0: <Intel 82801EB (ICH5) USB controller USB-A> port 0xe000-0xe01f irq 16 at device 29.0 on pci0
uhci0: [GIANT-LOCKED]
usb0: <Intel 82801EB (ICH5) USB controller USB-A> on uhci0
usb0: USB revision 1.0
uhub0: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub0: 2 ports with 2 removable, self powered
uhci1: <Intel 82801EB (ICH5) USB controller USB-B> port 0xe400-0xe41f irq 19 at device 29.1 on pci0
uhci1: [GIANT-LOCKED]
usb1: <Intel 82801EB (ICH5) USB controller USB-B> on uhci1
usb1: USB revision 1.0
uhub1: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub1: 2 ports with 2 removable, self powered
uhci2: <Intel 82801EB (ICH5) USB controller USB-C> port 0xe800-0xe81f irq 18 at device 29.2 on pci0
uhci2: [GIANT-LOCKED]
usb2: <Intel 82801EB (ICH5) USB controller USB-C> on uhci2
usb2: USB revision 1.0
uhub2: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub2: 2 ports with 2 removable, self powered
uhci3: <Intel 82801EB (ICH5) USB controller USB-D> port 0xec00-0xec1f irq 16 at device 29.3 on pci0
uhci3: [GIANT-LOCKED]
usb3: <Intel 82801EB (ICH5) USB controller USB-D> on uhci3
usb3: USB revision 1.0
uhub3: Intel UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
uhub3: 2 ports with 2 removable, self powered
ehci0: <EHCI (generic) USB 2.0 controller> mem 0xffa00000-0xffa003ff irq 23 at device 29.7 on pci0
ehci0: [GIANT-LOCKED]
usb4: EHCI version 1.0
usb4: companion controllers, 2 ports each: usb0 usb1 usb2 usb3
usb4: <EHCI (generic) USB 2.0 controller> on ehci0
usb4: USB revision 2.0
uhub4: Intel EHCI root hub, class 9/0, rev 2.00/1.00, addr 1
uhub4: 8 ports with 8 removable, self powered
pcib3: <ACPI PCI-PCI bridge> at device 30.0 on pci0
pci3: <ACPI PCI bus> on pcib3
fxp0: <Intel 82559 Pro/100 Ethernet> port 0xcc00-0xcc3f mem 0xff900000-0xff900fff,0xff700000-0xff7fffff irq 17 at device 2.0 on pci3
miibus0: <MII bus> on fxp0
inphy0: <i82555 10/100 media interface> on miibus0
inphy0: 10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
fxp0: Ethernet address: 00:03:47:05:6f:5b
fwohci0: <Lucent FW322/323> mem 0xff901000-0xff901fff irq 17 at device 7.0 on pci3
fwohci0: OHCI version 1.0 (ROM=0)
fwohci0: No. of Isochronous channels is 8.
fwohci0: EUI64 00:0c:f1:00:00:d0:34:5e
fwohci0: Phy 1394a available S400, 3 ports.
fwohci0: Link S400, max_rec 2048 bytes.
firewire0: <IEEE1394(FireWire) bus> on fwohci0
fwohci0: Initiate bus reset
fwohci0: node_id=0xc800ffc0, gen=1, CYCLEMASTER mode
firewire0: 1 nodes, maxhop <= 0, cable IRM = 0 (me)
firewire0: bus manager 0 (me)
isab0: <PCI-ISA bridge> at device 31.0 on pci0
isa0: <ISA bus> on isab0
atapci0: <Intel ICH5 UDMA100 controller> port 0x1f0-0x1f7,0x3f6,0x170-0x177,0x376,0xffa0-0xffaf at device 31.1 on pci0
ata0: <ATA channel 0> on atapci0
ata1: <ATA channel 1> on atapci0
pci0: <serial bus, SMBus> at device 31.3 (no driver attached)
pcm0: <Intel ICH5 (82801EB)> mem 0xffa00400-0xffa005ff,0xffa00800-0xffa008ff irq 17 at device 31.5 on pci0
pcm0: [GIANT-LOCKED]
pcm0: <Analog Devices AD1985 AC97 Codec>
acpi_button0: <Sleep Button> on acpi0
atkbdc0: <Keyboard controller (i8042)> port 0x60,0x64 irq 1 on acpi0
atkbd0: <AT Keyboard> irq 1 on atkbdc0
kbd0 at atkbd0
atkbd0: [GIANT-LOCKED]
psm0: <PS/2 Mouse> irq 12 on atkbdc0
psm0: [GIANT-LOCKED]
psm0: model Generic PS/2 mouse, device ID 0
speaker0: <PC speaker> port 0x61 on acpi0
fdc0: <floppy drive controller> port 0x3f0-0x3f1,0x3f2-0x3f3,0x3f4-0x3f5,0x3f7 irq 6 drq 2 on acpi0
fdc0: [FAST]
fd0: <1440-KB 3.5" drive> on fdc0 drive 0
pmtimer0 on isa0
orm0: <ISA Option ROMs> at iomem 0xc0000-0xccfff,0xcd000-0xce7ff,0xce800-0xcf7ff on isa0
sc0: <System console> at flags 0x100 on isa0
sc0: VGA <10 virtual consoles, flags=0x300>
vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
fb0 at vga0
Timecounters tick every 1.000 msec
Fast IPsec: Initialized Security Association Processing.
ad0: 76319MB <Seagate ST380011A 3.06> at ata0-master UDMA100
acd0: CDRW <ATAPI COMBO 48X24X16X/VER E.NA> at ata1-master UDMA33
ad3: DMA limited to UDMA33, controller found non-ATA66 cable
ad3: 78533MB <IC35L080AVVA07 0 VA4OA52A> at ata1-slave UDMA33
SMP: AP CPU #1 Launched!
Trying to mount root from ufs:/dev/ad0s1a
WARNING: /var was not properly dismounted
WARNING: /usr was not properly dismounted
WARNING: /home was not properly dismounted
WARNING: attempt to net_add_domain(netgraph) after domainfinalize()
WARNING: /home was not properly dismounted
/1: bad dir ino 2 at offset 16384: mangled entry
panic: ufs_dirbad: bad dir
cpuid = 0
KDB: stack backtrace:
kdb_backtrace(c06b4ce4,0,c06ae37e,d985272c,5) at 0xc05070e2 = kdb_backtrace+0x2f
panic(c06ae37e,c1c58a00,2,4000,c06ae338) at 0xc04e9841 = panic+0x128
ufs_dirbad(c2614ad4,4000,c06ae338,0,d98527a0) at 0xc05e6ecc = ufs_dirbad+0x4e
ufs_lookup(d9852874,c253e400,400,d9852860,0) at 0xc05e6665 = ufs_lookup+0x3a5
ufs_extattr_lookup(c25ebaa0,2,c06ae154,d98528b4,c23a9900) at 0xc05e4870 = ufs_extattr_lookup+0x118
ufs_extattr_autostart(c1c58800,c23a9900,c25ae800,c1ea8500,c1ea8500) at 0xc05e4cd3 = ufs_extattr_autostart+0x74
ffs_mountfs(c25ebbb0,c1c58800,c23a9900,55053081,47a0fa5b) at 0xc05db4f2 = ffs_mountfs+0x955
ffs_mount(c1c58800,c23a9900,c1d4d620,c23a9900,d9852aa0) at 0xc05da244 = ffs_mount+0xb94
vfs_domount(c23a9900,c1d4d310,c1d4d620,0,c1d4d5e0) at 0xc054732c = vfs_domount+0x712
vfs_donmount(c23a9900,0,d9852bec,c1d8ee80,e) at 0xc0546997 = vfs_donmount+0x12e
kernel_mount(c1d4d190,0,d9852c30,6c,bfbfed86) at 0xc05496d4 = kernel_mount+0x46
ffs_cmount(c1d4d190,bfbfdfc0,0,c23a9900,0) at 0xc05da311 = ffs_cmount+0x85
mount(c23a9900,d9852d04,10,c23a9900,804c000) at 0xc0546c0b = mount+0x218
syscall(3b,3b,3b,bfbfdfbc,bfbfea54) at 0xc06504f5 = syscall+0x349
Xint0x80_syscall() at 0xc063b6ef = Xint0x80_syscall+0x1f
--- syscall (21, FreeBSD ELF32, mount), eip = 0x280c6adf, esp = 0xbfbfdf9c, ebp = 0xbfbfe048 ---
KDB: enter: panic
panic: from debugger
cpuid = 0
Uptime: 34m3s
Dumping 509 MB (2 chunks)
chunk 0: 1MB (159 pages) ... ok
chunk 1: 510MB (130352 pages) 494 478 462 446 430 414 398 382 366 350 334 318 302 286 270 254 238 222 206 190 174 158 142 126 110 94 78 62 46 30 14 ... ok
Dump complete
kernel config:
ident ch_smpkernelpanic_big
maxusers 128
options PQ_CACHESIZE=1024
options INCLUDE_CONFIG_FILE # Include this file in kernel
options SCHED_4BSD
options SMP # Symmetric MultiProcessor Kernel
options NO_ADAPTIVE_MUTEXES
options PREEMPTION
options COMPAT_43
options KDB
options KDB_TRACE
options DDB
options DDB_NUMSYM
options GDB
options KTRACE #kernel tracing
options INET #Internet communications protocols
options IPSEC_FILTERGIF #filter ipsec packets from a tunnel
options FAST_IPSEC #new IPsec (cannot define w/ IPSEC)
device ether #Generic Ethernet
device loop #Network loopback device
device bpf #Berkeley packet filter
options MROUTING # Multicast routing
options PIM # Protocol Independent Multicast
options TCP_SIGNATURE #include support for RFC 2385
options ZERO_COPY_SOCKETS
options FFS #Fast filesystem
options SOFTUPDATES
options UFS_EXTATTR
options UFS_EXTATTR_AUTOSTART
options UFS_ACL
options UFS_DIRHASH
options QUOTA #enable disk quotas
device random
device mem
options _KPOSIX_PRIORITY_SCHEDULING
options P1003_1B_SEMAPHORES
options HZ=1000
options PPS_SYNC
device pty #Pseudo ttys
options TTYHOG=16386
device atkbdc
device atkbd
options KBD_INSTALL_CDEV # install a CDEV entry in /dev
device psm
device vga
device splash # Splash screen and screen saver support
device sc
options MAXCONS=10 # number of virtual consoles
options SC_HISTORY_SIZE=1024 # number of history buffer lines
options SC_MOUSE_CHAR=0x3 # char code for text mode mouse cursor
options SC_TWOBUTTON_MOUSE
device ata
device atadisk # ATA disk drives
device atapicd # ATAPI CDROM drives
options ATA_STATIC_ID
device fdc
device uart
device miibus
device fxp # Intel EtherExpress PRO/100B (82557, 82558)
device em
options PPC_PROBE_CHIPSET # Enable chipset specific detection
device uhci
device ehci
device usb
device firewire # FireWire bus code
device crypto # core crypto support
options PANIC_REBOOT_WAIT_TIME=64
options DIRECTIO
machine i386
device apic # I/O apic
options IPI_PREEMPTION
cpu I686_CPU # aka Pentium Pro(tm)
options CPU_FASTER_5X86_FPU
options NO_F00F_HACK
device isa # Required by npx(4)
options AUTO_EOI_1
device pci
device agp
device npx
device pmtimer # Adjust system timer at wakeup time
options FB_INSTALL_CDEV # install a CDEV entry in /dev
device io
i386/compile/ch_smpkernelpanic_big > kgdb kernel.debug /var/crash/vmcore.0
[GDB will not be able to debug user-mode threads: /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "i386-marcel-freebsd".
Unread portion of the kernel message buffer:
#0 doadump () at pcpu.h:165
165 __asm __volatile("movl %%fs:0,%0" : "=r" (td));
(kgdb) bt
#0 doadump () at pcpu.h:165
#1 0xc04e9525 in boot (howto=260) at ../../../kern/kern_shutdown.c:399
#2 0xc04e9900 in panic (fmt=0xc0694ea5 "from debugger")
at ../../../kern/kern_shutdown.c:555
#3 0xc0433af3 in db_panic (addr=-1068469911, have_addr=0, count=-1,
modif=0xd985255c "") at ../../../ddb/db_command.c:435
#4 0xc0433a6c in db_command (last_cmdp=0xc06e8b24, cmd_table=0x0,
aux_cmd_tablep=0xc06b8890, aux_cmd_tablep_end=0xc06b8894)
at ../../../ddb/db_command.c:349
#5 0xc0433b5d in db_command_loop () at ../../../ddb/db_command.c:455
#6 0xc0435a2d in db_trap (type=3, code=0) at ../../../ddb/db_main.c:221
#7 0xc0507418 in kdb_trap (type=0, code=0, tf=0xd98526ac)
at ../../../kern/subr_kdb.c:473
#8 0xc064fae2 in trap (frame=
{tf_fs = 8, tf_es = 40, tf_ds = -645595096, tf_edi = 256, tf_esi = 1, tf_ebp = -645585164, tf_isp = -645585192, tf_ebx = -645585108, tf_edx = 1, tf_ecx = -1056755712, tf_eax = 18, tf_trapno = 3, tf_err = 0, tf_eip = -1068469911, tf_cs = 32, tf_eflags = 524946, tf_esp = -1066785498, tf_ss = -1066791738})
at ../../../i386/i386/trap.c:601
#9 0xc063b69a in calltrap () at ../../../i386/i386/exception.s:139
#10 0xc0507169 in kdb_enter (msg=0x12 <Address 0x12 out of bounds>)
at cpufunc.h:60
#11 0xc04e9857 in panic (fmt=0xc06ae37e "ufs_dirbad: bad dir")
at ../../../kern/kern_shutdown.c:539
#12 0xc05e6ecc in ufs_dirbad (ip=0x1, offset=18,
how=0x12 <Address 0x12 out of bounds>) at ../../../ufs/ufs/ufs_lookup.c:598
#13 0xc05e6665 in ufs_lookup (ap=0xd9852874)
at ../../../ufs/ufs/ufs_lookup.c:286
#14 0xc05e4870 in ufs_extattr_lookup (start_dvp=0xc25ebaa0, lockparent=2,
dirname=0x12 <Address 0x12 out of bounds>, vp=0x12, td=0xc23a9900)
at ../../../ufs/ufs/ufs_extattr.c:273
#15 0xc05e4cd3 in ufs_extattr_autostart (mp=0xc1c58800, td=0xc23a9900)
at ../../../ufs/ufs/ufs_extattr.c:462
#16 0xc05db4f2 in ffs_mountfs (devvp=0xc25ebbb0, mp=0xc1c58800, td=0xc23a9900)
at ../../../ufs/ffs/ffs_vfsops.c:781
#17 0xc05da244 in ffs_mount (mp=0xc1c58800, td=0xc23a9900)
at ../../../ufs/ffs/ffs_vfsops.c:357
#18 0xc054732c in vfs_domount (td=0xc23a9900,
fstype=0xc06d9d40 " \001f\031ufs", fspath=0xc1d4d620 "/1", fsflags=0,
fsdata=0xc1d4d5e0) at ../../../kern/vfs_mount.c:739
#19 0xc0546997 in vfs_donmount (td=0x12, fsflags=18, fsoptions=0x12)
at ../../../kern/vfs_mount.c:503
#20 0xc05496d4 in kernel_mount (ma=0xc1d4d190, flags=18) at pcpu.h:162
#21 0xc05da311 in ffs_cmount (ma=0xc1d4d190, data=0xc1033000, flags=18,
td=0xc23a9900) at ../../../ufs/ffs/ffs_vfsops.c:384
#22 0xc0546c0b in mount (td=0xc23a9900, uap=0xd9852d04)
at ../../../kern/vfs_mount.c:566
#23 0xc06504f5 in syscall (frame=
{tf_fs = 59, tf_es = 59, tf_ds = 59, tf_edi = -1077944388, tf_esi = -1077941676, tf_ebp = -1077944248, tf_isp = -645583516, tf_ebx = -1077944208, tf_edx = -1, tf_ecx = -1077940858, tf_eax = 21, tf_trapno = 12, tf_err = 2, tf_eip = 671902431, tf_cs = 51, tf_eflags = 582, tf_esp = -1077944420, tf_ss = 59})
at ../../../i386/i386/trap.c:986
#24 0xc063b6ef in Xint0x80_syscall () at ../../../i386/i386/exception.s:200
#25 0x00000033 in ?? ()
Previous frame inner to this frame (corrupt stack?)
(kgdb) up 12
#12 0xc05e6ecc in ufs_dirbad (ip=0x1, offset=18,
how=0x12 <Address 0x12 out of bounds>) at ../../../ufs/ufs/ufs_lookup.c:598
598 panic("ufs_dirbad: bad dir");
(kgdb) list
593
594 mp = ITOV(ip)->v_mount;
595 (void)printf("%s: bad dir ino %lu at offset %ld: %s\n",
596 mp->mnt_stat.f_mntonname, (u_long)ip->i_number, (long)offset, how);
597 if ((mp->mnt_flag & MNT_RDONLY) == 0)
598 panic("ufs_dirbad: bad dir");
599 }
600
601 /*
602 * Do consistency checking on a directory entry:
(kgdb) up
#13 0xc05e6665 in ufs_lookup (ap=0xd9852874)
at ../../../ufs/ufs/ufs_lookup.c:286
286 ufs_dirbad(dp, dp->i_offset, "mangled entry");
(kgdb) list
281 if (ep->d_reclen == 0 || ep->d_reclen >
282 DIRBLKSIZ - (entryoffsetinblock & (DIRBLKSIZ - 1)) ||
283 (dirchk && ufs_dirbadentry(vdp, ep, entryoffsetinblock))) {
284 int i;
285
286 ufs_dirbad(dp, dp->i_offset, "mangled entry");
287 i = DIRBLKSIZ - (entryoffsetinblock & (DIRBLKSIZ - 1));
288 dp->i_offset += i;
289 entryoffsetinblock += i;
290 continue;
(kgdb) p ep
$1 = (struct direct *) 0xce574000
(kgdb) p *ep
$2 = {d_ino = 0, d_reclen = 0, d_type = 0 '\0', d_namlen = 0 '\0',
d_name = '\0' <repeats 255 times>}
(kgdb) l 270
265 * If still looking for a slot, and at a DIRBLKSIZE
266 * boundary, have to start looking for free space again.
267 */
268 if (slotstatus == NONE &&
269 (entryoffsetinblock & (DIRBLKSIZ - 1)) == 0) {
270 slotoffset = -1;
271 slotfreespace = 0;
272 }
273 /*
274 * Get pointer to next entry.
(kgdb) l
275 * Full validation checks are slow, so we only check
276 * enough to insure forward progress through the
277 * directory. Complete checks can be run by patching
278 * "dirchk" to be true.
279 */
280 ep = (struct direct *)((char *)bp->b_data + entryoffsetinblock);
281 if (ep->d_reclen == 0 || ep->d_reclen >
282 DIRBLKSIZ - (entryoffsetinblock & (DIRBLKSIZ - 1)) ||
283 (dirchk && ufs_dirbadentry(vdp, ep, entryoffsetinblock))) {
284 int i;
(kgdb) p bp
$3 = (struct buf *) 0xcbea19c8
(kgdb) p *bp
$4 = {b_bufobj = 0xc25ebb60, b_bcount = 16384, b_caller1 = 0x0,
b_data = 0xce570000 "\002", b_error = 0, b_iocmd = 1 '\001',
b_ioflags = 2 '\002', b_iooffset = 6373376, b_resid = 0, b_iodone = 0,
b_blkno = 12448, b_offset = 0, b_bobufs = {tqe_next = 0x0,
tqe_prev = 0xc25ebb64}, b_left = 0x0, b_right = 0x0, b_vflags = 0,
b_freelist = {tqe_next = 0x0, tqe_prev = 0xcbea3644}, b_qindex = 1,
b_flags = 2147483680, b_xflags = 2 '\002', b_lock = {
lk_interlock = 0xc06ee14c, lk_flags = 262144, lk_sharecount = 0,
lk_waitcount = 0, lk_exclusivecount = 1, lk_prio = 80,
lk_wmesg = 0xc06a44d3 "getblk", lk_timo = 0, lk_lockholder = 0xc23a9900,
lk_newlock = 0x0}, b_bufsize = 16384, b_runningbufspace = 0,
b_kvabase = 0xce570000 "\002", b_kvasize = 16384, b_lblkno = 0,
b_vp = 0xc25ebaa0, b_dirtyoff = 0, b_dirtyend = 0, b_rcred = 0x0,
b_wcred = 0x0, b_saveaddr = 0xce570000, b_pager = {pg_reqpage = 0},
b_cluster = {cluster_head = {tqh_first = 0xcbea1880, tqh_last = 0xcbea1bc8},
cluster_entry = {tqe_next = 0xcbea1880, tqe_prev = 0xcbea1bc8}},
b_pages = {0xc119d780, 0xc10d77c8, 0xc10bc810, 0xc188a858,
0x0 <repeats 28 times>}, b_npages = 4, b_dep = {lh_first = 0x0}}
(kgdb) p entryoffsetinblock
$5 = 16384
what can i do to help?
>How-To-Repeat:
1. get freebsd 6.0-BETA4 or BETA5.
2. make kernel with UFS_EXTATTR, UFS_EXTATTR_AUTOSTART, UFS_ACL
3. create new partition
4. get https://bspu.ab.ru/~swp/home.mtree.bz2 and create directories
on new partition
5. umount partition
6. mount partition
panic here
>Fix:
remove options UFS_EXTATTR, UFS_EXTATTR_AUTOSTART, UFS_ACL from kernel.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list