GENERIC vm6 820045e, vmcore.384 KDB: debugger backends: ddb KDB: current backend: ddb 524288K of memory above 4GB ignored Copyright (c) 1992-2009 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 is a registered trademark of The FreeBSD Foundation. FreeBSD 9.0-CURRENT #0 r200162+820045e: Sat Dec 5 22:59:23 CET 2009 pho@x4.osted.lan:/var/tmp/deviant2/sys/i386/compile/PHO i386 WARNING: WITNESS option enabled, expect reduced performance. WARNING: DIAGNOSTIC option enabled, expect reduced performance. Timecounter "i8254" frequency 1193182 Hz quality 0 CPU: AMD Phenom(tm) 9150e Quad-Core Processor (1799.99-MHz 686-class CPU) Origin = "AuthenticAMD" Id = 0x100f23 Stepping = 3 Features=0x178bfbff Features2=0x802009 AMD Features=0xee500800 AMD Features2=0x7ff TSC: P-state invariant real memory = 4294967296 (4096 MB) avail memory = 3536183296 (3372 MB) : Trying to mount root from ufs:/dev/ad4s1a Entropy harvesting: interrupts ethernet point_to_point kickstart. /dev/ad4s1a: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad4s1a: clean, 217022 free (2006 frags, 26877 blocks, 0.2% fragmentation) /dev/ad4s1e: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad4s1e: clean, 50099629 free (1813 frags, 6262227 blocks, 0.0% fragmentation) /dev/ad4s1f: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad4s1f: clean, 4189441 free (290065 frags, 487422 blocks, 1.3% fragmentation) /dev/ad4s1d: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad4s1d: clean, 13855221 free (105413 frags, 1718726 blocks, 0.2% fragmentation) Additional TCP/IP options: rfc1323 extensions=NO no-ipv4-mapped-ipv6. re0: link state changed to DOWN Starting Network: lo0 re0 fwe0 fwip0. Starting Network: fwe0. Starting Network: fwip0. add net default: gateway 192.168.1.1 add net ::ffff:0.0.0.0: gateway ::1 add net ::0.0.0.0: gateway ::1 add net fe80::: gateway ::1 add net ff02::: gateway ::1 re0: link state changed to UP Additional ABI support: linux. lock order reversal: 1st 0xe70fcc64 bufwait (bufwait) @ kern/vfs_bio.c:2559 2nd 0xc770e800 dirhash (dirhash) @ ufs/ufs/ufs_dirhash.c:285 KDB: stack backtrace: db_trace_self_wrapper(c0c99799,f6441878,c08ce195,c08bed8b,c0c9c6ea,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c08bed8b,c0c9c6ea,c712e098,c7131978,f64418d4,...) at kdb_backtrace+0x29 _witness_debugger(c0c9c6ea,c770e800,c0cbe901,c7131978,c0cbe5a7,...) at _witness_debugger+0x25 witness_checkorder(c770e800,9,c0cbe59e,11d,0,...) at witness_checkorder+0x839 _sx_xlock(c770e800,0,c0cbe59e,11d,c787cbc8,...) at _sx_xlock+0x85 ufsdirhash_acquire(e70fcc04,f6441a1c,44,e769e5b8,f64419a4,...) at ufsdirhash_acquire+0x48 ufsdirhash_add(c787cbc8,f6441a1c,15b8,f6441990,f6441994,...) at ufsdirhash_add+0x13 ufs_direnter(c7a09858,c7c77164,f6441a1c,f6441c00,e70fd410,...) at ufs_direnter+0x779 ufs_mkdir(f6441c28,c0cd3eeb,0,0,f6441b6c,...) at ufs_mkdir+0x9a1 VOP_MKDIR_APV(c0da2260,f6441c28,f6441c00,f6441b6c,0,...) at VOP_MKDIR_APV+0xc5 kern_mkdirat(c7836900,ffffff9c,bfbfef5a,0,1ff,...) at kern_mkdirat+0x21b kern_mkdir(c7836900,bfbfef5a,0,1ff,f6441d2c,...) at kern_mkdir+0x2e mkdir(c7836900,f6441cf8,8,c0c9cfb0,c0d81360,...) at mkdir+0x29 syscall(f6441d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (136, FreeBSD ELF32, mkdir), eip = 0x2816a5b3, esp = 0xbfbfed6c, ebp = 0xbfbfee38 --- Configuring syscons: keymap blanktime. Local package initialization:lock order reversal: 1st 0xc789274c ufs (ufs) @ kern/vfs_mount.c:1204 2nd 0xc7a0974c syncer (syncer) @ kern/vfs_subr.c:2190 KDB: stack backtrace: db_trace_self_wrapper(c0c99799,f6557a60,c08ce195,c08bed8b,c0c9c6ea,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c08bed8b,c0c9c6ea,c7131910,c71319e0,f6557abc,...) at kdb_backtrace+0x29 _witness_debugger(c0c9c6ea,c7a0974c,c0ca3a53,c71319e0,c0ca38e1,...) at _witness_debugger+0x25 witness_checkorder(c7a0974c,9,c0ca38d8,88e,0,...) at witness_checkorder+0x839 __lockmgr_args(c7a0974c,80100,c7a097b4,0,0,...) at __lockmgr_args+0x7b7 vop_stdlock(f6557bc4,c091ce4a,c0ca38e1,80100,c7a096f4,...) at vop_stdlock+0x65 VOP_LOCK1_APV(c0d922e0,f6557bc4,c087b6d3,c0dbcc20,c7a096f4,...) at VOP_LOCK1_APV+0xb5 _vn_lock(c7a096f4,80100,c0ca38d8,88e,c0f5e480,...) at _vn_lock+0x78 vrele(c7a096f4,0,c0ca30d6,4f9,80,...) at vrele+0x14f dounmount(c7a035a0,8000000,c7801d80,47e,ff1ca3a5,...) at dounmount+0x3ce unmount(c7801d80,f6557cf8,8,c7801d80,c0d806e8,...) at unmount+0x2ff syscall(f6557d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (22, FreeBSD ELF32, unmount), eip = 0x280da14f, esp = 0xbfbfe69c, ebp = 0xbfbfe768 --- lock order reversal: 1st 0xc789274c ufs (ufs) @ kern/vfs_mount.c:1204 2nd 0xc7892e40 devfs (devfs) @ ufs/ffs/ffs_softdep.c:1031 KDB: stack backtrace: db_trace_self_wrapper(c0c99799,f65579f0,c08ce195,c08bed8b,c0c9c6ea,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c08bed8b,c0c9c6ea,c7131910,c71317d8,f6557a4c,...) at kdb_backtrace+0x29 _witness_debugger(c0c9c6ea,c7892e40,c0c8af95,c71317d8,c0cbc942,...) at _witness_debugger+0x25 witness_checkorder(c7892e40,9,c0cbc939,407,c7892ea8,...) at witness_checkorder+0x839 __lockmgr_args(c7892e40,80400,c7892ea8,0,0,...) at __lockmgr_args+0x7b7 vop_stdlock(f6557b54,4,c0c94b81,80400,c7892de8,...) at vop_stdlock+0x65 VOP_LOCK1_APV(c0d7cb40,f6557b54,c0f69f44,c0dbcc20,c7892de8,...) at VOP_LOCK1_APV+0xb5 _vn_lock(c7892de8,80400,c0cbc939,407,c7a035a0,...) at _vn_lock+0x78 softdep_flushworklist(c7a035a0,f6557c00,c7801d80,52b,c7a096f4,...) at softdep_flushworklist+0x47 ffs_sync(c7a035a0,1,c0ca30d6,4f9,80,...) at ffs_sync+0x2fd dounmount(c7a035a0,8000000,c7801d80,47e,ff1ca3a5,...) at dounmount+0x44e unmount(c7801d80,f6557cf8,8,c7801d80,c0d806e8,...) at unmount+0x2ff syscall(f6557d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (22, FreeBSD ELF32, unmount), eip = 0x280da14f, esp = 0xbfbfe69c, ebp = 0xbfbfe768 --- ** /dev/ad4s1e ** Last Mounted on /tmp ** Phase 1 - Check Blocks and Sizes ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 32047 files, 677446 used, 50099629 free (1813 frags, 6262227 blocks, 0.0% fragmentation) ***** FILE SYSTEM IS CLEAN ***** usage: kill [-s signal_name] pid ... kill -l [exit_status] kill -signal_name pid ... kill -signal_number pid ... fsck -y /tmp watchdogd. Sat Dec 5 23:48:37 CET 2009 FreeBSD/i386 (x4.osted.lan) (console) login: Dec 5 23:49:12 x4 su: pho to root on /dev/pts/0 lock order reversal: 1st 0xc7f7a058 ufs (ufs) @ kern/vfs_lookup.c:497 2nd 0xe7114b6c bufwait (bufwait) @ ufs/ffs/ffs_softdep.c:6193 3rd 0xc8658a14 ufs (ufs) @ kern/vfs_subr.c:2085 KDB: stack backtrace: db_trace_self_wrapper(c0c99799,f672e3e8,c08ce195,c08bed8b,c0c9c703,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c08bed8b,c0c9c703,c712e098,c7131910,f672e444,...) at kdb_backtrace+0x29 _witness_debugger(c0c9c703,c8658a14,c0c8f042,c7131910,c0ca38e1,...) at _witness_debugger+0x25 witness_checkorder(c8658a14,9,c0ca38d8,825,0,...) at witness_checkorder+0x839 __lockmgr_args(c8658a14,80100,c8658a7c,0,0,...) at __lockmgr_args+0x7b7 ffs_lock(f672e550,c08cdf3b,c0ca2dbb,80100,c86589bc,...) at ffs_lock+0xa1 VOP_LOCK1_APV(c0da2260,f672e550,c78010a4,c0dbcc20,c86589bc,...) at VOP_LOCK1_APV+0xb5 _vn_lock(c86589bc,80100,c0ca38d8,825,4,...) at _vn_lock+0x78 vget(c86589bc,80100,c7801000,50,0,...) at vget+0xbb vfs_hash_get(c7a032d0,28410,80000,c7801000,f672e6ac,...) at vfs_hash_get+0xed ffs_vgetf(c7a032d0,28410,80000,f672e6ac,1,...) at ffs_vgetf+0x49 softdep_sync_metadata(c7f7a000,0,c0cbe1ea,148,0,...) at softdep_sync_metadata+0x5ba ffs_syncvnode(c7f7a000,1,c7801000,f672e76c,246,...) at ffs_syncvnode+0x3e2 ffs_truncate(c7f7a000,4000,0,880,c71bd280,...) at ffs_truncate+0x696 ufs_direnter(c7f7a000,c8459b20,f672e9f8,f672ec00,0,...) at ufs_direnter+0x946 ufs_makeinode(f672ec00,c091d7ef,c0da2260,f672eb28,c0da27e0,...) at ufs_makeinode+0x572 ufs_mknod(f672ec28,c0cd406f,0,0,f672eb6c,...) at ufs_mknod+0x35 VOP_MKNOD_APV(c0da2260,f672ec28,f672ec00,f672eb6c,0,...) at VOP_MKNOD_APV+0xc5 kern_mkfifoat(c7801000,ffffff9c,804d240,0,1b6,...) at kern_mkfifoat+0x217 kern_mkfifo(c7801000,804d240,0,1b6,f672ed2c,...) at kern_mkfifo+0x2e mkfifo(c7801000,f672ecf8,8,c0c9cef8,c0d812f0,...) at mkfifo+0x29 syscall(f672ed38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (132, FreeBSD ELF32, mkfifo), eip = 0x280eabeb, esp = 0xbfbfe66c, ebp = 0xbfbfe698 --- Dec 5 23:56:34 x4 kernel: pid 2136 (creat), uid 0 inumber 15 on /mnt: out of inodes Dec 5 23:56:35 x4 kernel: pid 2157 (creat), uid 0 inumber 28 on /mnt: out of inodes Dec 5 23:56:36 x4 kernel: pid 2152 (creat), uid 0 inumber 23 on /mnt: out of inodes Dec 5 23:56:48 x4 kernel: pid 2154 (creat), uid 0 inumber 16 on /mnt: out of inodes Dec 5 23:56:50 x4 kernel: pid 2154 (creat), uid 0 inumber 16 on /mnt: out of inodes Dec 5 23:56:51 x4 kernel: pid 2134 (creat), uid 0 inumber 86 on /mnt: out of inodes Dec 5 23:56:52 x4 kernel: pid 2155 (creat), uid 0 inumber 22 on /mnt: out of inodes Dec 5 23:56:53 x4 kernel: pid 2151 (creat), uid 0 inumber 17 on /mnt: out of inodes Dec 5 23:56:54 x4 kernel: pid 2154 (creat), uid 0 inumber 16 on /mnt: out of inodes Dec 5 23:56:55 x4 kernel: pid 2133 (creat), uid 0 inumber 10 on /mnt: out of inodes Dec 5 23:56:56 x4 kernel: pid 2139 (creat), uid 0 inumber 24 on /mnt: out of inodes Dec 5 23:56:57 x4 kernel: pid 2134 (creat), uid 0 inumber 86 on /mnt: out of inodes Dec 5 23:56:59 x4 kernel: pid 2152 (creat), uid 0 inumber 23 on /mnt: out of inodes Dec 5 23:57:01 x4 kernel: pid 2133 (creat), uid 0 inumber 10 on /mnt: out of inodes Dec 5 23:57:02 x4 kernel: pid 2134 (creat), uid 0 inumber 86 on /mnt: out of inodes Dec 5 23:57:03 x4 kernel: pid 2095 (mkdir), uid 0 inumber 149693 on /mnt: out of inodes interrupt total irq1: atkbd0 4 irq4: uart0 5965 irq6: fdc0 1 irq9: acpi0 1 irq14: ata0 36 irq16: hdac1 ohci0 38 irq17: ohci1 ohci3 3 irq18: ohci2 ohci4 3 irq20: fwohci0 1 irq22: atapci0 106432 cpu0: timer 10440798 irq256: hdac0 1 irq257: re0 14295 cpu3: timer 10431403 cpu1: timer 10430577 cpu2: timer 10430837 Total 41860523 KDB: stack backtrace: db_trace_self_wrapper(c0c99799,c6e0dc04,c0848159,c0c90069,27ebdab,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c0c90069,27ebdab,0,27ebdab,0,...) at kdb_backtrace+0x29 hardclock(0,c0b9b285,0,1f4,c73c0c00,...) at hardclock+0x109 lapic_handle_timer(c6e0dc2c) at lapic_handle_timer+0x9f Xtimerint() at Xtimerint+0x1f --- interrupt, eip = 0xc0b9b285, esp = 0xc6e0dc6c, ebp = 0xc6e0dc6c --- acpi_cpu_c1(0,c6e0dcd4,0,ffffffff,c6e0dcb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e0dcb4,c0bb29db,1,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(1,c6e0dcf8,c08ae0ae,1,c6e0dcd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(1,c6e0dcd4,c0c97fd3,a09,c7179480,...) at cpu_idle+0x1b sched_idletd(0,c6e0dd38,c0c918ca,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08ade70,0,c6e0dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e0dd70, ebp = 0 --- KDB: enter: watchdog timeout [thread pid 11 tid 100006 ] Stopped at kdb_enter+0x3a: movl $0,kdb_why db> run pho db:0:pho> bt Tracing pid 11 tid 100006 td 0xc7179480 kdb_enter(c0c3f593,c0c5bdde,0,27ebdab,0,...) at kdb_enter+0x3a hardclock(0,c0b9b285,0,1f4,c73c0c00,...) at hardclock+0x11d lapic_handle_timer(c6e0dc2c) at lapic_handle_timer+0x9f Xtimerint() at Xtimerint+0x1f --- interrupt, eip = 0xc0b9b285, esp = 0xc6e0dc6c, ebp = 0xc6e0dc6c --- acpi_cpu_c1(0,c6e0dcd4,0,ffffffff,c6e0dcb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e0dcb4,c0bb29db,1,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(1,c6e0dcf8,c08ae0ae,1,c6e0dcd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(1,c6e0dcd4,c0c97fd3,a09,c7179480,...) at cpu_idle+0x1b sched_idletd(0,c6e0dd38,c0c918ca,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08ade70,0,c6e0dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e0dd70, ebp = 0 --- db:0:bt> show allpcpu Current CPU: 0 cpuid = 0 dynamic pcpu = 0x667d00 curthread = 0xc7179480: pid 11 "idle: cpu0" curpcb = 0xc6e0dd90 fpcurthread = none idlethread = 0xc7179480: pid 11 "idle: cpu0" APIC ID = 0 currentldt = 0x50 spin locks held: cpuid = 1 dynamic pcpu = 0x6026d00 curthread = 0xc71796c0: pid 11 "idle: cpu1" curpcb = 0xc6e0ad90 fpcurthread = none idlethread = 0xc71796c0: pid 11 "idle: cpu1" APIC ID = 1 currentldt = 0x50 spin locks held: cpuid = 2 dynamic pcpu = 0x6029d00 curthread = 0xc7179900: pid 11 "idle: cpu2" curpcb = 0xc6e07d90 fpcurthread = none idlethread = 0xc7179900: pid 11 "idle: cpu2" APIC ID = 2 currentldt = 0x50 spin locks held: cpuid = 3 dynamic pcpu = 0x602cd00 curthread = 0xc7179b40: pid 11 "idle: cpu3" curpcb = 0xc6e04d90 fpcurthread = none idlethread = 0xc7179b40: pid 11 "idle: cpu3" APIC ID = 3 currentldt = 0x50 spin locks held: db:0:allpcpu> show alllocks Process 5496 (mkfifo) thread 0xc80f9480 (100242) exclusive sx so_snd_sx (so_snd_sx) r = 0 (0xcba10ac8) locked @ kern/uipc_sockbuf.c:148 Process 5495 (mkfifo) thread 0xc809eb40 (100216) exclusive sx so_snd_sx (so_snd_sx) r = 0 (0xcba0f790) locked @ kern/uipc_sockbuf.c:148 Process 5494 (mkfifo) thread 0xc80aa240 (100243) exclusive sx so_snd_sx (so_snd_sx) r = 0 (0xc87b3790) locked @ kern/uipc_sockbuf.c:148 Process 5420 (rw) thread 0xc8c9d6c0 (100290) exclusive lockmgr ufs (ufs) r = 0 (0xcae91a14) locked @ kern/vfs_vnops.c:636 Process 5418 (rw) thread 0xc804bd80 (100165) exclusive lockmgr ufs (ufs) r = 0 (0xca6b9b78) locked @ kern/vfs_vnops.c:636 Process 5416 (rw) thread 0xc80a26c0 (100210) exclusive lockmgr ufs (ufs) r = 0 (0xc9460484) locked @ kern/vfs_vnops.c:636 Process 5414 (rw) thread 0xcb938d80 (100400) exclusive lockmgr ufs (ufs) r = 0 (0xcafd6e40) locked @ kern/vfs_vnops.c:636 Process 5412 (rw) thread 0xc814eb40 (100279) exclusive lockmgr ufs (ufs) r = 0 (0xcb163484) locked @ kern/vfs_vnops.c:636 Process 5410 (rw) thread 0xc93bb900 (100350) exclusive lockmgr ufs (ufs) r = 0 (0xcb4278b0) locked @ kern/vfs_vnops.c:636 Process 5408 (rw) thread 0xc89f4000 (100382) exclusive lockmgr ufs (ufs) r = 0 (0xcb136a14) locked @ kern/vfs_vnops.c:636 Process 5406 (rw) thread 0xcb8ab6c0 (100361) exclusive lockmgr ufs (ufs) r = 0 (0xc891e484) locked @ kern/vfs_vnops.c:636 Process 5404 (rw) thread 0xcb827b40 (100385) exclusive lockmgr ufs (ufs) r = 0 (0xc947a320) locked @ kern/vfs_vnops.c:636 Process 5402 (rw) thread 0xc80a3000 (100200) exclusive lockmgr ufs (ufs) r = 0 (0xcb24ecdc) locked @ kern/vfs_vnops.c:636 Process 5401 (rw) thread 0xc80ad000 (100195) exclusive lockmgr ufs (ufs) r = 0 (0xcae5de40) locked @ kern/vfs_vnops.c:636 Process 5399 (rw) thread 0xc7801b40 (100141) exclusive lockmgr ufs (ufs) r = 0 (0xc77b3a14) locked @ kern/vfs_vnops.c:636 Process 5398 (rw) thread 0xc80e4000 (100231) exclusive lockmgr ufs (ufs) r = 0 (0xcb42174c) locked @ kern/vfs_vnops.c:636 Process 5397 (rw) thread 0xc80a3d80 (100301) exclusive lockmgr ufs (ufs) r = 0 (0xcb1a95e8) locked @ kern/vfs_vnops.c:636 Process 5396 (rw) thread 0xcb8e3480 (100387) exclusive lockmgr ufs (ufs) r = 0 (0xc8a29320) locked @ kern/vfs_vnops.c:636 Process 5395 (rw) thread 0xcb8e3240 (100389) exclusive lockmgr ufs (ufs) r = 0 (0xca8cd5e8) locked @ kern/vfs_vnops.c:636 Process 1659 (sshd) thread 0xc814ed80 (100278) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc7ca6d6c) locked @ kern/uipc_sockbuf.c:148 Process 1657 (sshd) thread 0xc80a9240 (100276) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc8cb03c4) locked @ kern/uipc_sockbuf.c:148 Process 1656 (sshd) thread 0xc8150000 (100275) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc7ca6bd0) locked @ kern/uipc_sockbuf.c:148 Process 1365 (sshd) thread 0xc7bdf240 (100125) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc7ca0d6c) locked @ kern/uipc_sockbuf.c:148 db:0:alllocks> show lockedvnods Locked vnodes 0xc8a292c8: tag ufs, type VREG usecount 1, writecount 1, refcount 17 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xca783b28 ref 0 pages 1375 lock type ufs: EXCL by thread 0xcb8e3480 (pid 5396) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47128, on dev md5a 0xc77b39bc: tag ufs, type VREG usecount 1, writecount 1, refcount 14 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xc80aeb28 ref 0 pages 1162 lock type ufs: EXCL by thread 0xc7801b40 (pid 5399) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47129, on dev md5a 0xcb1a9590: tag ufs, type VREG usecount 1, writecount 1, refcount 18 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xca783908 ref 0 pages 1374 lock type ufs: EXCL by thread 0xc80a3d80 (pid 5397) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47130, on dev md5a 0xcb4216f4: tag ufs, type VREG usecount 1, writecount 1, refcount 13 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xc8347bb0 ref 0 pages 1660 lock type ufs: EXCL by thread 0xc80e4000 (pid 5398) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47131, on dev md5a 0xcae5dde8: tag ufs, type VREG usecount 1, writecount 1, refcount 9 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb42bc38 ref 0 pages 1012 lock type ufs: EXCL by thread 0xc80ad000 (pid 5401) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47132, on dev md5a 0xcb24ec84: tag ufs, type VREG usecount 1, writecount 1, refcount 13 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xca7d9550 ref 0 pages 1352 lock type ufs: EXCL by thread 0xc80a3000 (pid 5402) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47133, on dev md5a 0xcb427858: tag ufs, type VREG usecount 1, writecount 1, refcount 18 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb445990 ref 0 pages 1913 lock type ufs: EXCL by thread 0xc93bb900 (pid 5410) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47134, on dev md5a 0xc947a2c8: tag ufs, type VREG usecount 1, writecount 1, refcount 14 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb428ee0 ref 0 pages 1530 lock type ufs: EXCL by thread 0xcb827b40 (pid 5404) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47135, on dev md5a 0xc891e42c: tag ufs, type VREG usecount 1, writecount 1, refcount 13 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb3ff220 ref 0 pages 1383 lock type ufs: EXCL by thread 0xcb8ab6c0 (pid 5406) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47136, on dev md5a 0xc946042c: tag ufs, type VREG usecount 1, writecount 1, refcount 23 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb405220 ref 0 pages 2116 lock type ufs: EXCL by thread 0xc80a26c0 (pid 5416) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47137, on dev md5a 0xca6b9b20: tag ufs, type VREG usecount 2, writecount 1, refcount 21 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb42a220 ref 1 pages 2098 lock type ufs: EXCL by thread 0xc804bd80 (pid 5418) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47138, on dev md5a 0xcb16342c: tag ufs, type VREG usecount 1, writecount 1, refcount 14 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb4445d8 ref 0 pages 1831 lock type ufs: EXCL by thread 0xc814eb40 (pid 5412) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47139, on dev md5a 0xcae919bc: tag ufs, type VREG usecount 1, writecount 1, refcount 20 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb353c38 ref 0 pages 1836 lock type ufs: EXCL by thread 0xc8c9d6c0 (pid 5420) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47140, on dev md5a 0xcb1369bc: tag ufs, type VREG usecount 1, writecount 1, refcount 13 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb412880 ref 0 pages 1743 lock type ufs: EXCL by thread 0xc89f4000 (pid 5408) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47141, on dev md5a 0xcafd6de8: tag ufs, type VREG usecount 1, writecount 1, refcount 14 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xcb4135d8 ref 0 pages 2078 lock type ufs: EXCL by thread 0xcb938d80 (pid 5414) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47142, on dev md5a 0xca8cd590: tag ufs, type VREG usecount 1, writecount 1, refcount 17 mountedhere 0 flags (VI_OBJDIRTY) v_object 0xc82cabb0 ref 0 pages 389 lock type ufs: EXCL by thread 0xcb8e3240 (pid 5395) with exclusive waiters pending #0 0xc0873ca0 at __lockmgr_args+0xb90 #1 0xc0acbce1 at ffs_lock+0xa1 #2 0xc0bdd755 at VOP_LOCK1_APV+0xb5 #3 0xc092aaa8 at _vn_lock+0x78 #4 0xc092ba44 at vn_write_chunk+0xe4 #5 0xc092bc5c at vn_write+0x13c #6 0xc08d0895 at dofilewrite+0x95 #7 0xc08d1fe8 at kern_writev+0x58 #8 0xc08d20ff at write+0x4f #9 0xc0bc47c4 at syscall+0x2b4 #10 0xc0ba6b00 at Xint0x80_syscall+0x20 ino 47881, on dev md5a db:0:lockedvnods> show mount 0xc77aab40 /dev/ad4s1a on / (ufs) 0xc77ab000 devfs on /dev (devfs) 0xc7a0b000 /dev/ad4s1f on /usr (ufs) 0xc7a0ab40 /dev/ad4s1d on /var (ufs) 0xc7a0a870 procfs on /proc (procfs) 0xc7a0a5a0 linprocfs on /usr/compat/linux/proc (linprocfs) 0xc7a0a2d0 /dev/ad4s1e on /tmp (ufs) 0xc7a0a000 /dev/md5a on /mnt (ufs) More info: show mount db:0:mount> ps pid ppid pgrp uid state wmesg wchan cmd 5505 5504 5505 2 SVLs pfault 0xc0f6a61c cron 5504 1266 1266 0 S ppwait 0xc7ed6d40 cron 5501 1667 1664 1001 SL pfault 0xc0f6a61c awk 5497 1289 1289 0 SL pfault 0xc0f6a61c sh 5496 1 1383 0 S+ sbwait 0xcba10af4 mkfifo 5495 1 1383 0 S+ sbwait 0xcba0f7bc mkfifo 5494 1 1383 0 S+ sbwait 0xc87b37bc mkfifo 5433 5430 1383 0 SL+ pfault 0xc0f6a61c lockf2 5432 5430 1383 0 SL+ pfault 0xc0f6a61c lockf2 5430 5348 1383 0 S+ wait 0xc814d7f8 lockf2 5428 5400 1383 0 S+ ttyosr 0xc770f880 fts 5424 5400 1383 0 SL+ pfault 0xc0f6a61c fts 5420 5394 1383 0 S+ vmwait 0xc0f6a61c rw 5418 5394 1383 0 S+ vmwait 0xc0f6a61c rw 5416 5394 1383 0 S+ vmwait 0xc0f6a61c rw 5414 5394 1383 0 S+ vmwait 0xc0f6a61c rw 5412 5394 1383 0 S+ vmwait 0xc0f6a61c rw 5410 5394 1383 0 S+ vmwait 0xc0f6a61c rw 5408 5394 1383 0 S+ vmwait 0xc0f6a61c rw 5407 5400 1383 0 S+ ttyout 0xc770f878 fts 5406 5394 1383 0 ?+ rw 5405 5400 1383 0 S+ ttyosr 0xc770f880 fts 5404 5394 1383 0 ?+ rw 5402 5394 1383 0 ?+ rw 5401 5394 1383 0 ?+ rw 5400 5352 1383 0 S+ wait 0xc815eaa0 fts 5399 5394 1383 0 ?+ rw 5398 5394 1383 0 ?+ rw 5397 5394 1383 0 ?+ rw 5396 5394 1383 0 ?+ rw 5395 5394 1383 0 ?+ rw 5394 5351 1383 0 S+ wait 0xc7800000 rw 5380 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5379 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5378 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5377 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5376 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5375 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5374 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5373 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5372 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5371 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5370 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5369 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5368 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5367 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5366 5361 1383 0 SL+ pfault 0xc0f6a61c swap 5361 5358 1383 0 S+ wait 0xc7bdcd48 swap 5358 3019 1383 0 S+ wait 0xc814d550 swap 5352 3019 1383 0 S+ wait 0xc8157aa0 fts 5351 3019 1383 0 S+ wait 0xc815ed48 rw 5348 3019 1383 0 S+ wait 0xc809a2a8 lockf2 3019 3018 1383 0 S+ wait 0xc809a7f8 run 3018 3017 1383 0 S+ wait 0xc809b7f8 run 3017 3011 1383 0 SL+ pfault 0xc0f6a61c run 3011 2994 1383 0 S+ wait 0xc80a62a8 sh 3003 0 0 0 SL mdwait 0xc8b94800 [md5] 2994 1383 1383 0 S+ wait 0xc8c9a000 sh 1674 1673 1674 1001 SLs+ pfault 0xc0f6a61c top 1673 1657 1657 1001 S select 0xc81f91e4 sshd 1668 1664 1664 1001 S piperd 0xc8c98000 awk 1667 1664 1664 1001 S wait 0xc80fd7f8 sh 1666 1665 1666 1001 Ss kqread 0xc891c700 tail 1665 1659 1659 1001 S select 0xc8295ae4 sshd 1664 1663 1664 1001 Ss wait 0xc80fbaa0 sh 1663 1656 1656 1001 S select 0xc8439524 sshd 1659 1247 1659 0 Ss sbwait 0xc7ca6d98 sshd 1657 1247 1657 0 Ss sbwait 0xc8cb03f0 sshd 1656 1247 1656 0 Ss sbwait 0xc7ca6bfc sshd 1383 1378 1383 0 S+ wait 0xc7ed6550 sh 1378 1374 1378 0 S+ wait 0xc7ae2550 bash 1374 1373 1374 0 S+ pause 0xc7ed4af8 csh 1373 1368 1373 1001 S+ wait 0xc7ae3550 su 1368 1367 1368 1001 Ss+ wait 0xc7ed47f8 bash 1367 1365 1365 1001 SL pfault 0xc0f6a61c sshd 1365 1247 1365 0 Ss sbwait 0xc7ca0d98 sshd 1364 1 1364 0 Ss+ ttyin 0xc73c1e70 getty 1363 1 1363 0 Ss+ ttyin 0xc74fb470 getty 1362 1 1362 0 Ss+ ttyin 0xc74fbe70 getty 1361 1 1361 0 Ss+ ttyin 0xc74fba70 getty 1360 1 1360 0 Ss+ ttyin 0xc74fb670 getty 1359 1 1359 0 Ss+ ttyin 0xc74fbc70 getty 1358 1 1358 0 Ss+ ttyin 0xc74fc270 getty 1357 1 1357 0 Ss+ ttyin 0xc74fc070 getty 1356 1 1356 0 Ss+ ttyin 0xc73c0870 getty 1325 1 1325 0 Ss select 0xc7771b24 inetd 1289 1 1289 0 Ss wait 0xc7bdd2a8 watchdogd 1266 1 1266 0 SLs pfault 0xc0f6a61c cron 1259 1 1259 25 SLs pfault 0xc0f6a61c sendmail 1255 1 1255 0 SLs pfault 0xc0f6a61c sendmail 1247 1 1247 0 Ss select 0xc789d2e4 sshd 1202 1 1202 0 SLs pfault 0xc0f6a61c ntpd 1061 1 1061 0 Ss select 0xc782f324 moused 1028 1 1028 0 ?s NLM: master 1021 1 1021 0 ?s rpc.statd 1014 1013 1013 0 ? (threaded) nfsd 100138 W nfsd: service 100137 W nfsd: service 100136 W nfsd: service 100100 W nfsd: master 1013 1 1013 0 Ss select 0xc7830324 nfsd 1004 1 1004 0 Ss select 0xc789d764 mountd 911 1 911 0 ?s rpcbind 878 1 878 0 SLs pfault 0xc0f6a61c syslogd 696 1 696 0 Ss select 0xc782f2a4 devd 20 0 0 0 SL flowclea 0xc0f5e888 [flowcleaner] 19 0 0 0 SL sdflush 0xc0f69fa0 [softdepflush] 18 0 0 0 SL syncer 0xc0f5e694 [syncer] 17 0 0 0 SL vlruwt 0xc7783aa0 [vnlru] 16 0 0 0 SL psleep 0xc0f5e3c8 [bufdaemon] 15 0 0 0 SL pgzero 0xc0f6ad98 [pagezero] 9 0 0 0 SL psleep 0xc0f6a9c4 [vmdaemon] 8 0 0 0 SL ufs 0xca6b9b78 [pagedaemon] 7 0 0 0 SL - 0xc73c063c [fdc0] 6 0 0 0 SL - 0xc73f4000 [fw0_probe] 14 0 0 0 SL (threaded) [usb] 100058 D - 0xc73d4d0c [usbus5] 100057 D - 0xc73d4cdc [usbus5] 100056 D - 0xc73d4cac [usbus5] 100055 D - 0xc73d4c7c [usbus5] 100053 D - 0xc73c6b5c [usbus4] 100052 D - 0xc73c6b2c [usbus4] 100051 D - 0xc73c6afc [usbus4] 100050 D - 0xc73c6acc [usbus4] 100049 D - 0xc73c2b5c [usbus3] 100048 D - 0xc73c2b2c [usbus3] 100047 D - 0xc73c2afc [usbus3] 100046 D - 0xc73c2acc [usbus3] 100045 D - 0xc73bbb5c [usbus2] 100044 D - 0xc73bbb2c [usbus2] 100043 D - 0xc73bbafc [usbus2] 100042 D - 0xc73bbacc [usbus2] 100040 D - 0xc73b6b5c [usbus1] 100039 D - 0xc73b6b2c [usbus1] 100038 D - 0xc73b6afc [usbus1] 100037 D - 0xc73b6acc [usbus1] 100035 D - 0xc73a7b5c [usbus0] 100034 D - 0xc73a7b2c [usbus0] 100033 D - 0xc73a7afc [usbus0] 100032 D - 0xc73a7acc [usbus0] 5 0 0 0 SL ccb_scan 0xc0dbdfd4 [xpt_thrd] 13 0 0 0 SL - 0xc0df1c24 [yarrow] 4 0 0 0 SL - 0xc0def9e4 [g_down] 3 0 0 0 SL - 0xc0def9e0 [g_up] 2 0 0 0 SL - 0xc0def9d8 [g_event] 12 0 0 0 WL (threaded) [intr] 100066 I [irq12: psm0] 100065 I [irq1: atkbd0] 100063 I [swi0: uart] 100060 I [irq20: fwohci0] 100059 I [irq14: ata0] 100054 I [irq19: ehci0] 100041 I [irq18: ohci2 ohci4] 100036 I [irq17: ohci1 ohci3] 100031 I [irq16: hdac1 ohci0] 100030 I [irq22: atapci0] 100029 I [irq256: hdac0] 100028 I [irq9: acpi0] 100027 I [swi5: +] 100025 I [swi2: cambio] 100020 I [swi6: task queue] 100019 I [swi6: Giant taskq] 100012 I [swi1: netisr 0] 100011 I [swi4: clock] 100010 I [swi4: clock] 100009 I [swi4: clock] 100008 I [swi4: clock] 100007 I [swi3: vm] 11 0 0 0 RL (threaded) [idle] 100006 Run CPU 0 [idle: cpu0] 100005 Run CPU 1 [idle: cpu1] 100004 Run CPU 2 [idle: cpu2] 100003 Run CPU 3 [idle: cpu3] 1 0 1 0 SLs wait 0xc7177d48 [init] 10 0 0 0 SL audit_wo 0xc0f698c0 [audit] 0 0 0 0 SLs (threaded) [kernel] 100061 D - 0xc73a1880 [fw0_taskq] 100026 D - 0xc73440c0 [kqueue taskq] 100023 D - 0xc7344240 [acpi_task_2] 100022 D - 0xc7344240 [acpi_task_1] 100021 D - 0xc7344240 [acpi_task_0] 100018 D - 0xc7344540 [thread taskq] 100016 D - 0xc715ed80 [firmware taskq] 100000 D vmwait 0xc0f6a61c [swapper] 5353 3019 1383 0 Z+ link 5419 5400 1383 0 Z+ fts 5422 5400 1383 0 Z+ fts 5425 5400 1383 0 Z+ fts 5427 5400 1383 0 Z+ fts 5426 5400 1383 0 Z+ fts 5429 5400 1383 0 Z+ fts 5413 5400 1383 0 Z+ fts 5421 5400 1383 0 Z+ fts 5411 5400 1383 0 Z+ fts 5423 5400 1383 0 Z+ fts 5415 5400 1383 0 Z+ fts 5409 5400 1383 0 Z+ fts 5417 5400 1383 0 Z+ fts 5359 3019 1383 0 Z+ mkfifo 5356 3019 1383 0 Z+ mkdir 5434 5430 1383 0 Z+ lockf2 5354 3019 1383 0 Z+ lockf 5355 3019 1383 0 Z+ creat 5357 3019 1383 0 Z+ rename 5350 3019 1383 0 Z+ openat 5349 3019 1383 0 Z+ symlink db:0:ps> allt Tracing command cron pid 5505 tid 100178 td 0xc8049000 sched_switch(c8049000,0,104,191,a2f9d922,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c8049000,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(cb3b82a8,4,0,10d,f6604c0c,...) at vm_waitpfault+0x75 vm_fault(cbd4c570,281b2000,2,0,281b28b4,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c7ed6aa0,...) at trap_pfault+0x10d trap(f6604d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2810974e, esp = 0xbfbfe670, ebp = 0xbfbfe678 --- Tracing command cron pid 5504 tid 100394 td 0xcb8e3000 Tracing command awk pid 5501 tid 100112 td 0xc78ea000 sched_switch(c78ea000,0,104,191,a2fa53f1,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c78ea000,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(cb400330,51,0,10d,f64d4c0c,...) at vm_waitpfault+0x75 vm_fault(c783ae80,2822f000,2,0,2822f114,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c78e5000,...) at trap_pfault+0x10d trap(f64d4d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x804d3a8, esp = 0xbfbfec10, ebp = 0xbfbfec28 --- Tracing command sh pid 5497 tid 100130 td 0xc7804d80 sched_switch(c7804d80,0,104,191,a2fa60ca,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7804d80,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(ca79d198,1,0,10d,f6526c0c,...) at vm_waitpfault+0x75 vm_fault(c78eccb0,28218000,1,0,282182b8,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c7800550,...) at trap_pfault+0x10d trap(f6526d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x28068417, esp = 0xbfbfe7e0, ebp = 0xbfbfe818 --- Tracing command mkfifo pid 5496 tid 100242 td 0xc80f9480 Tracing command mkfifo pid 5495 tid 100216 td 0xc809eb40 Tracing command mkfifo pid 5494 tid 100243 td 0xc80aa240 Tracing command lockf2 pid 5433 tid 100317 td 0xc93b9900 sched_switch(c93b9900,0,104,191,a2faae1c,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c93b9900,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c8093c38,0,0,10d,f67eac0c,...) at vm_waitpfault+0x75 vm_fault(cbd4b2b8,2807c000,2,0,2807c278,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c815e2a8,...) at trap_pfault+0x10d trap(f67ead38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x28051de5, esp = 0xbfbfe5e0, ebp = 0xbfbfe618 --- Tracing command lockf2 pid 5432 tid 100407 td 0xcb8e3d80 sched_switch(cb8e3d80,0,104,191,a2f92d68,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(cb8e3d80,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c9181110,0,0,10d,f695dc0c,...) at vm_waitpfault+0x75 vm_fault(c78ec570,2809e000,2,0,2809e858,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,cb91a550,...) at trap_pfault+0x10d trap(f695dd38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x280505d1, esp = 0xbfbfe55c, ebp = 0xbfbfe594 --- Tracing command lockf2 pid 5430 tid 100255 td 0xc8150d80 sched_switch(c8150d80,0,104,191,d5723533,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c8150d80,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c814d7f8,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c814d7f8,c814d880,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c8150d80,1538,f6704c74,0,0,...) at kern_wait+0xb76 wait4(c8150d80,f6704cf8,10,c0c9ceb5,c0d80544,...) at wait4+0x3b syscall(f6704d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810006b, esp = 0xbfbfe69c, ebp = 0xbfbfe6b8 --- Tracing command fts pid 5428 tid 100099 td 0xc7805240 Tracing command fts pid 5424 tid 100386 td 0xcb827900 sched_switch(cb827900,0,104,191,a2f9c645,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(cb827900,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c8076908,b5,0,10d,f691ec0c,...) at vm_waitpfault+0x75 vm_fault(c7e24828,282b5000,2,0,282b5000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,0,cb695aa0,...) at trap_pfault+0x10d trap(f691ed38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818c553, esp = 0xbfbfe520, ebp = 0xbfbfe568 --- Tracing command rw pid 5420 tid 100290 td 0xc8c9d6c0 Tracing command rw pid 5418 tid 100165 td 0xc804bd80 Tracing command rw pid 5416 tid 100210 td 0xc80a26c0 Tracing command rw pid 5414 tid 100400 td 0xcb938d80 Tracing command rw pid 5412 tid 100279 td 0xc814eb40 Tracing command rw pid 5410 tid 100350 td 0xc93bb900 Tracing command rw pid 5408 tid 100382 td 0xc89f4000 Tracing command fts pid 5407 tid 100319 td 0xc89f4b40 Tracing command rw pid 5406 tid 100361 td 0xcb8ab6c0 Tracing command fts pid 5405 tid 100207 td 0xc804cd80 Tracing command rw pid 5404 tid 100385 td 0xcb827b40 Tracing command rw pid 5402 tid 100200 td 0xc80a3000 Tracing command rw pid 5401 tid 100195 td 0xc80ad000 Tracing command fts pid 5400 tid 100307 td 0xc80e4900 sched_switch(c80e4900,0,104,191,dbcf3e68,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c80e4900,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c815eaa0,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c815eaa0,c815eb28,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c80e4900,151d,f67c4c74,0,0,...) at kern_wait+0xb76 wait4(c80e4900,f67c4cf8,10,c0c9ceb5,c0d80544,...) at wait4+0x3b syscall(f67c4d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810006b, esp = 0xbfbfe6bc, ebp = 0xbfbfe6d8 --- Tracing command rw pid 5399 tid 100141 td 0xc7801b40 Tracing command rw pid 5398 tid 100231 td 0xc80e4000 Tracing command rw pid 5397 tid 100301 td 0xc80a3d80 Tracing command rw pid 5396 tid 100387 td 0xcb8e3480 Tracing command rw pid 5395 tid 100389 td 0xcb8e3240 Tracing command rw pid 5394 tid 100132 td 0xc7804900 sched_switch(c7804900,0,104,191,c2f517f0,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7804900,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7800000,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7800000,c7800088,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c7804900,1513,f653ac74,0,0,...) at kern_wait+0xb76 wait4(c7804900,f653acf8,10,c0c9d8ea,c0d80544,...) at wait4+0x3b syscall(f653ad38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810106b, esp = 0xbfbfe6cc, ebp = 0xbfbfe6e8 --- Tracing command swap pid 5380 tid 100399 td 0xcb953000 sched_switch(cb953000,0,104,191,a2fa29dd,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(cb953000,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(cb3b0908,80fa,0,10d,f6945c0c,...) at vm_waitpfault+0x75 vm_fault(c717d9f8,303fa000,2,0,303fa000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,cb91faa0,...) at trap_pfault+0x10d trap(f6945d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5379 tid 100398 td 0xcb953240 sched_switch(cb953240,0,104,191,a2f9a97d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(cb953240,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c8786550,82b4,0,10d,f6942c0c,...) at vm_waitpfault+0x75 vm_fault(cbd4b1d0,305b4000,2,0,305b4000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,cb91fd48,...) at trap_pfault+0x10d trap(f6942d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5378 tid 100405 td 0xcb938240 sched_switch(cb938240,0,104,191,a2f91f22,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(cb938240,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c8415b28,b9a9,0,10d,f6957c0c,...) at vm_waitpfault+0x75 vm_fault(c8164000,33ca9000,2,0,33ca9000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,cb91aaa0,...) at trap_pfault+0x10d trap(f6957d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5377 tid 100114 td 0xc7ae4240 sched_switch(c7ae4240,0,104,191,a2f961eb,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7ae4240,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c8911110,9bb2,0,10d,f64dfc0c,...) at vm_waitpfault+0x75 vm_fault(c8164bc8,31eb2000,2,0,31eb2000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c7bddaa0,...) at trap_pfault+0x10d trap(f64dfd38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5376 tid 100288 td 0xc80f9d80 sched_switch(c80f9d80,0,104,191,a2f94a7b,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c80f9d80,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c8a93198,8208,0,10d,f6779c0c,...) at vm_waitpfault+0x75 vm_fault(c7e23bc8,30508000,2,0,30508000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c80fd2a8,...) at trap_pfault+0x10d trap(f6779d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5375 tid 100133 td 0xc78046c0 sched_switch(c78046c0,0,104,191,a2f8f61f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c78046c0,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c85515d8,c475,0,10d,f653ec0c,...) at vm_waitpfault+0x75 vm_fault(c7b00570,34775000,2,0,34775000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c77ffd48,...) at trap_pfault+0x10d trap(f653ed38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5374 tid 100408 td 0xcb8e3b40 sched_switch(cb8e3b40,0,104,191,a2f9e48e,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(cb8e3b40,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c80d83b8,7cf7,0,10d,f6960c0c,...) at vm_waitpfault+0x75 vm_fault(c7b00e80,2fff7000,2,0,2fff7000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,cb91a2a8,...) at trap_pfault+0x10d trap(f6960d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5373 tid 100219 td 0xc804c240 sched_switch(c804c240,0,104,191,a2f991c0,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c804c240,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(caf74000,a2cb,0,10d,f6687c0c,...) at vm_waitpfault+0x75 vm_fault(c783a1d0,325cb000,2,0,325cb000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c804ed48,...) at trap_pfault+0x10d trap(f6687d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5372 tid 100129 td 0xc78e7900 sched_switch(c78e7900,0,104,191,a2f8e460,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c78e7900,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c834d440,bb78,0,10d,f6521c0c,...) at vm_waitpfault+0x75 vm_fault(c77fdae0,33e78000,2,0,33e78000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c78357f8,...) at trap_pfault+0x10d trap(f6521d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5371 tid 100300 td 0xc8c9c900 sched_switch(c8c9c900,0,104,191,a2f99d36,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c8c9c900,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c85afe58,b33d,0,10d,f67aac0c,...) at vm_waitpfault+0x75 vm_fault(c7e233a0,3363d000,2,0,3363d000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c8c997f8,...) at trap_pfault+0x10d trap(f67aad38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5370 tid 100157 td 0xc804c000 sched_switch(c804c000,0,104,191,a2f98076,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c804c000,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(cb413c38,915d,0,10d,f65c5c0c,...) at vm_waitpfault+0x75 vm_fault(c7e24d98,3145d000,2,0,3145d000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c8048000,...) at trap_pfault+0x10d trap(f65c5d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5369 tid 100079 td 0xc7836d80 sched_switch(c7836d80,0,104,191,a2f9fa5e,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7836d80,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(cabbe4c8,637d,0,10d,f6439c0c,...) at vm_waitpfault+0x75 vm_fault(c8164cb0,2e67d000,2,0,2e67d000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c7834d48,...) at trap_pfault+0x10d trap(f6439d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5368 tid 100172 td 0xc8049d80 sched_switch(c8049d80,0,104,191,a2f90add,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c8049d80,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c85712a8,ac6b,0,10d,f65f2c0c,...) at vm_waitpfault+0x75 vm_fault(c7e23000,32f6b000,2,0,32f6b000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c8042aa0,...) at trap_pfault+0x10d trap(f65f2d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5367 tid 100163 td 0xc7bde240 sched_switch(c7bde240,0,104,191,a2f93b15,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7bde240,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c8161330,8885,0,10d,f65d7c0c,...) at vm_waitpfault+0x75 vm_fault(c91d4828,30b85000,2,0,30b85000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c804dd48,...) at trap_pfault+0x10d trap(f65d7d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5366 tid 100353 td 0xc89f8480 sched_switch(c89f8480,0,104,191,a2f97577,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c89f8480,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(cb146990,9338,0,10d,f687cc0c,...) at vm_waitpfault+0x75 vm_fault(cba110e8,31638000,2,0,31638000,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,cb8aaaa0,...) at trap_pfault+0x10d trap(f687cd38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2818d553, esp = 0xbfbfe5f0, ebp = 0xbfbfe628 --- Tracing command swap pid 5361 tid 100119 td 0xc78eb6c0 sched_switch(c78eb6c0,0,104,191,dbcee4de,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c78eb6c0,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7bdcd48,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7bdcd48,c7bdcdd0,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c78eb6c0,14f6,f64f3c74,0,0,...) at kern_wait+0xb76 wait4(c78eb6c0,f64f3cf8,10,c0c9ceb5,c0d80544,...) at wait4+0x3b syscall(f64f3d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810106b, esp = 0xbfbfe6ac, ebp = 0xbfbfe6c8 --- Tracing command swap pid 5358 tid 100257 td 0xc8150b40 sched_switch(c8150b40,0,104,191,bd0887ff,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c8150b40,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c814d550,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c814d550,c814d5d8,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c8150b40,14f1,f670bc74,0,0,...) at kern_wait+0xb76 wait4(c8150b40,f670bcf8,10,c8150b40,c0d80544,...) at wait4+0x3b syscall(f670bd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810106b, esp = 0xbfbfe6dc, ebp = 0xbfbfe6f8 --- Tracing command fts pid 5352 tid 100270 td 0xc89f8240 sched_switch(c89f8240,0,104,191,c100b11b,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c89f8240,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8157aa0,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c8157aa0,c8157b28,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c89f8240,1518,f6736c74,0,0,...) at kern_wait+0xb76 wait4(c89f8240,f6736cf8,10,c89f8240,c0d80544,...) at wait4+0x3b syscall(f6736d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810006b, esp = 0xbfbfe6ec, ebp = 0xbfbfe708 --- Tracing command rw pid 5351 tid 100306 td 0xc80e4b40 sched_switch(c80e4b40,0,104,191,bd232c64,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c80e4b40,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c815ed48,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c815ed48,c815edd0,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c80e4b40,1512,f67c0c74,0,0,...) at kern_wait+0xb76 wait4(c80e4b40,f67c0cf8,10,c80e4b40,c0d80544,...) at wait4+0x3b syscall(f67c0d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810106b, esp = 0xbfbfe6fc, ebp = 0xbfbfe718 --- Tracing command lockf2 pid 5348 tid 100215 td 0xc804c6c0 sched_switch(c804c6c0,0,104,191,bcb6803f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c804c6c0,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c809a2a8,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c809a2a8,c809a330,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c804c6c0,1536,f6679c74,0,0,...) at kern_wait+0xb76 wait4(c804c6c0,f6679cf8,10,c804c6c0,c0d80544,...) at wait4+0x3b syscall(f6679d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810006b, esp = 0xbfbfe6cc, ebp = 0xbfbfe6e8 --- Tracing command run pid 3019 tid 100208 td 0xc804cb40 sched_switch(c804cb40,0,104,191,dd60708d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c804cb40,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c809a7f8,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c809a7f8,c809a880,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c804cb40,14e4,f6662c74,0,0,...) at kern_wait+0xb76 wait4(c804cb40,f6662cf8,10,c804cb40,c0d80544,...) at wait4+0x3b syscall(f6662d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810006b, esp = 0xbfbfe0cc, ebp = 0xbfbfe0e8 --- Tracing command run pid 3018 tid 100196 td 0xc809d900 sched_switch(c809d900,0,104,191,fa2ea7bb,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c809d900,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c809b7f8,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c809b7f8,c809b880,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c809d900,bcb,f663ac74,0,0,...) at kern_wait+0xb76 wait4(c809d900,f663acf8,10,c809d900,c0d80544,...) at wait4+0x3b syscall(f663ad38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2810006b, esp = 0xbfbfe57c, ebp = 0xbfbfe598 --- Tracing command run pid 3017 tid 100181 td 0xc809e240 sched_switch(c809e240,0,104,191,a2f9b580,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c809e240,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c7ca26e8,0,0,10d,f660dc0c,...) at vm_waitpfault+0x75 vm_fault(c717c9f8,2807e000,1,0,2807e5a8,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c809c2a8,...) at trap_pfault+0x10d trap(f660dd38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2805056d, esp = 0xbfbfe56c, ebp = 0xbfbfe5a4 --- Tracing command sh pid 3011 tid 100205 td 0xc80abb40 sched_switch(c80abb40,0,104,191,f279109a,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c80abb40,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c80a62a8,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c80a62a8,c80a6330,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c80abb40,ffffffff,f6658c74,2,0,...) at kern_wait+0xb76 wait4(c80abb40,f6658cf8,10,c0c9d064,c0d80544,...) at wait4+0x3b syscall(f6658d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe58c, ebp = 0xbfbfe5a8 --- Tracing command md5 pid 3003 tid 100182 td 0xc809e000 sched_switch(c809e000,0,104,191,5e73cd90,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c809e000,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c8b94800,4c,c0c69e77,0,0,...) at sleepq_wait+0x63 _sleep(c8b94800,c8b94820,24c,c0c69e77,0,...) at _sleep+0x36b md_kthread(c8b94800,f6610d38,c0c918ca,343,c809c000,...) at md_kthread+0x125 fork_exit(c06b4610,c8b94800,f6610d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf6610d70, ebp = 0 --- Tracing command sh pid 2994 tid 100297 td 0xc8c9d000 sched_switch(c8c9d000,0,104,191,e168948e,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c8c9d000,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8c9a000,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c8c9a000,c8c9a088,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c8c9d000,ffffffff,f679ec74,2,0,...) at kern_wait+0xb76 wait4(c8c9d000,f679ecf8,10,c0c9d064,c0d80544,...) at wait4+0x3b syscall(f679ed38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe95c, ebp = 0xbfbfe978 --- Tracing command top pid 1674 tid 100292 td 0xc89f7b40 sched_switch(c89f7b40,0,104,191,a2fa0af7,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c89f7b40,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c8514b28,117,0,10d,f678ac0c,...) at vm_waitpfault+0x75 vm_fault(c8164910,28212000,1,0,282122c0,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,369e99,c81572a8,...) at trap_pfault+0x10d trap(f678ad38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x281e435c, esp = 0xbfbfe6c0, ebp = 0xbfbfe6e8 --- Tracing command sshd pid 1673 tid 100291 td 0xc8c9d480 Tracing command awk pid 1668 tid 100287 td 0xc814e000 Tracing command sh pid 1667 tid 100286 td 0xc814e240 sched_switch(c814e240,0,104,191,fcf2eee2,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c814e240,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c80fd7f8,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c80fd7f8,c80fd880,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c814e240,ffffffff,f6771c74,2,0,...) at kern_wait+0xb76 wait4(c814e240,f6771cf8,10,c0c9ceb5,c0d80544,...) at wait4+0x3b syscall(f6771d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe91c, ebp = 0xbfbfe938 --- Tracing command tail pid 1666 tid 100285 td 0xc814e480 sched_switch(c814e480,0,104,191,5dd531ee,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,58,...) at mi_switch+0x200 sleepq_switch(c814e480,0,c0c9a8a6,18b,58,...) at sleepq_switch+0x15f sleepq_catch_signals(3e9,c08c48a0,c814e480,0,100,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c891c700,58,c0c91514,100,0,...) at sleepq_timedwait_sig+0x1a _sleep(c891c700,c891c700,158,c0c91514,3e9,...) at _sleep+0x31e kern_kevent(c814e480,4,0,1,f676dc58,...) at kern_kevent+0x364 kevent(c814e480,f676dcf8,18,c0c35a7c,c0d82c34,...) at kevent+0x19b syscall(f676dd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (363, FreeBSD ELF32, kevent), eip = 0x2815fcab, esp = 0xbfbfeb5c, ebp = 0xbfbfec18 --- Tracing command sshd pid 1665 tid 100284 td 0xc814e6c0 Tracing command sh pid 1664 tid 100283 td 0xc80a9000 sched_switch(c80a9000,0,104,191,e32c4be3,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c80a9000,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c80fbaa0,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c80fbaa0,c80fbb28,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c80a9000,ffffffff,f6766c74,2,0,...) at kern_wait+0xb76 wait4(c80a9000,f6766cf8,10,c80a9000,c0d80544,...) at wait4+0x3b syscall(f6766d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfeb5c, ebp = 0xbfbfeb78 --- Tracing command sshd pid 1663 tid 100282 td 0xc89f7d80 Tracing command sshd pid 1659 tid 100278 td 0xc814ed80 Tracing command sshd pid 1657 tid 100276 td 0xc80a9240 Tracing command sshd pid 1656 tid 100275 td 0xc8150000 Tracing command sh pid 1383 tid 100142 td 0xc78a46c0 sched_switch(c78a46c0,0,104,191,c613ffaf,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c78a46c0,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7ed6550,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7ed6550,c7ed65d8,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c78a46c0,ffffffff,f6598c74,2,0,...) at kern_wait+0xb76 wait4(c78a46c0,f6598cf8,10,c0c9d064,c0d80544,...) at wait4+0x3b syscall(f6598d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe6ac, ebp = 0xbfbfe6c8 --- Tracing command bash pid 1378 tid 100102 td 0xc7ae5240 sched_switch(c7ae5240,0,104,191,f40c0c57,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7ae5240,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7ae2550,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7ae2550,c7ae25d8,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c7ae5240,ffffffff,f64a4c74,6,0,...) at kern_wait+0xb76 wait4(c7ae5240,f64a4cf8,10,c0c9cf74,c0d80544,...) at wait4+0x3b syscall(f64a4d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x282be06b, esp = 0xbfbfe7ac, ebp = 0xbfbfe7c8 --- Tracing command csh pid 1374 tid 100152 td 0xc78a3000 sched_switch(c78a3000,0,104,191,e4f648a4,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,68,...) at mi_switch+0x200 sleepq_switch(c78a3000,0,c0c9a8a6,18b,68,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7ed4af8,68,c0c4a455,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7ed4af8,c7ed4b28,168,c0c4a455,0,...) at _sleep+0x354 kern_sigsuspend(c78a3000,0,0,0,0,...) at kern_sigsuspend+0xae sigsuspend(c78a3000,f65b6cf8,4,c0c9cf74,c0d829cc,...) at sigsuspend+0x4d syscall(f65b6d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (4, FreeBSD ELF32, write), eip = 0x2817af0b, esp = 0xbfbfe5ec, ebp = 0xbfbfe658 --- Tracing command su pid 1373 tid 100096 td 0xc7805900 sched_switch(c7805900,0,104,191,8123027e,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7805900,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7ae3550,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7ae3550,c7ae35d8,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c7805900,55e,f6492c74,2,0,...) at kern_wait+0xb76 wait4(c7805900,f6492cf8,10,c7805900,c0d80544,...) at wait4+0x3b syscall(f6492d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2811f06b, esp = 0xbfbfe60c, ebp = 0xbfbfe628 --- Tracing command bash pid 1368 tid 100153 td 0xc7839d80 sched_switch(c7839d80,0,104,191,efe162,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7839d80,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7ed47f8,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7ed47f8,c7ed4880,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c7839d80,ffffffff,f65b9c74,6,0,...) at kern_wait+0xb76 wait4(c7839d80,f65b9cf8,10,c0c9cf74,c0d80544,...) at wait4+0x3b syscall(f65b9d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x282be06b, esp = 0xbfbfe9ac, ebp = 0xbfbfe9c8 --- Tracing command sshd pid 1367 tid 100140 td 0xc7801d80 sched_switch(c7801d80,0,104,191,a2fa1ebb,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7801d80,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c7ffe770,6,0,10d,f6557c0c,...) at vm_waitpfault+0x75 vm_fault(c78ec658,283e3000,1,0,283e31f8,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c77ff2a8,...) at trap_pfault+0x10d trap(f6557d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x283ce36f, esp = 0xbfbf9ddc, ebp = 0xbfbfde78 --- Tracing command sshd pid 1365 tid 100125 td 0xc7bdf240 Tracing command getty pid 1364 tid 100151 td 0xc78a3240 Tracing command getty pid 1363 tid 100150 td 0xc78a3480 Tracing command getty pid 1362 tid 100149 td 0xc78a36c0 Tracing command getty pid 1361 tid 100148 td 0xc78a3900 Tracing command getty pid 1360 tid 100147 td 0xc78a3b40 Tracing command getty pid 1359 tid 100146 td 0xc78a3d80 Tracing command getty pid 1358 tid 100145 td 0xc78a4000 Tracing command getty pid 1357 tid 100144 td 0xc78a4240 Tracing command getty pid 1356 tid 100143 td 0xc78a4480 Tracing command inetd pid 1325 tid 100111 td 0xc78ea240 Tracing command watchdogd pid 1289 tid 100117 td 0xc78ebb40 sched_switch(c78ebb40,0,104,191,8641c25f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c78ebb40,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7bdd2a8,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7bdd2a8,c7bdd330,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c78ebb40,1579,f64ebc74,0,0,...) at kern_wait+0xb76 wait4(c78ebb40,f64ebcf8,10,c78ebb40,c0d80544,...) at wait4+0x3b syscall(f64ebd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2811806b, esp = 0xbfbfec6c, ebp = 0xbfbfed18 --- Tracing command cron pid 1266 tid 100118 td 0xc78eb900 sched_switch(c78eb900,0,104,191,a2f9ef0b,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c78eb900,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c947fe58,1,0,10d,f64efc0c,...) at vm_waitpfault+0x75 vm_fault(c7caabc8,8051000,2,0,8051cf8,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c7bdd000,...) at trap_pfault+0x10d trap(f64efd38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2811841e, esp = 0xbfbfebc0, ebp = 0xbfbfebf8 --- Tracing command sendmail pid 1259 tid 100115 td 0xc7ae4000 sched_switch(c7ae4000,0,104,191,a2fde29d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7ae4000,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c7c5e6e8,1c,0,10d,f64e34e8,...) at vm_waitpfault+0x75 vm_fault(c7caae80,bfbfc000,2,0,bfbfcc70,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,c7977edc,c7bdd7f8,...) at trap_pfault+0x10d trap(f64e3614) at trap+0x4a8 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0xc0bc20cc, esp = 0xf64e3654, ebp = 0xf64e3b70 --- slow_copyout(80c9e50,f64e3ba4,f64e3c04,0,6,...) at slow_copyout+0x4 postsig(e,64,c0c964b9,5ca,0,...) at postsig+0x3c3 kern_sigsuspend(c7ae4000,0,0,0,0,...) at kern_sigsuspend+0xf8 sigsuspend(c7ae4000,f64e3cf8,4,c0c9cf74,c0d829cc,...) at sigsuspend+0x4d syscall(f64e3d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (4, FreeBSD ELF32, write), eip = 0x28332f0b, esp = 0xbfbfcf9c, ebp = 0xbfbfcfc8 --- Tracing command sendmail pid 1255 tid 100084 td 0xc7836480 sched_switch(c7836480,0,104,191,a2fa6a36,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7836480,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c7be2880,81,0,10d,f644dc0c,...) at vm_waitpfault+0x75 vm_fault(c7bd7ae0,80c9000,1,0,80c9e50,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,0,c78342a8,...) at trap_pfault+0x10d trap(f644dd38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x80c9e50, esp = 0xbfbfc15c, ebp = 0xbfbfcfb8 --- Tracing command sshd pid 1247 tid 100121 td 0xc7bdfb40 Tracing command ntpd pid 1202 tid 100103 td 0xc7ae5000 sched_switch(c7ae5000,0,104,191,a2fa3805,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7ae5000,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c7e21908,5,0,10d,f64a7c0c,...) at vm_waitpfault+0x75 vm_fault(c7e23ae0,28367000,1,0,28367840,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,3,c7ae22a8,...) at trap_pfault+0x10d trap(f64a7d38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x282828a4, esp = 0xbfbfecf8, ebp = 0xbfbfedc8 --- Tracing command moused pid 1061 tid 100097 td 0xc78056c0 Tracing command rpc.lockd pid 1028 tid 100088 td 0xc74e7000 Tracing command rpc.statd pid 1021 tid 100108 td 0xc78ea900 Tracing command nfsd pid 1014 tid 100138 td 0xc78e7240 Tracing command nfsd pid 1013 tid 100095 td 0xc7805b40 Tracing command mountd pid 1004 tid 100120 td 0xc78eb480 Tracing command rpcbind pid 911 tid 100124 td 0xc7bdf480 Tracing command syslogd pid 878 tid 100126 td 0xc7bdf000 sched_switch(c7bdf000,0,104,191,a2fa14ef,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,a0,...) at mi_switch+0x200 sleepq_switch(c7bdf000,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,a0,c0cc20e0,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,2a0,c0cc20e0,0,...) at _sleep+0x36b vm_waitpfault(c7be2440,d,0,10d,f650fc0c,...) at vm_waitpfault+0x75 vm_fault(c7b001d0,281b4000,1,0,281b4570,...) at vm_fault+0x589 trap_pfault(5,0,c0cd1064,2f0,c7ae3aa0,...) at trap_pfault+0x10d trap(f650fd38) at trap+0x2d0 calltrap() at calltrap+0x6 --- trap 0xc, eip = 0x2816c319, esp = 0xbfbfdcdc, ebp = 0xbfbfdd18 --- Tracing command devd pid 696 tid 100080 td 0xc7836b40 Tracing command flowcleaner pid 20 tid 100074 td 0xc74e76c0 sched_switch(c74e76c0,0,104,191,7957fd9f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c74e76c0,0,c0c9a8a6,26e,c74e76c0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f5e888,0,f4239cc4,1,0,...) at sleepq_timedwait+0x6b _cv_timedwait(c0f5e888,c0f5e890,2710,3f0,0,...) at _cv_timedwait+0x250 flowtable_cleaner(0,f4239d38,c0c918ca,343,c77832a8,...) at flowtable_cleaner+0x1bf fork_exit(c09343c0,0,f4239d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4239d70, ebp = 0 --- Tracing command softdepflush pid 19 tid 100073 td 0xc74e7900 sched_switch(c74e7900,0,104,191,5dd0e26d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,44,...) at mi_switch+0x200 sleepq_switch(c74e7900,0,c0c9a8a6,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f69fa0,44,c0cbd678,0,0,...) at sleepq_timedwait+0x6b _sleep(c0f69fa0,c0f69f44,44,c0cbd678,3e8,...) at _sleep+0x339 softdep_flush(0,f4236d38,c0c918ca,343,c7783550,...) at softdep_flush+0x244 fork_exit(c0ac1c90,0,f4236d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4236d70, ebp = 0 --- Tracing command syncer pid 18 tid 100072 td 0xc74e7b40 sched_switch(c74e7b40,0,104,191,241e6cb1,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c74e7b40,0,c0c9a8a6,26e,c74e7b40,...) at sleepq_switch+0x15f sleepq_timedwait(c0f5e694,0,f4233c88,1,0,...) at sleepq_timedwait+0x6b _cv_timedwait(c0f5e694,c0f5e680,3e8,6ce,4e20,...) at _cv_timedwait+0x250 sched_sync(0,f4233d38,c0c918ca,343,c77837f8,...) at sched_sync+0x502 fork_exit(c091ee80,0,f4233d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4233d70, ebp = 0 --- Tracing command vnlru pid 17 tid 100071 td 0xc74e7d80 sched_switch(c74e7d80,0,104,191,5dd04ca4,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,50,...) at mi_switch+0x200 sleepq_switch(c74e7d80,0,c0c9a8a6,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c7783aa0,50,c0ca48a8,0,0,...) at sleepq_timedwait+0x6b _sleep(c7783aa0,c0f5e654,250,c0ca48a8,3e8,...) at _sleep+0x339 vnlru_proc(0,f4230d38,c0c918ca,343,c7783aa0,...) at vnlru_proc+0xe7 fork_exit(c091fa50,0,f4230d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4230d70, ebp = 0 --- Tracing command bufdaemon pid 16 tid 100070 td 0xc74e9000 sched_switch(c74e9000,0,104,191,58e8b472,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,44,...) at mi_switch+0x200 sleepq_switch(c74e9000,0,c0c9a8a6,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f5e3c8,44,c0ca1e12,0,0,...) at sleepq_timedwait+0x6b _sleep(c0f5e3c8,c0f5e3cc,44,c0ca1e12,3e8,...) at _sleep+0x339 buf_daemon(0,f422dd38,c0c918ca,343,c7783d48,...) at buf_daemon+0x138 fork_exit(c0906fb0,0,f422dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf422dd70, ebp = 0 --- Tracing command pagezero pid 15 tid 100069 td 0xc74e9240 sched_switch(c74e9240,0,104,191,ac14f2d8,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c74e9240,0,c0c9a8a6,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f6ad98,0,c0cc34d0,0,0,...) at sleepq_timedwait+0x6b _sleep(c0f6ad98,c0f6a880,0,c0cc34d0,493e0,...) at _sleep+0x339 vm_pagezero(0,f422ad38,c0c918ca,343,c71782a8,...) at vm_pagezero+0xdc fork_exit(c0b02a60,0,f422ad38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf422ad70, ebp = 0 --- Tracing command vmdaemon pid 9 tid 100068 td 0xc74e9480 sched_switch(c74e9480,0,104,191,24e325db,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,68,...) at mi_switch+0x200 sleepq_switch(c74e9480,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a9c4,68,c0ca1e12,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a9c4,c0f6a9c8,68,c0ca1e12,0,...) at _sleep+0x36b vm_daemon(0,f4227d38,c0c918ca,343,c7178550,...) at vm_daemon+0x59 fork_exit(c0afb930,0,f4227d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4227d70, ebp = 0 --- Tracing command pagedaemon pid 8 tid 100067 td 0xc74e96c0 sched_switch(c74e96c0,0,104,191,6e277f34,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,50,...) at mi_switch+0x200 sleepq_switch(c74e96c0,0,c0c9a8a6,26e,ca6b9b78,...) at sleepq_switch+0x15f sleepq_timedwait(ca6b9b78,50,c0c8f042,4,0,...) at sleepq_timedwait+0x6b __lockmgr_args(ca6b9b78,81100,ca6b9be0,0,0,...) at __lockmgr_args+0xa81 ffs_lock(f4224be4,c08cdf3b,c0ca38e1,81100,ca6b9b20,...) at ffs_lock+0xa1 VOP_LOCK1_APV(c0da2260,f4224be4,c087b6d3,c0dbcc20,ca6b9b20,...) at VOP_LOCK1_APV+0xb5 _vn_lock(ca6b9b20,81100,c0ca38d8,825,4,...) at _vn_lock+0x78 vget(ca6b9b20,81000,c74e96c0,3bc,1f4,...) at vget+0xbb vm_pageout(0,f4224d38,c0c918ca,343,c71787f8,...) at vm_pageout+0xc5f fork_exit(c0afc7e0,0,f4224d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4224d70, ebp = 0 --- Tracing command fdc0 pid 7 tid 100064 td 0xc74e9d80 sched_switch(c74e9d80,0,104,191,5dcffe19,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c74e9d80,0,c0c9a8a6,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c73c063c,4c,c0c8be46,0,0,...) at sleepq_timedwait+0x6b _sleep(c73c063c,c73c06f0,4c,c0c8be46,3e8,...) at _sleep+0x339 fdc_thread(c73c0600,f41bbd38,c0c918ca,343,c7178aa0,...) at fdc_thread+0x27d fork_exit(c0b7ffe0,c73c0600,f41bbd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf41bbd70, ebp = 0 --- Tracing command fw0_probe pid 6 tid 100062 td 0xc73ba480 sched_switch(c73ba480,0,104,191,7c272caa,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c73ba480,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c73f4000,5c,c0c8be46,100,0,...) at sleepq_wait_sig+0x17 _sleep(c73f4000,c73f8488,15c,c0c8be46,0,...) at _sleep+0x354 fw_bus_probe_thread(c73f4000,f41abd38,c0c918ca,343,c7178d48,...) at fw_bus_probe_thread+0xa08 fork_exit(c065a0c0,c73f4000,f41abd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf41abd70, ebp = 0 --- Tracing command usb pid 14 tid 100058 td 0xc73bad80 sched_switch(c73bad80,0,104,191,57d9a330,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73bad80,0,c0c9a8a6,24b,c73bad80,...) at sleepq_switch+0x15f sleepq_wait(c73d4d0c,0,f4194cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73d4d0c,c73d4dac,c0c84ede,6c,c73d4d14,...) at _cv_wait+0x240 usb_process(c73d4d04,f4194d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73d4d04,f4194d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4194d70, ebp = 0 --- Tracing command usb pid 14 tid 100057 td 0xc73cc000 sched_switch(c73cc000,0,104,191,6b272558,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73cc000,0,c0c9a8a6,24b,c73cc000,...) at sleepq_switch+0x15f sleepq_wait(c73d4cdc,0,f4191cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73d4cdc,c73d4dac,c0c84ede,6c,c73d4ce4,...) at _cv_wait+0x240 usb_process(c73d4cd4,f4191d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73d4cd4,f4191d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4191d70, ebp = 0 --- Tracing command usb pid 14 tid 100056 td 0xc73cc240 sched_switch(c73cc240,0,104,191,5773a798,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73cc240,0,c0c9a8a6,24b,c73cc240,...) at sleepq_switch+0x15f sleepq_wait(c73d4cac,0,f418ecbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73d4cac,c73d4dac,c0c84ede,6c,c73d4cb4,...) at _cv_wait+0x240 usb_process(c73d4ca4,f418ed38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73d4ca4,f418ed38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf418ed70, ebp = 0 --- Tracing command usb pid 14 tid 100055 td 0xc73cc480 sched_switch(c73cc480,0,104,191,57739680,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73cc480,0,c0c9a8a6,24b,c73cc480,...) at sleepq_switch+0x15f sleepq_wait(c73d4c7c,0,f418bcbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73d4c7c,c73d4dac,c0c84ede,6c,c73d4c84,...) at _cv_wait+0x240 usb_process(c73d4c74,f418bd38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73d4c74,f418bd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf418bd70, ebp = 0 --- Tracing command usb pid 14 tid 100053 td 0xc73cc900 sched_switch(c73cc900,0,104,191,577382ad,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73cc900,0,c0c9a8a6,24b,c73cc900,...) at sleepq_switch+0x15f sleepq_wait(c73c6b5c,0,f4183cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c6b5c,c73c6bfc,c0c84ede,6c,c73c6b64,...) at _cv_wait+0x240 usb_process(c73c6b54,f4183d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73c6b54,f4183d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4183d70, ebp = 0 --- Tracing command usb pid 14 tid 100052 td 0xc73ccb40 sched_switch(c73ccb40,0,104,191,6351cb18,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73ccb40,0,c0c9a8a6,24b,c73ccb40,...) at sleepq_switch+0x15f sleepq_wait(c73c6b2c,0,f4180cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c6b2c,c73c6bfc,c0c84ede,6c,c73c6b34,...) at _cv_wait+0x240 usb_process(c73c6b24,f4180d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73c6b24,f4180d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4180d70, ebp = 0 --- Tracing command usb pid 14 tid 100051 td 0xc73ccd80 sched_switch(c73ccd80,0,104,191,57104e31,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73ccd80,0,c0c9a8a6,24b,c73ccd80,...) at sleepq_switch+0x15f sleepq_wait(c73c6afc,0,f417dcbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c6afc,c73c6bfc,c0c84ede,6c,c73c6b04,...) at _cv_wait+0x240 usb_process(c73c6af4,f417dd38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73c6af4,f417dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf417dd70, ebp = 0 --- Tracing command usb pid 14 tid 100050 td 0xc736c6c0 sched_switch(c736c6c0,0,104,191,57103c45,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736c6c0,0,c0c9a8a6,24b,c736c6c0,...) at sleepq_switch+0x15f sleepq_wait(c73c6acc,0,f417acbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c6acc,c73c6bfc,c0c84ede,6c,c73c6ad4,...) at _cv_wait+0x240 usb_process(c73c6ac4,f417ad38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73c6ac4,f417ad38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf417ad70, ebp = 0 --- Tracing command usb pid 14 tid 100049 td 0xc736c900 sched_switch(c736c900,0,104,191,571028cc,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736c900,0,c0c9a8a6,24b,c736c900,...) at sleepq_switch+0x15f sleepq_wait(c73c2b5c,0,f4176cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c2b5c,c73c2bfc,c0c84ede,6c,c73c2b64,...) at _cv_wait+0x240 usb_process(c73c2b54,f4176d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73c2b54,f4176d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4176d70, ebp = 0 --- Tracing command usb pid 14 tid 100048 td 0xc736cb40 sched_switch(c736cb40,0,104,191,63517478,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736cb40,0,c0c9a8a6,24b,c736cb40,...) at sleepq_switch+0x15f sleepq_wait(c73c2b2c,0,f4173cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c2b2c,c73c2bfc,c0c84ede,6c,c73c2b34,...) at _cv_wait+0x240 usb_process(c73c2b24,f4173d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73c2b24,f4173d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4173d70, ebp = 0 --- Tracing command usb pid 14 tid 100047 td 0xc736cd80 sched_switch(c736cd80,0,104,191,56aced15,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736cd80,0,c0c9a8a6,24b,c736cd80,...) at sleepq_switch+0x15f sleepq_wait(c73c2afc,0,f4170cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c2afc,c73c2bfc,c0c84ede,6c,c73c2b04,...) at _cv_wait+0x240 usb_process(c73c2af4,f4170d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73c2af4,f4170d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4170d70, ebp = 0 --- Tracing command usb pid 14 tid 100046 td 0xc73b9000 sched_switch(c73b9000,0,104,191,56acdac3,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9000,0,c0c9a8a6,24b,c73b9000,...) at sleepq_switch+0x15f sleepq_wait(c73c2acc,0,f416dcbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c2acc,c73c2bfc,c0c84ede,6c,c73c2ad4,...) at _cv_wait+0x240 usb_process(c73c2ac4,f416dd38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73c2ac4,f416dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf416dd70, ebp = 0 --- Tracing command usb pid 14 tid 100045 td 0xc73b9240 sched_switch(c73b9240,0,104,191,56acc85a,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9240,0,c0c9a8a6,24b,c73b9240,...) at sleepq_switch+0x15f sleepq_wait(c73bbb5c,0,f4169cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73bbb5c,c73bbbfc,c0c84ede,6c,c73bbb64,...) at _cv_wait+0x240 usb_process(c73bbb54,f4169d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73bbb54,f4169d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4169d70, ebp = 0 --- Tracing command usb pid 14 tid 100044 td 0xc73b9480 sched_switch(c73b9480,0,104,191,6291ea07,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9480,0,c0c9a8a6,24b,c73b9480,...) at sleepq_switch+0x15f sleepq_wait(c73bbb2c,0,f4166cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73bbb2c,c73bbbfc,c0c84ede,6c,c73bbb34,...) at _cv_wait+0x240 usb_process(c73bbb24,f4166d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73bbb24,f4166d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4166d70, ebp = 0 --- Tracing command usb pid 14 tid 100043 td 0xc73b96c0 sched_switch(c73b96c0,0,104,191,5648a1e1,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b96c0,0,c0c9a8a6,24b,c73b96c0,...) at sleepq_switch+0x15f sleepq_wait(c73bbafc,0,f4163cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73bbafc,c73bbbfc,c0c84ede,6c,c73bbb04,...) at _cv_wait+0x240 usb_process(c73bbaf4,f4163d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73bbaf4,f4163d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4163d70, ebp = 0 --- Tracing command usb pid 14 tid 100042 td 0xc73b9900 sched_switch(c73b9900,0,104,191,564890bc,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9900,0,c0c9a8a6,24b,c73b9900,...) at sleepq_switch+0x15f sleepq_wait(c73bbacc,0,f4160cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73bbacc,c73bbbfc,c0c84ede,6c,c73bbad4,...) at _cv_wait+0x240 usb_process(c73bbac4,f4160d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73bbac4,f4160d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4160d70, ebp = 0 --- Tracing command usb pid 14 tid 100040 td 0xc73b9d80 sched_switch(c73b9d80,0,104,191,56487ae7,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9d80,0,c0c9a8a6,24b,c73b9d80,...) at sleepq_switch+0x15f sleepq_wait(c73b6b5c,0,f4159cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73b6b5c,c73b6bfc,c0c84ede,6c,c73b6b64,...) at _cv_wait+0x240 usb_process(c73b6b54,f4159d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73b6b54,f4159d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4159d70, ebp = 0 --- Tracing command usb pid 14 tid 100039 td 0xc73ba000 sched_switch(c73ba000,0,104,191,629193ef,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73ba000,0,c0c9a8a6,24b,c73ba000,...) at sleepq_switch+0x15f sleepq_wait(c73b6b2c,0,f4156cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73b6b2c,c73b6bfc,c0c84ede,6c,c73b6b34,...) at _cv_wait+0x240 usb_process(c73b6b24,f4156d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73b6b24,f4156d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4156d70, ebp = 0 --- Tracing command usb pid 14 tid 100038 td 0xc7350d80 sched_switch(c7350d80,0,104,191,55e3eb76,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7350d80,0,c0c9a8a6,24b,c7350d80,...) at sleepq_switch+0x15f sleepq_wait(c73b6afc,0,f4153cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73b6afc,c73b6bfc,c0c84ede,6c,c73b6b04,...) at _cv_wait+0x240 usb_process(c73b6af4,f4153d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73b6af4,f4153d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4153d70, ebp = 0 --- Tracing command usb pid 14 tid 100037 td 0xc736a000 sched_switch(c736a000,0,104,191,55e3d920,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736a000,0,c0c9a8a6,24b,c736a000,...) at sleepq_switch+0x15f sleepq_wait(c73b6acc,0,f4150cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73b6acc,c73b6bfc,c0c84ede,6c,c73b6ad4,...) at _cv_wait+0x240 usb_process(c73b6ac4,f4150d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73b6ac4,f4150d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4150d70, ebp = 0 --- Tracing command usb pid 14 tid 100035 td 0xc736a480 sched_switch(c736a480,0,104,191,55e3c359,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736a480,0,c0c9a8a6,24b,c736a480,...) at sleepq_switch+0x15f sleepq_wait(c73a7b5c,0,f4149cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73a7b5c,c73a7bfc,c0c84ede,6c,c73a7b64,...) at _cv_wait+0x240 usb_process(c73a7b54,f4149d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73a7b54,f4149d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4149d70, ebp = 0 --- Tracing command usb pid 14 tid 100034 td 0xc736a6c0 sched_switch(c736a6c0,0,104,191,6291314b,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736a6c0,0,c0c9a8a6,24b,c736a6c0,...) at sleepq_switch+0x15f sleepq_wait(c73a7b2c,0,f4146cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73a7b2c,c73a7bfc,c0c84ede,6c,c73a7b34,...) at _cv_wait+0x240 usb_process(c73a7b24,f4146d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73a7b24,f4146d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4146d70, ebp = 0 --- Tracing command usb pid 14 tid 100033 td 0xc736a900 sched_switch(c736a900,0,104,191,55793bc8,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736a900,0,c0c9a8a6,24b,c736a900,...) at sleepq_switch+0x15f sleepq_wait(c73a7afc,0,f4143cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73a7afc,c73a7bfc,c0c84ede,6c,c73a7b04,...) at _cv_wait+0x240 usb_process(c73a7af4,f4143d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73a7af4,f4143d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4143d70, ebp = 0 --- Tracing command usb pid 14 tid 100032 td 0xc736ab40 sched_switch(c736ab40,0,104,191,557928ab,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736ab40,0,c0c9a8a6,24b,c736ab40,...) at sleepq_switch+0x15f sleepq_wait(c73a7acc,0,f4140cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73a7acc,c73a7bfc,c0c84ede,6c,c73a7ad4,...) at _cv_wait+0x240 usb_process(c73a7ac4,f4140d38,c0c918ca,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdea0,c73a7ac4,f4140d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4140d70, ebp = 0 --- Tracing command xpt_thrd pid 5 tid 100024 td 0xc71bfd80 sched_switch(c71bfd80,0,104,191,55790fa4,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c71bfd80,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0dbdfd4,4c,c0c30bba,0,0,...) at sleepq_wait+0x63 _sleep(c0dbdfd4,c0dbdfec,4c,c0c30bba,0,...) at _sleep+0x36b xpt_scanner_thread(0,c6e44d38,c0c918ca,343,c73462a8,...) at xpt_scanner_thread+0x4a fork_exit(c0484470,0,c6e44d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e44d70, ebp = 0 --- Tracing command yarrow pid 13 tid 100017 td 0xc717b240 sched_switch(c717b240,0,104,191,68783d62,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c717b240,0,c0c9a8a6,26e,2,...) at sleepq_switch+0x15f sleepq_timedwait(c0df1c24,0,c0c8be46,2,0,...) at sleepq_timedwait+0x6b _sleep(c0df1c24,0,0,c0c8be46,64,...) at _sleep+0x339 pause(c0c8be46,64,c0c78e9d,111,0,...) at pause+0x47 random_kthread(0,c6e2fd38,c0c918ca,343,c7346550,...) at random_kthread+0x1ef fork_exit(c07368c0,0,c6e2fd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e2fd70, ebp = 0 --- Tracing command g_down pid 4 tid 100015 td 0xc717b6c0 sched_switch(c717b6c0,0,104,191,5e731cfb,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c717b6c0,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0def9e4,4c,c0c8be46,0,0,...) at sleepq_wait+0x63 _sleep(c0def9e4,c0def948,24c,c0c8be46,0,...) at _sleep+0x36b g_io_schedule_down(c717b6c0,0,c0c8d50e,74,0,...) at g_io_schedule_down+0x56 g_down_procbody(0,c6e29d38,c0c918ca,343,c7177000,...) at g_down_procbody+0x8d fork_exit(c0827e20,0,c6e29d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e29d70, ebp = 0 --- Tracing command g_up pid 3 tid 100014 td 0xc717b900 sched_switch(c717b900,0,104,191,5e7440f2,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c717b900,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0def9e0,4c,c0c8be46,0,0,...) at sleepq_wait+0x63 _sleep(c0def9e0,c0def968,24c,c0c8be46,0,...) at _sleep+0x36b g_io_schedule_up(c717b900,0,c0c8d50e,5d,0,...) at g_io_schedule_up+0x11e g_up_procbody(0,c6e26d38,c0c918ca,343,c71772a8,...) at g_up_procbody+0x8d fork_exit(c0827eb0,0,c6e26d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e26d70, ebp = 0 --- Tracing command g_event pid 2 tid 100013 td 0xc717bb40 sched_switch(c717bb40,0,104,191,68789093,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c717bb40,0,c0c9a8a6,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0def9d8,4c,c0c8be46,0,0,...) at sleepq_timedwait+0x6b _sleep(c0def9d8,0,4c,c0c8be46,64,...) at _sleep+0x339 g_event_procbody(0,c6e23d38,c0c918ca,343,c7177550,...) at g_event_procbody+0xcb fork_exit(c0827f40,0,c6e23d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e23d70, ebp = 0 --- Tracing command intr pid 12 tid 100066 td 0xc74e9900 fork_trampoline() at fork_trampoline Tracing command intr pid 12 tid 100065 td 0xc74e9b40 sched_switch(c74e9b40,0,109,191,55759d23,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c7175070,...) at mi_switch+0x200 ithread_loop(c74e0390,f41bed38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c74e0390,f41bed38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf41bed70, ebp = 0 --- Tracing command intr pid 12 tid 100063 td 0xc73ba240 sched_switch(c73ba240,0,109,191,f701365a,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c74db0f0,...) at mi_switch+0x200 ithread_loop(c74e0840,f41aed38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c74e0840,f41aed38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf41aed70, ebp = 0 --- Tracing command intr pid 12 tid 100060 td 0xc73ba900 sched_switch(c73ba900,0,109,191,555c72f8,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71be0f0,...) at mi_switch+0x200 ithread_loop(c73ebbf0,f41a2d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c73ebbf0,f41a2d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf41a2d70, ebp = 0 --- Tracing command intr pid 12 tid 100059 td 0xc73bab40 sched_switch(c73bab40,0,109,191,62432252,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71be3f0,...) at mi_switch+0x200 ithread_loop(c73eb450,f419ad38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c73eb450,f419ad38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf419ad70, ebp = 0 --- Tracing command intr pid 12 tid 100054 td 0xc73cc6c0 fork_trampoline() at fork_trampoline Tracing command intr pid 12 tid 100041 td 0xc73b9b40 sched_switch(c73b9b40,0,109,191,7f8300de,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71be1f0,...) at mi_switch+0x200 ithread_loop(c739f690,f415dd38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c739f690,f415dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf415dd70, ebp = 0 --- Tracing command intr pid 12 tid 100036 td 0xc736a240 sched_switch(c736a240,0,109,191,7effe495,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71be270,...) at mi_switch+0x200 ithread_loop(c739f9f0,f414dd38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c739f9f0,f414dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf414dd70, ebp = 0 --- Tracing command intr pid 12 tid 100031 td 0xc736ad80 sched_switch(c736ad80,0,109,191,b0b6a206,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71be2f0,...) at mi_switch+0x200 ithread_loop(c73ad110,f413dd38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c73ad110,f413dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf413dd70, ebp = 0 --- Tracing command intr pid 12 tid 100030 td 0xc736c000 sched_switch(c736c000,0,109,191,eb98962f,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71bdef0,...) at mi_switch+0x200 ithread_loop(c739f500,c6f87d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c739f500,c6f87d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6f87d70, ebp = 0 --- Tracing command intr pid 12 tid 100029 td 0xc736c240 sched_switch(c736c240,0,109,191,6e7ae810,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c738c0f0,...) at mi_switch+0x200 ithread_loop(c73928d0,c6e81d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c73928d0,c6e81d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e81d70, ebp = 0 --- Tracing command intr pid 12 tid 100028 td 0xc736c480 sched_switch(c736c480,0,109,191,55763da4,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c7174b70,...) at mi_switch+0x200 ithread_loop(c7176600,c6e77d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c7176600,c6e77d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e77d70, ebp = 0 --- Tracing command intr pid 12 tid 100027 td 0xc71bf6c0 sched_switch(c71bf6c0,0,109,191,ef7285b5,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c73517f0,...) at mi_switch+0x200 ithread_loop(c7176460,c6e4dd38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c7176460,c6e4dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e4dd70, ebp = 0 --- Tracing command intr pid 12 tid 100025 td 0xc71bfb40 sched_switch(c71bfb40,0,109,191,72f55286,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c7351870,...) at mi_switch+0x200 ithread_loop(c71763b0,c6e47d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c71763b0,c6e47d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e47d70, ebp = 0 --- Tracing command intr pid 12 tid 100020 td 0xc73506c0 sched_switch(c73506c0,0,109,191,e916eb1f,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c7351a70,...) at mi_switch+0x200 ithread_loop(c710ca20,c6e38d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c710ca20,c6e38d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e38d70, ebp = 0 --- Tracing command intr pid 12 tid 100019 td 0xc7350900 fork_trampoline() at fork_trampoline Tracing command intr pid 12 tid 100012 td 0xc717bd80 sched_switch(c717bd80,0,109,191,69eb7109,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71bdb70,...) at mi_switch+0x200 ithread_loop(c71761b0,c6e20d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c71761b0,c6e20d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e20d70, ebp = 0 --- Tracing command intr pid 12 tid 100011 td 0xc71bf000 sched_switch(c71bf000,0,109,191,79577c3c,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71bdbf0,...) at mi_switch+0x200 ithread_loop(c71761c0,c6e1dd38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c71761c0,c6e1dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e1dd70, ebp = 0 --- Tracing command intr pid 12 tid 100010 td 0xc71bf240 sched_switch(c71bf240,0,109,191,85014444,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71bdc70,...) at mi_switch+0x200 ithread_loop(c71761d0,c6e1ad38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c71761d0,c6e1ad38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e1ad70, ebp = 0 --- Tracing command intr pid 12 tid 100009 td 0xc71bf480 sched_switch(c71bf480,0,109,191,63416ff3,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71bdcf0,...) at mi_switch+0x200 ithread_loop(c71761e0,c6e17d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c71761e0,c6e17d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e17d70, ebp = 0 --- Tracing command intr pid 12 tid 100008 td 0xc7179000 sched_switch(c7179000,0,109,191,6e2765cc,...) at sched_switch+0x406 mi_switch(109,0,c0c91b49,52d,c71bdd70,...) at mi_switch+0x200 ithread_loop(c71761f0,c6e14d38,c0c918ca,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c08640d0,c71761f0,c6e14d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e14d70, ebp = 0 --- Tracing command intr pid 12 tid 100007 td 0xc7179240 fork_trampoline() at fork_trampoline Tracing command idle pid 11 tid 100006 td 0xc7179480 kdb_enter(c0c3f593,c0c5bdde,0,27ebdab,0,...) at kdb_enter+0x3a hardclock(0,c0b9b285,0,1f4,c73c0c00,...) at hardclock+0x11d lapic_handle_timer(c6e0dc2c) at lapic_handle_timer+0x9f Xtimerint() at Xtimerint+0x1f --- interrupt, eip = 0xc0b9b285, esp = 0xc6e0dc6c, ebp = 0xc6e0dc6c --- acpi_cpu_c1(0,c6e0dcd4,0,ffffffff,c6e0dcb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e0dcb4,c0bb29db,1,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(1,c6e0dcf8,c08ae0ae,1,c6e0dcd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(1,c6e0dcd4,c0c97fd3,a09,c7179480,...) at cpu_idle+0x1b sched_idletd(0,c6e0dd38,c0c918ca,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08ade70,0,c6e0dd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e0dd70, ebp = 0 --- Tracing command idle pid 11 tid 100005 td 0xc71796c0 cpustop_handler(2,c6e0ac20,c0bc4a46,c6e0abb0,c087af04,...) at cpustop_handler+0x32 ipi_nmi_handler(c6e0abb0,c087af04,c0df1e38,4,c7177aa0,...) at ipi_nmi_handler+0x2f trap(c6e0ac2c) at trap+0x36 calltrap() at calltrap+0x6 --- trap 0x13, eip = 0xc0b9b285, esp = 0xc6e0ac6c, ebp = 0xc6e0ac6c --- acpi_cpu_c1(28,c6e0acd4,1,ffffffff,c6e0acb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e0acb4,c0bb29db,0,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(0,c6e0acf8,c08ae0ae,0,c6e0acd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(0,c6e0acd4,c0c97fd3,a09,c71796c0,...) at cpu_idle+0x1b sched_idletd(0,c6e0ad38,c0c918ca,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08ade70,0,c6e0ad38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e0ad70, ebp = 0 --- Tracing command idle pid 11 tid 100004 td 0xc7179900 cpustop_handler(4,c6e07c20,c0bc4a46,c6e07bb0,c087af04,...) at cpustop_handler+0x32 ipi_nmi_handler(c6e07bb0,c087af04,c0df1e70,4,c7177aa0,...) at ipi_nmi_handler+0x2f trap(c6e07c2c) at trap+0x36 calltrap() at calltrap+0x6 --- trap 0x13, eip = 0xc0b9b285, esp = 0xc6e07c6c, ebp = 0xc6e07c6c --- acpi_cpu_c1(2,c6e07cd4,2,ffffffff,c6e07cb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e07cb4,c0bb29db,0,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(0,c6e07cf8,c08ae0ae,0,c6e07cd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(0,c6e07cd4,c0c97fd3,a09,c7179900,...) at cpu_idle+0x1b sched_idletd(0,c6e07d38,c0c918ca,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08ade70,0,c6e07d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e07d70, ebp = 0 --- Tracing command idle pid 11 tid 100003 td 0xc7179b40 cpustop_handler(8,c6e04c20,c0bc4a46,c6e04bb0,c087af04,...) at cpustop_handler+0x32 ipi_nmi_handler(c6e04bb0,c087af04,c0df1ea8,4,c7177aa0,...) at ipi_nmi_handler+0x2f trap(c6e04c2c) at trap+0x36 calltrap() at calltrap+0x6 --- trap 0x13, eip = 0xc0b9b285, esp = 0xc6e04c6c, ebp = 0xc6e04c6c --- acpi_cpu_c1(c0ba707f,c6e04cd4,3,ffffffff,c6e04cb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e04cb4,c0bb29db,0,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(0,c6e04cf8,c08ae0ae,0,c6e04cd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(0,c6e04cd4,c0c97fd3,a09,c7179b40,...) at cpu_idle+0x1b sched_idletd(0,c6e04d38,c0c918ca,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08ade70,0,c6e04d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e04d70, ebp = 0 --- Tracing command init pid 1 tid 100002 td 0xc7179d80 sched_switch(c7179d80,0,104,191,d4a2cf2d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7179d80,0,c0c9a8a6,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a8a6,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7177d48,5c,c0c9d085,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7177d48,c7177dd0,15c,c0c9d085,0,...) at _sleep+0x354 kern_wait(c7179d80,ffffffff,c6e00c74,0,0,...) at kern_wait+0xb76 wait4(c7179d80,c6e00cf8,10,c7179d80,c0d80544,...) at wait4+0x3b syscall(c6e00d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x8054dbf, esp = 0xbfbfe90c, ebp = 0xbfbfe928 --- Tracing command audit pid 10 tid 100001 td 0xc717b000 sched_switch(c717b000,0,104,191,5576a9a5,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c717b000,0,c0c9a8a6,24b,c717b000,...) at sleepq_switch+0x15f sleepq_wait(c0f698c0,0,c6dfdc9c,1,0,...) at sleepq_wait+0x63 _cv_wait(c0f698c0,c0f698a4,c0cba8fa,194,0,...) at _cv_wait+0x240 audit_worker(0,c6dfdd38,c0c918ca,343,c7178000,...) at audit_worker+0x84 fork_exit(c0a910a0,0,c6dfdd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6dfdd70, ebp = 0 --- Tracing command kernel pid 0 tid 100061 td 0xc73ba6c0 sched_switch(c73ba6c0,0,104,191,6877c5c0,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73ba6c0,0,c0c9a8a6,24b,c73ba6c0,...) at sleepq_switch+0x15f sleepq_wait(c73a1880,0,c0c9703f,c0c8be46,0,...) at sleepq_wait+0x63 msleep_spin(c73a1880,c73a1898,c0c8be46,0,c0c94b81,...) at msleep_spin+0x21d taskqueue_thread_loop(c73f849c,f41a8d38,c0c918ca,343,c0defac0,...) at taskqueue_thread_loop+0x94 fork_exit(c08c7290,c73f849c,f41a8d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf41a8d70, ebp = 0 --- Tracing command kernel pid 0 tid 100026 td 0xc71bf900 sched_switch(c71bf900,0,104,191,57ea0e31,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c71bf900,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c73440c0,0,c0c8be46,0,0,...) at sleepq_wait+0x63 _sleep(c73440c0,c73440d8,0,c0c8be46,0,...) at _sleep+0x36b taskqueue_thread_loop(c0df0350,c6e4ad38,c0c918ca,343,c0defac0,...) at taskqueue_thread_loop+0xba fork_exit(c08c7290,c0df0350,c6e4ad38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e4ad70, ebp = 0 --- Tracing command kernel pid 0 tid 100023 td 0xc7350000 sched_switch(c7350000,0,104,191,57e9fc2a,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7350000,0,c0c9a8a6,24b,c7350000,...) at sleepq_switch+0x15f sleepq_wait(c7344240,0,c0c9703f,c0c8be46,0,...) at sleepq_wait+0x63 msleep_spin(c7344240,c7344258,c0c8be46,0,c0c94b81,...) at msleep_spin+0x21d taskqueue_thread_loop(c0dc0e20,c6e41d38,c0c918ca,343,c0defac0,...) at taskqueue_thread_loop+0x94 fork_exit(c08c7290,c0dc0e20,c6e41d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e41d70, ebp = 0 --- Tracing command kernel pid 0 tid 100022 td 0xc7350240 sched_switch(c7350240,0,104,191,57e9ee07,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7350240,0,c0c9a8a6,24b,c7350240,...) at sleepq_switch+0x15f sleepq_wait(c7344240,0,c0c9703f,c0c8be46,0,...) at sleepq_wait+0x63 msleep_spin(c7344240,c7344258,c0c8be46,0,c0c94b81,...) at msleep_spin+0x21d taskqueue_thread_loop(c0dc0e20,c6e3ed38,c0c918ca,343,c0defac0,...) at taskqueue_thread_loop+0x94 fork_exit(c08c7290,c0dc0e20,c6e3ed38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e3ed70, ebp = 0 --- Tracing command kernel pid 0 tid 100021 td 0xc7350480 sched_switch(c7350480,0,104,191,57e9ddd3,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7350480,0,c0c9a8a6,24b,c7350480,...) at sleepq_switch+0x15f sleepq_wait(c7344240,0,c0c9703f,c0c8be46,0,...) at sleepq_wait+0x63 msleep_spin(c7344240,c7344258,c0c8be46,0,c0c94b81,...) at msleep_spin+0x21d taskqueue_thread_loop(c0dc0e20,c6e3bd38,c0c918ca,343,c0defac0,...) at taskqueue_thread_loop+0x94 fork_exit(c08c7290,c0dc0e20,c6e3bd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e3bd70, ebp = 0 --- Tracing command kernel pid 0 tid 100018 td 0xc7350b40 sched_switch(c7350b40,0,104,191,72f76029,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7350b40,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c7344540,0,c0c8be46,0,0,...) at sleepq_wait+0x63 _sleep(c7344540,c7344558,0,c0c8be46,0,...) at _sleep+0x36b taskqueue_thread_loop(c0e045c8,c6e32d38,c0c918ca,343,c0defac0,...) at taskqueue_thread_loop+0xba fork_exit(c08c7290,c0e045c8,c6e32d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e32d70, ebp = 0 --- Tracing command kernel pid 0 tid 100016 td 0xc717b480 sched_switch(c717b480,0,104,191,77a7067d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,0,...) at mi_switch+0x200 sleepq_switch(c717b480,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c715ed80,0,c0c8be46,0,0,...) at sleepq_wait+0x63 _sleep(c715ed80,c715ed98,0,c0c8be46,0,...) at _sleep+0x36b taskqueue_thread_loop(c0e03060,c6e2cd38,c0c918ca,343,c0defac0,...) at taskqueue_thread_loop+0xba fork_exit(c08c7290,c0e03060,c6e2cd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e2cd70, ebp = 0 --- Tracing command kernel pid 0 tid 100000 td 0xc0defd70 sched_switch(c0defd70,0,104,191,a2062df5,...) at sched_switch+0x406 mi_switch(104,0,c0c9a8a6,1d6,44,...) at mi_switch+0x200 sleepq_switch(c0defd70,0,c0c9a8a6,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a61c,44,c0cc20ee,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a61c,c0f6a880,244,c0cc20ee,0,...) at _sleep+0x36b vm_wait(cb693b28,0,c0cc07db,326,2710,...) at vm_wait+0xbe scheduler(0,141ec00,141ec00,141e000,1425000,...) at scheduler+0x69 mi_startup() at mi_startup+0x96 begin() at begin+0x2c db:0:allt> call doadump Physical memory: 3439 MB Dumping 166 MB: 151 135 119 103 87 71 55 39 23 7 Dump complete = 0xf db:0:doadump> reset git diff master diff --git a/sys/conf/files b/sys/conf/files index 1e9d80d..626e2fb 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -2012,6 +2012,7 @@ kern/kern_poll.c optional device_polling kern/kern_priv.c standard kern/kern_proc.c standard kern/kern_prot.c standard +kern/kern_rangelock.c standard kern/kern_resource.c standard kern/kern_rmlock.c standard kern/kern_rwlock.c standard @@ -2699,6 +2700,7 @@ vm/vm_page.c standard vm/vm_pageout.c standard vm/vm_pager.c standard vm/vm_phys.c standard +vm/vm_readwrite.c standard vm/vm_reserv.c standard vm/vm_unix.c standard vm/vm_zeroidle.c standard diff --git a/sys/dev/md/md.c b/sys/dev/md/md.c index 87e5ac9..01008bf 100644 --- a/sys/dev/md/md.c +++ b/sys/dev/md/md.c @@ -619,8 +619,12 @@ mdstart_swap(struct md_s *sc, struct bio *bp) for (i = bp->bio_offset / PAGE_SIZE; i <= lastp; i++) { len = ((i == lastp) ? lastend : PAGE_SIZE) - offs; - m = vm_page_grab(sc->object, i, - VM_ALLOC_NORMAL|VM_ALLOC_RETRY); + /* + * Write cleans pages of the buffer, give it a + * priority. + */ + m = vm_page_grab(sc->object, i, (bp->bio_cmd == BIO_WRITE ? + VM_ALLOC_SYSTEM : VM_ALLOC_NORMAL) | VM_ALLOC_RETRY); VM_OBJECT_UNLOCK(sc->object); sched_pin(); sf = sf_buf_alloc(m, SFB_CPUPRIVATE); diff --git a/sys/kern/kern_rangelock.c b/sys/kern/kern_rangelock.c new file mode 100644 index 0000000..6002ad3 --- /dev/null +++ b/sys/kern/kern_rangelock.c @@ -0,0 +1,166 @@ +/*- + * Copyright (c) 2009 Konstantin Belousov + * All rights reserved. + * + */ + +#include +__FBSDID("$FreeBSD$"); + +#include +#include +#include +#include +#include + +uma_zone_t rl_entry_zone; + +static void +rangelock_sys_init(void) +{ + + rl_entry_zone = uma_zcreate("rl_entry", sizeof(struct rl_q_entry), + NULL, NULL, NULL, NULL, UMA_ALIGN_PTR, 0); +} +SYSINIT(vfs, SI_SUB_VFS, SI_ORDER_ANY, rangelock_sys_init, NULL); + +void +rangelock_init(struct rangelock *lock) +{ + + TAILQ_INIT(&lock->rl_waiters); + lock->rl_currdep = NULL; +} + +void +rangelock_destroy(struct rangelock *lock) +{ + + KASSERT(TAILQ_EMPTY(&lock->rl_waiters), ("Dangling waiters")); +} + +static int +rangelock_incompatible(const struct rl_q_entry *e1, + const struct rl_q_entry *e2) +{ + + if ((e1->rl_q_flags & RL_LOCK_TYPE_MASK) == RL_LOCK_READ && + (e2->rl_q_flags & RL_LOCK_TYPE_MASK) == RL_LOCK_READ) + return (0); +#define IN_RANGE(a, e) (a >= e->rl_q_start && a < e->rl_q_end) + if (IN_RANGE(e1->rl_q_start, e2) || IN_RANGE(e2->rl_q_start, e1) || + IN_RANGE(e1->rl_q_end, e2) || IN_RANGE(e2->rl_q_end, e1)) + return (1); +#undef IN_RANGE + return (0); +} + +static void +rangelock_calc_block(struct rangelock *lock) +{ + struct rl_q_entry *entry, *entry1, *whead; + + if (lock->rl_currdep == TAILQ_FIRST(&lock->rl_waiters) && + lock->rl_currdep != NULL) + lock->rl_currdep = TAILQ_NEXT(lock->rl_currdep, rl_q_link); + for (entry = lock->rl_currdep; entry; + entry = TAILQ_NEXT(entry, rl_q_link)) { + TAILQ_FOREACH(entry1, &lock->rl_waiters, rl_q_link) { + if (rangelock_incompatible(entry, entry1)) + goto out; + if (entry1 == entry) + break; + } + } +out: + lock->rl_currdep = entry; + TAILQ_FOREACH(whead, &lock->rl_waiters, rl_q_link) { + if (whead == lock->rl_currdep) + break; + if (!(whead->rl_q_flags & RL_LOCK_GRANTED)) { + whead->rl_q_flags |= RL_LOCK_GRANTED; + wakeup(whead); + } + } +} + +static void +rangelock_unlock_vp_locked(struct vnode *vp, struct rl_q_entry *entry) +{ + + ASSERT_VI_LOCKED(vp, "rangelock"); + KASSERT(entry != vp->v_rl.rl_currdep, ("stuck currdep")); + TAILQ_REMOVE(&vp->v_rl.rl_waiters, entry, rl_q_link); + rangelock_calc_block(&vp->v_rl); + VI_UNLOCK(vp); + uma_zfree(rl_entry_zone, entry); +} + +void +rangelock_unlock(struct vnode *vp, void *cookie) +{ + struct rl_q_entry *entry; + + entry = cookie; + VI_LOCK(vp); + rangelock_unlock_vp_locked(vp, entry); +} + +void * +rangelock_unlock_range(struct vnode *vp, void *cookie, off_t base, size_t len) +{ + struct rl_q_entry *entry; + + entry = cookie; + VI_LOCK(vp); + KASSERT(entry->rl_q_flags & RL_LOCK_GRANTED, ("XXX")); + KASSERT(entry->rl_q_start == base, ("XXX")); + KASSERT(entry->rl_q_end >= base + len, ("XXX")); + if (entry->rl_q_end == base + len) { + rangelock_unlock_vp_locked(vp, cookie); + return (NULL); + } + entry->rl_q_end = base + len; + rangelock_calc_block(&vp->v_rl); + VI_UNLOCK(vp); + return (cookie); +} + +static void * +rangelock_enqueue(struct vnode *vp, struct rl_q_entry *entry) +{ + + VI_LOCK(vp); + TAILQ_INSERT_TAIL(&vp->v_rl.rl_waiters, entry, rl_q_link); + if (vp->v_rl.rl_currdep == NULL) + vp->v_rl.rl_currdep = entry; + rangelock_calc_block(&vp->v_rl); + while (!(entry->rl_q_flags & RL_LOCK_GRANTED)) + msleep(entry, &vp->v_interlock, 0, "range", 0); + VI_UNLOCK(vp); + return (entry); +} + +void * +rangelock_rlock(struct vnode *vp, off_t base, size_t len) +{ + struct rl_q_entry *entry; + + entry = uma_zalloc(rl_entry_zone, M_WAITOK); + entry->rl_q_flags = RL_LOCK_READ; + entry->rl_q_start = base; + entry->rl_q_end = base + len; + return (rangelock_enqueue(vp, entry)); +} + +void * +rangelock_wlock(struct vnode *vp, off_t base, size_t len) +{ + struct rl_q_entry *entry; + + entry = uma_zalloc(rl_entry_zone, M_WAITOK); + entry->rl_q_flags = RL_LOCK_WRITE; + entry->rl_q_start = base; + entry->rl_q_end = base + len; + return (rangelock_enqueue(vp, entry)); +} diff --git a/sys/kern/vfs_cluster.c b/sys/kern/vfs_cluster.c index 1ab263c..d249e44 100644 --- a/sys/kern/vfs_cluster.c +++ b/sys/kern/vfs_cluster.c @@ -71,8 +71,8 @@ static int write_behind = 1; SYSCTL_INT(_vfs, OID_AUTO, write_behind, CTLFLAG_RW, &write_behind, 0, "Cluster write-behind; 0: disable, 1: enable, 2: backed off"); -static int read_max = 8; -SYSCTL_INT(_vfs, OID_AUTO, read_max, CTLFLAG_RW, &read_max, 0, +int vfs_read_max = 8; +SYSCTL_INT(_vfs, OID_AUTO, read_max, CTLFLAG_RW, &vfs_read_max, 0, "Cluster read-ahead max block count"); /* Page expended to mark partially backed buffers */ @@ -109,7 +109,7 @@ cluster_read(vp, filesize, lblkno, size, cred, totread, seqcount, bpp) */ racluster = vp->v_mount->mnt_iosize_max / size; maxra = seqcount; - maxra = min(read_max, maxra); + maxra = min(vfs_read_max, maxra); maxra = min(nbuf/8, maxra); if (((u_quad_t)(lblkno + maxra + 1) * size) > filesize) maxra = (filesize / size) - lblkno; @@ -803,7 +803,9 @@ cluster_wbuild(vp, size, start_lbn, len) (tbp->b_bcount != tbp->b_bufsize) || (tbp->b_bcount != size) || (len == 1) || - ((bp = getpbuf(&cluster_pbuf_freecnt)) == NULL)) { + ((bp = (vp->v_vflag & VV_MD) ? + trypbuf(&cluster_pbuf_freecnt) : + getpbuf(&cluster_pbuf_freecnt)) == NULL)) { totalwritten += tbp->b_bufsize; bawrite(tbp); ++start_lbn; diff --git a/sys/kern/vfs_default.c b/sys/kern/vfs_default.c index b80d03d..3636360 100644 --- a/sys/kern/vfs_default.c +++ b/sys/kern/vfs_default.c @@ -77,6 +77,8 @@ static int dirent_exists(struct vnode *vp, const char *dirname, #define DIRENT_MINSIZE (sizeof(struct dirent) - (MAXNAMLEN+1) + 4) +static int vop_stdextend(struct vop_extend_args *ap); + /* * This vnode table stores what we want to do if the filesystem doesn't * implement a particular VOP. @@ -118,6 +120,7 @@ struct vop_vector default_vnodeops = { .vop_unlock = vop_stdunlock, .vop_vptocnp = vop_stdvptocnp, .vop_vptofh = vop_stdvptofh, + .vop_extend = vop_stdextend, }; /* @@ -825,6 +828,23 @@ out: return (error); } +static int +vop_stdextend(struct vop_extend_args *ap) +{ + struct vattr vattr, oattr; + int error; + + + error = VOP_GETATTR(ap->a_vp, &oattr, ap->a_cred); + if (error != 0) + return (error); + if (oattr.va_size >= ap->a_size) + return (0); + VATTR_NULL(&vattr); + vattr.va_size = ap->a_size; + return (VOP_SETATTR(ap->a_vp, &vattr, ap->a_cred)); +} + /* * vfs default ops * used to fill the vfs function table to get reasonable default return values. diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 9453f73..ea735f3 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -853,6 +853,7 @@ vdestroy(struct vnode *vp) /* XXX Elsewhere we can detect an already freed vnode via NULL v_op. */ vp->v_op = NULL; #endif + rangelock_destroy(&vp->v_rl); lockdestroy(vp->v_vnlock); mtx_destroy(&vp->v_interlock); mtx_destroy(BO_MTX(bo)); @@ -1007,6 +1008,7 @@ alloc: if ((mp->mnt_kern_flag & MNTK_NOKNOTE) != 0) vp->v_vflag |= VV_NOKNOTE; } + rangelock_init(&vp->v_rl); *vpp = vp; return (0); diff --git a/sys/kern/vfs_vnops.c b/sys/kern/vfs_vnops.c index 03e8d93..3e473f3 100644 --- a/sys/kern/vfs_vnops.c +++ b/sys/kern/vfs_vnops.c @@ -37,12 +37,14 @@ #include __FBSDID("$FreeBSD$"); +#include #include #include #include #include #include #include +#include #include #include #include @@ -62,6 +64,13 @@ __FBSDID("$FreeBSD$"); #include +#include +#include + +static int vmio_enabled = 1; +SYSCTL_INT(_vfs, OID_AUTO, vmio_enabled, CTLFLAG_RW, &vmio_enabled, 0, + "Use vm pages copyin/out instead of vops for read/write"); + static fo_rdwr_t vn_read; static fo_rdwr_t vn_write; static fo_truncate_t vn_truncate; @@ -83,6 +92,9 @@ struct fileops vnops = { .fo_flags = DFLAG_PASSABLE | DFLAG_SEEKABLE }; +static int vn_write_chunk(struct vnode *, struct uio *, struct ucred *, + struct ucred *, int); + int vn_open(ndp, flagp, cmode, fp) struct nameidata *ndp; @@ -333,7 +345,7 @@ sequential_heuristic(struct uio *uio, struct file *fp) * closely related to the best I/O size for real disks than * to any block size used by software. */ - fp->f_seqcount += howmany(uio->uio_resid, 16384); + fp->f_seqcount += howmany(uio->uio_resid, FRA_BLOCK_SZ); if (fp->f_seqcount > IO_SEQMAX) fp->f_seqcount = IO_SEQMAX; return (fp->f_seqcount << IO_SEQSHIFT); @@ -351,76 +363,72 @@ sequential_heuristic(struct uio *uio, struct file *fp) * Package up an I/O request on a vnode into a uio and do it. */ int -vn_rdwr(rw, vp, base, len, offset, segflg, ioflg, active_cred, file_cred, - aresid, td) - enum uio_rw rw; - struct vnode *vp; - void *base; - int len; - off_t offset; - enum uio_seg segflg; - int ioflg; - struct ucred *active_cred; - struct ucred *file_cred; - int *aresid; - struct thread *td; +vn_rdwr(enum uio_rw rw, struct vnode *vp, void *base, int len, off_t offset, + enum uio_seg segflg, int ioflg, struct ucred *active_cred, + struct ucred *file_cred, int *aresid, struct thread *td) { struct uio auio; struct iovec aiov; struct mount *mp; struct ucred *cred; + void *rl_cookie; int error, lock_flags; VFS_ASSERT_GIANT(vp->v_mount); + auio.uio_iov = &aiov; + auio.uio_iovcnt = 1; + aiov.iov_base = base; + aiov.iov_len = len; + auio.uio_resid = len; + auio.uio_offset = offset; + auio.uio_segflg = segflg; + auio.uio_rw = rw; + auio.uio_td = td; + error = 0; + + if ((ioflg & IO_NODELOCKED) == 0) { + if (rw == UIO_READ) + rl_cookie = rangelock_rlock(vp, offset, len); + else + rl_cookie = rangelock_wlock(vp, offset, len); + } else + rl_cookie = NULL; + if ((ioflg & IO_NODELOCKED) == 0) { mp = NULL; if (rw == UIO_WRITE) { if (vp->v_type != VCHR && (error = vn_start_write(vp, &mp, V_WAIT | PCATCH)) != 0) - return (error); + goto out; if (MNT_SHARED_WRITES(mp) || - ((mp == NULL) && MNT_SHARED_WRITES(vp->v_mount))) { + ((mp == NULL) && MNT_SHARED_WRITES(vp->v_mount))) lock_flags = LK_SHARED; - } else { + else lock_flags = LK_EXCLUSIVE; - } vn_lock(vp, lock_flags | LK_RETRY); - } else - vn_lock(vp, LK_SHARED | LK_RETRY); - + } } ASSERT_VOP_LOCKED(vp, "IO_NODELOCKED with no vp lock held"); - auio.uio_iov = &aiov; - auio.uio_iovcnt = 1; - aiov.iov_base = base; - aiov.iov_len = len; - auio.uio_resid = len; - auio.uio_offset = offset; - auio.uio_segflg = segflg; - auio.uio_rw = rw; - auio.uio_td = td; - error = 0; #ifdef MAC if ((ioflg & IO_NOMACCHECK) == 0) { - if (rw == UIO_READ) - error = mac_vnode_check_read(active_cred, file_cred, - vp); - else + if (rw == UIO_WRITE) error = mac_vnode_check_write(active_cred, file_cred, vp); } #endif if (error == 0) { - if (file_cred) + if (file_cred != NULL) cred = file_cred; else cred = active_cred; if (rw == UIO_READ) - error = VOP_READ(vp, &auio, ioflg, cred); + error = vn_read_chunk(vp, &auio, active_cred, cred, + ioflg); else - error = VOP_WRITE(vp, &auio, ioflg, cred); + error = vn_write_chunk(vp, &auio, active_cred, cred, + ioflg); } if (aresid) *aresid = auio.uio_resid; @@ -428,10 +436,15 @@ vn_rdwr(rw, vp, base, len, offset, segflg, ioflg, active_cred, file_cred, if (auio.uio_resid && error == 0) error = EIO; if ((ioflg & IO_NODELOCKED) == 0) { - if (rw == UIO_WRITE && vp->v_type != VCHR) - vn_finished_write(mp); - VOP_UNLOCK(vp, 0); + if (rw == UIO_WRITE) { + if (vp->v_type != VCHR) + vn_finished_write(mp); + VOP_UNLOCK(vp, 0); + } } + out: + if (rl_cookie != NULL) + rangelock_unlock(vp, rl_cookie); return (error); } @@ -493,68 +506,148 @@ vn_rdwr_inchunks(rw, vp, base, len, offset, segflg, ioflg, active_cred, return (error); } +static struct mtx * +vn_lock_foffset(struct file *fp) +{ + struct mtx *mtxp; + + mtxp = mtx_pool_find(mtxpool_sleep, fp); + mtx_lock(mtxp); + while (fp->f_vnread_flags & FOFFSET_LOCKED) { + fp->f_vnread_flags |= FOFFSET_LOCK_WAITING; + msleep(&fp->f_vnread_flags, mtxp, PUSER -1, + "vnread offlock", 0); + } + fp->f_vnread_flags |= FOFFSET_LOCKED; + mtx_unlock(mtxp); + return (mtxp); +} + +static void +vn_unlock_foffset(struct file *fp, struct mtx *mtxp) +{ + + mtx_lock(mtxp); + if (fp->f_vnread_flags & FOFFSET_LOCK_WAITING) + wakeup(&fp->f_vnread_flags); + fp->f_vnread_flags = 0; + mtx_unlock(mtxp); +} + +int +vn_read_chunk(struct vnode *vp, struct uio *uio, struct ucred *active_cred, + struct ucred *fcred, int ioflag) +{ + int error, vfslocked; + + error = 0; + vfslocked = 0; /* gcc */ + + if ((ioflag & IO_NODELOCKED) == 0) { + vfslocked = VFS_LOCK_GIANT(vp->v_mount); + vn_lock(vp, LK_SHARED | LK_RETRY); + } + +#ifdef MAC + if ((ioflag & IO_NOMACCHECK) == 0) + error = mac_vnode_check_read(active_cred, fcred, vp); +#endif + if (error == 0) { + if (!vmio_enabled || + (error = vnode_pager_read(vp, uio, ioflag)) == EOPNOTSUPP) + error = VOP_READ(vp, uio, ioflag, fcred); + } + if ((ioflag & IO_NODELOCKED) == 0) { + VOP_UNLOCK(vp, 0); + VFS_UNLOCK_GIANT(vfslocked); + } + return (error); +} + /* * File table vnode read routine. */ static int -vn_read(fp, uio, active_cred, flags, td) - struct file *fp; - struct uio *uio; - struct ucred *active_cred; - struct thread *td; - int flags; +vn_read(struct file *fp, struct uio *uio, struct ucred *active_cred, int flags, + struct thread *td) { struct vnode *vp; - int error, ioflag; struct mtx *mtxp; - int vfslocked; + void *rl_cookie; + int ioflag; + int error; KASSERT(uio->uio_td == td, ("uio_td %p is not td %p", uio->uio_td, td)); - mtxp = NULL; - vp = fp->f_vnode; ioflag = 0; if (fp->f_flag & FNONBLOCK) ioflag |= IO_NDELAY; if (fp->f_flag & O_DIRECT) ioflag |= IO_DIRECT; - vfslocked = VFS_LOCK_GIANT(vp->v_mount); + vp = fp->f_vnode; + /* * According to McKusick the vn lock was protecting f_offset here. * It is now protected by the FOFFSET_LOCKED flag. */ if ((flags & FOF_OFFSET) == 0) { - mtxp = mtx_pool_find(mtxpool_sleep, fp); - mtx_lock(mtxp); - while(fp->f_vnread_flags & FOFFSET_LOCKED) { - fp->f_vnread_flags |= FOFFSET_LOCK_WAITING; - msleep(&fp->f_vnread_flags, mtxp, PUSER -1, - "vnread offlock", 0); - } - fp->f_vnread_flags |= FOFFSET_LOCKED; - mtx_unlock(mtxp); - vn_lock(vp, LK_SHARED | LK_RETRY); + mtxp = vn_lock_foffset(fp); uio->uio_offset = fp->f_offset; } else - vn_lock(vp, LK_SHARED | LK_RETRY); - + mtxp = NULL; /* gcc */ + if (vp->v_type == VREG) + rl_cookie = rangelock_rlock(vp, uio->uio_offset, + uio->uio_resid); + else + rl_cookie = NULL; ioflag |= sequential_heuristic(uio, fp); + error = vn_read_chunk(vp, uio, active_cred, fp->f_cred, ioflag); + fp->f_nextoff = uio->uio_offset; + if (rl_cookie != NULL) + rangelock_unlock(vp, rl_cookie); + if ((flags & FOF_OFFSET) == 0) { + fp->f_offset = uio->uio_offset; + vn_unlock_foffset(fp, mtxp); + } + return (error); +} +static int +vn_write_chunk(struct vnode *vp, struct uio *uio, struct ucred *active_cred, + struct ucred *fcred, int ioflag) +{ + struct mount *mp, *mp1; + int error, lock_flags, vfslocked; + + mp = NULL; + vfslocked = VFS_LOCK_GIANT(vp->v_mount); + if (vp->v_type == VREG) + bwillwrite(); + if (vp->v_type != VCHR && + (error = vn_start_write(vp, &mp, V_WAIT | PCATCH)) != 0) + goto unlock; + + if (MNT_SHARED_WRITES(mp) || + (mp == NULL && (mp1 = vp->v_mount) != NULL && + MNT_SHARED_WRITES(mp1))) + lock_flags = LK_SHARED; + else + lock_flags = LK_EXCLUSIVE; + vn_lock(vp, lock_flags | LK_RETRY); #ifdef MAC - error = mac_vnode_check_read(active_cred, fp->f_cred, vp); - if (error == 0) + error = mac_vnode_check_write(active_cred, fcred, vp); +#else + error = 0; #endif - error = VOP_READ(vp, uio, ioflag, fp->f_cred); - if ((flags & FOF_OFFSET) == 0) { - fp->f_offset = uio->uio_offset; - mtx_lock(mtxp); - if (fp->f_vnread_flags & FOFFSET_LOCK_WAITING) - wakeup(&fp->f_vnread_flags); - fp->f_vnread_flags = 0; - mtx_unlock(mtxp); + if (error == 0) { + if (!vmio_enabled || + (error = vnode_pager_write(vp, uio, ioflag)) == EOPNOTSUPP) + error = VOP_WRITE(vp, uio, ioflag, fcred); } - fp->f_nextoff = uio->uio_offset; VOP_UNLOCK(vp, 0); + if (vp->v_type != VCHR) + vn_finished_write(mp); +unlock: VFS_UNLOCK_GIANT(vfslocked); return (error); } @@ -563,24 +656,17 @@ vn_read(fp, uio, active_cred, flags, td) * File table vnode write routine. */ static int -vn_write(fp, uio, active_cred, flags, td) - struct file *fp; - struct uio *uio; - struct ucred *active_cred; - struct thread *td; - int flags; +vn_write(struct file *fp, struct uio *uio, struct ucred *active_cred, int flags, + struct thread *td) { struct vnode *vp; - struct mount *mp; - int error, ioflag, lock_flags; - int vfslocked; + struct mtx *mtxp; + void *rl_cookie; + int error, ioflag; KASSERT(uio->uio_td == td, ("uio_td %p is not td %p", uio->uio_td, td)); vp = fp->f_vnode; - vfslocked = VFS_LOCK_GIANT(vp->v_mount); - if (vp->v_type == VREG) - bwillwrite(); ioflag = IO_UNIT; if (vp->v_type == VREG && (fp->f_flag & O_APPEND)) ioflag |= IO_APPEND; @@ -591,36 +677,32 @@ vn_write(fp, uio, active_cred, flags, td) if ((fp->f_flag & O_FSYNC) || (vp->v_mount && (vp->v_mount->mnt_flag & MNT_SYNCHRONOUS))) ioflag |= IO_SYNC; - mp = NULL; - if (vp->v_type != VCHR && - (error = vn_start_write(vp, &mp, V_WAIT | PCATCH)) != 0) - goto unlock; - - if ((MNT_SHARED_WRITES(mp) || - ((mp == NULL) && MNT_SHARED_WRITES(vp->v_mount))) && - (flags & FOF_OFFSET) != 0) { - lock_flags = LK_SHARED; - } else { - lock_flags = LK_EXCLUSIVE; - } - - vn_lock(vp, lock_flags | LK_RETRY); - if ((flags & FOF_OFFSET) == 0) + if ((flags & FOF_OFFSET) == 0) { + mtxp = vn_lock_foffset(fp); uio->uio_offset = fp->f_offset; + } else + mtxp = NULL; /* gcc */ ioflag |= sequential_heuristic(uio, fp); -#ifdef MAC - error = mac_vnode_check_write(active_cred, fp->f_cred, vp); - if (error == 0) -#endif - error = VOP_WRITE(vp, uio, ioflag, fp->f_cred); - if ((flags & FOF_OFFSET) == 0) + if (vp->v_type == VREG) { + if ((ioflag & IO_APPEND) || !(flags & FOF_OFFSET)) + /* + * For appenders, punt and lock the whole + * range. It also protects f_offset. + */ + rl_cookie = rangelock_wlock(vp, 0, (size_t)-1); + else + rl_cookie = rangelock_wlock(vp, uio->uio_offset, + uio->uio_resid); + } else + rl_cookie = NULL; + error = vn_write_chunk(vp, uio, active_cred, fp->f_cred, ioflag); + if (rl_cookie != NULL) + rangelock_unlock(vp, rl_cookie); + if ((flags & FOF_OFFSET) == 0) { fp->f_offset = uio->uio_offset; + vn_unlock_foffset(fp, mtxp); + } fp->f_nextoff = uio->uio_offset; - VOP_UNLOCK(vp, 0); - if (vp->v_type != VCHR) - vn_finished_write(mp); -unlock: - VFS_UNLOCK_GIANT(vfslocked); return (error); } diff --git a/sys/kern/vnode_if.src b/sys/kern/vnode_if.src index c9f20e3..27e298c 100644 --- a/sys/kern/vnode_if.src +++ b/sys/kern/vnode_if.src @@ -611,3 +611,12 @@ vop_vptocnp { INOUT char *buf; INOUT int *buflen; }; + +%% extend vp L L L + +vop_extend { + IN struct vnode *vp; + IN struct ucred *cred; + IN u_quad_t size; + IN int flags; +}; diff --git a/sys/sys/buf.h b/sys/sys/buf.h index 8f3b1b2..e6fdf7e 100644 --- a/sys/sys/buf.h +++ b/sys/sys/buf.h @@ -257,6 +257,8 @@ extern const char *buf_wmesg; /* Default buffer lock message */ #include /* XXX for curthread */ #include +extern int vfs_read_max; + /* * Initialize a lock. */ diff --git a/sys/sys/file.h b/sys/sys/file.h index 5c58e82..d71ba2c 100644 --- a/sys/sys/file.h +++ b/sys/sys/file.h @@ -141,6 +141,8 @@ struct file { #define FOFFSET_LOCKED 0x1 #define FOFFSET_LOCK_WAITING 0x2 +#define FRA_BLOCK_SZ 16384 + #endif /* _KERNEL || _WANT_FILE */ /* diff --git a/sys/sys/rangelock.h b/sys/sys/rangelock.h new file mode 100644 index 0000000..5ec6433 --- /dev/null +++ b/sys/sys/rangelock.h @@ -0,0 +1,48 @@ +/*- + * Copyright (c) 2009 Konstantin Belousov + * All rights reserved. + * + * $FreeBSD$ + */ + +#ifndef _SYS_RANGELOCK_H +#define _SYS_RANGELOCK_H + +#include +#include +#include +#include +#include + +#ifdef _KERNEL + +struct vnode; + +struct rl_q_entry +{ + TAILQ_ENTRY(rl_q_entry) rl_q_link; + size_t rl_q_start, rl_q_end; + int rl_q_flags; +}; + +#define RL_LOCK_READ 0x0001 +#define RL_LOCK_WRITE 0x0002 +#define RL_LOCK_TYPE_MASK 0x0003 +#define RL_LOCK_GRANTED 0x0004 + +struct rangelock +{ + TAILQ_HEAD(, rl_q_entry) rl_waiters; + struct rl_q_entry *rl_currdep; +}; + +void rangelock_init(struct rangelock *lock); +void rangelock_destroy(struct rangelock *lock); +void rangelock_unlock(struct vnode *vp, void *cookie); +void *rangelock_unlock_range(struct vnode *vp, void *cookie, off_t base, + size_t len); +void *rangelock_rlock(struct vnode *vp, off_t base, size_t len); +void *rangelock_wlock(struct vnode *vp, off_t base, size_t len); +#endif + +#endif diff --git a/sys/sys/vnode.h b/sys/sys/vnode.h index b38c1d0..2e23522 100644 --- a/sys/sys/vnode.h +++ b/sys/sys/vnode.h @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include @@ -168,7 +169,8 @@ struct vnode { */ struct vpollinfo *v_pollinfo; /* G Poll events, p for *v_pi */ struct label *v_label; /* MAC label for vnode */ - struct lockf *v_lockf; /* Byte-level lock list */ + struct lockf *v_lockf; /* Byte-level adv lock list */ + struct rangelock v_rl; /* Byte-range lock */ }; #endif /* defined(_KERNEL) || defined(_KVM_VNODE) */ @@ -655,6 +657,8 @@ int vn_rdwr_inchunks(enum uio_rw rw, struct vnode *vp, void *base, size_t len, off_t offset, enum uio_seg segflg, int ioflg, struct ucred *active_cred, struct ucred *file_cred, size_t *aresid, struct thread *td); +int vn_read_chunk(struct vnode *vp, struct uio *uio, + struct ucred *active_cred, struct ucred *f_cred, int ioflag); int vn_stat(struct vnode *vp, struct stat *sb, struct ucred *active_cred, struct ucred *file_cred, struct thread *td); int vn_start_write(struct vnode *vp, struct mount **mpp, int flags); diff --git a/sys/ufs/ffs/ffs_vnops.c b/sys/ufs/ffs/ffs_vnops.c index 464a761..a116656 100644 --- a/sys/ufs/ffs/ffs_vnops.c +++ b/sys/ufs/ffs/ffs_vnops.c @@ -119,7 +119,7 @@ static vop_listextattr_t ffs_listextattr; static vop_openextattr_t ffs_openextattr; static vop_setextattr_t ffs_setextattr; static vop_vptofh_t ffs_vptofh; - +static vop_extend_t ffs_extend; /* Global vfs data structures for ufs. */ struct vop_vector ffs_vnodeops1 = { @@ -131,6 +131,7 @@ struct vop_vector ffs_vnodeops1 = { .vop_reallocblks = ffs_reallocblks, .vop_write = ffs_write, .vop_vptofh = ffs_vptofh, + .vop_extend = ffs_extend, }; struct vop_vector ffs_fifoops1 = { @@ -156,6 +157,7 @@ struct vop_vector ffs_vnodeops2 = { .vop_openextattr = ffs_openextattr, .vop_setextattr = ffs_setextattr, .vop_vptofh = ffs_vptofh, + .vop_extend = ffs_extend, }; struct vop_vector ffs_fifoops2 = { @@ -1783,3 +1785,43 @@ vop_vptofh { ufhp->ufid_gen = ip->i_gen; return (0); } + +static int +ffs_extend(struct vop_extend_args *ap) +{ + struct vnode *vp; + struct inode *ip; + struct buf *bp; + off_t osize; + u_quad_t size; + int error, flags; + + vp = ap->a_vp; + ip = VTOI(vp); + size = ap->a_size; + osize = ip->i_size; + if (osize >= size) + return (0); + + flags = ap->a_flags & IO_SYNC; + vnode_pager_setsize(vp, size); + error = UFS_BALLOC(vp, size - 1, 1, ap->a_cred, flags | BA_CLRBUF, + &bp); + if (error) { + vnode_pager_setsize(vp, osize); + return (error); + } + ip->i_size = size; + DIP_SET(ip, i_size, size); + if (bp->b_bufsize == ip->i_fs->fs_bsize) + bp->b_flags |= B_CLUSTEROK; + if (ap->a_flags & IO_SYNC) + bwrite(bp); + else + bawrite(bp); + ip->i_flag |= IN_CHANGE | IN_UPDATE; + if (ap->a_flags & IO_SYNC) + return (ffs_update(vp, 1)); + return (0); +} + diff --git a/sys/ufs/ufs/ufs_vnops.c b/sys/ufs/ufs/ufs_vnops.c index 08b77ae..8f537b3 100644 --- a/sys/ufs/ufs/ufs_vnops.c +++ b/sys/ufs/ufs/ufs_vnops.c @@ -1900,7 +1900,8 @@ ufs_readdir(ap) uio->uio_iov->iov_len = count; # if (BYTE_ORDER == LITTLE_ENDIAN) if (ap->a_vp->v_mount->mnt_maxsymlinklen > 0) { - error = VOP_READ(ap->a_vp, uio, 0, ap->a_cred); + error = vn_read_chunk(ap->a_vp, uio, ap->a_cred, + ap->a_cred, IO_NODELOCKED); } else { struct dirent *dp, *edp; struct uio auio; @@ -1916,7 +1917,8 @@ ufs_readdir(ap) aiov.iov_len = count; dirbuf = malloc(count, M_TEMP, M_WAITOK); aiov.iov_base = dirbuf; - error = VOP_READ(ap->a_vp, &auio, 0, ap->a_cred); + error = vn_read_chunk(ap->a_vp, &auio, ap->a_cred, + ap->a_cred, IO_NODELOCKED); if (error == 0) { readcnt = count - auio.uio_resid; edp = (struct dirent *)&dirbuf[readcnt]; @@ -1938,7 +1940,8 @@ ufs_readdir(ap) free(dirbuf, M_TEMP); } # else - error = VOP_READ(ap->a_vp, uio, 0, ap->a_cred); + error = vn_read_chunk(ap->a_vp, uio, ap->a_cred, + ap->a_cred, IO_NODELOCKED); # endif if (!error && ap->a_ncookies != NULL) { struct dirent* dpStart; diff --git a/sys/vm/vm_extern.h b/sys/vm/vm_extern.h index ad6087e..e24c62b 100644 --- a/sys/vm/vm_extern.h +++ b/sys/vm/vm_extern.h @@ -84,5 +84,8 @@ void vm_thread_dispose(struct thread *td); int vm_thread_new(struct thread *td, int pages); void vm_thread_swapin(struct thread *td); void vm_thread_swapout(struct thread *td); +int vnode_pager_read(struct vnode *vp, struct uio *uio, int ioflags); +int vnode_pager_write(struct vnode *vp, struct uio *uio, int ioflags); + #endif /* _KERNEL */ #endif /* !_VM_EXTERN_H_ */ diff --git a/sys/vm/vm_pageout.c b/sys/vm/vm_pageout.c index 19edce1..d02a006 100644 --- a/sys/vm/vm_pageout.c +++ b/sys/vm/vm_pageout.c @@ -349,7 +349,7 @@ more: } vm_page_test_dirty(p); if (p->dirty == 0 || - p->queue != PQ_INACTIVE || + (p->queue != PQ_INACTIVE && p->queue != PQ_ACTIVE) || p->wire_count != 0 || /* may be held by buf cache */ p->hold_count != 0) { /* may be undergoing I/O */ ib = 0; @@ -377,7 +377,7 @@ more: } vm_page_test_dirty(p); if (p->dirty == 0 || - p->queue != PQ_INACTIVE || + (p->queue != PQ_INACTIVE && p->queue != PQ_ACTIVE) || p->wire_count != 0 || /* may be held by buf cache */ p->hold_count != 0) { /* may be undergoing I/O */ break; @@ -484,7 +484,7 @@ vm_pageout_flush(vm_page_t *mc, int count, int flags) if (pageout_status[i] != VM_PAGER_PEND) { vm_object_pip_wakeup(object); vm_page_io_finish(mt); - if (vm_page_count_severe()) + if (mt->queue == PQ_INACTIVE && vm_page_count_severe()) vm_page_try_to_cache(mt); } } diff --git a/sys/vm/vm_readwrite.c b/sys/vm/vm_readwrite.c new file mode 100644 index 0000000..bf7c4c8 --- /dev/null +++ b/sys/vm/vm_readwrite.c @@ -0,0 +1,504 @@ +/*- + * Copyright (c) 2008 Jeffrey Roberson + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice unmodified, this list of conditions, and the following + * disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR + * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. + * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, + * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT + * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF + * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include +#include +#include +#include + +/* + * XXXKIB TODO + * + * 1. Backpressure for writes + * 2. VOP_REALLOCBLKS + * 3. Unset setuid/setgid bits after write. + * + */ + +static int vmio_run = 0; +SYSCTL_INT(_debug, OID_AUTO, vmio_run, CTLFLAG_RW, &vmio_run, 0, + "Calculate the max sequential run for vnode_pager_read_cluster"); +static int vmio_read_pack = 16; +SYSCTL_INT(_vfs, OID_AUTO, vmio_read_pack, CTLFLAG_RW, &vmio_read_pack, 0, + "Length of the page pack for read"); +static int vmio_write_pack = 16; +SYSCTL_INT(_vfs, OID_AUTO, vmio_write_pack, CTLFLAG_RW, &vmio_write_pack, 0, + "Length of the page pack for write"); + +static u_int +io_page_bits(int i, vm_offset_t off, ssize_t size) +{ + int start, chunk; + + if (i == 0) { + start = off; + chunk = min(PAGE_SIZE - off, size); + } else if (i * PAGE_SIZE < off + size) { + start = 0; + chunk = PAGE_SIZE; + } else if ((i - 1) * PAGE_SIZE < off + size) { + start = 0; + chunk = (size - off) % PAGE_SIZE; + } else + return (0); + return (vm_page_bits(start, chunk)); +} + +#define VN_GRAB_NO_VMWAIT 0x0001 + +/* + * Grab a page, waiting until we are woken up due to the page + * changing state. We keep on waiting, if the page continues + * to be in the object. If the page doesn't exist allocate it. + * + * This routine may block. + * + * Returns NULL on error, and vnode vm_object unlocked. + */ +static vm_page_t +vnode_grab_next_page(struct vnode *vp, vm_page_t prev, vm_pindex_t pindex, + int flags) +{ + vm_object_t object; + vm_page_t m; + + object = vp->v_object; + VM_OBJECT_LOCK_ASSERT(object, MA_OWNED); + m = NULL; + if (prev) { + m = TAILQ_NEXT(prev, listq); + if (m && m->pindex != pindex) + m = NULL; + } + for (;;) { + if (m == NULL) + m = vm_page_lookup(object, pindex); + if (m != NULL) { + if (vm_page_sleep_if_busy(m, TRUE, "pgrnbwt") == 0) + break; + m = NULL; + continue; + } + m = vm_page_alloc(object, pindex, + VM_ALLOC_NORMAL | VM_ALLOC_NOBUSY); + if (m != NULL || (flags & VN_GRAB_NO_VMWAIT)) + break; + VM_OBJECT_UNLOCK(object); + VM_WAIT; + VM_OBJECT_LOCK(object); + } + return (m); +} + +/* + * Read a cluster starting at 'm'. + */ +static int +vnode_pager_read_cluster(struct vnode *vp, vm_page_t m, int maxrun, int flags) +{ + vm_page_t pa[MAXPHYS / PAGE_SIZE]; + vm_object_t obj; + vm_pindex_t idx; + daddr_t blkno; + int bsize; + int error; + int run; + int i; + + obj = vp->v_object; + idx = m->pindex; + bsize = vp->v_mount->mnt_stat.f_iosize; + error = 0; + blkno = 0; + + if (vmio_run) { + VM_OBJECT_UNLOCK(obj); + error = VOP_BMAP(vp, IDX_TO_OFF(idx)/bsize, NULL, &blkno, &run, + NULL); + VM_OBJECT_LOCK(obj); + run = MIN(run, maxrun); + if (error || run == 0 || blkno == -1) + return (vm_pager_get_pages(obj, &m, 1, 0)); + run = (run + 1) * bsize / PAGE_SIZE; + run = MIN(run, vp->v_mount->mnt_iosize_max / PAGE_SIZE); + } else { + if (maxrun == 0) + maxrun = 1; + run = MIN(maxrun, vp->v_mount->mnt_iosize_max / PAGE_SIZE); + } + if (IDX_TO_OFF(idx) + run * PAGE_SIZE > obj->un_pager.vnp.vnp_size) { + run = (obj->un_pager.vnp.vnp_size - IDX_TO_OFF(idx)) / + PAGE_SIZE; + } + pa[0] = m; + for (i = 1; i < run; i++) { + m = vnode_grab_next_page(vp, m, idx + i, flags); + if (m == NULL) { + if ((flags & VN_GRAB_NO_VMWAIT) && + !(vp->v_iflag & VI_DOOMED)) { + run = i - 1; + break; + } else { + vm_page_lock_queues(); + for (i--; i >= 0; i--) + vm_page_free(pa[i]); + vm_page_unlock_queues(); + return (VM_PAGER_AGAIN); + } + } + if (m->valid) { + run = i; + break; + } + vm_page_busy(m); + pa[i] = m; + } + if (run == 0) + run = 1; + return (vm_pager_get_pages(obj, pa, run, 0)); +} + +int +vnode_pager_read(struct vnode *vp, struct uio *uio, int ioflags) +{ + vm_object_t obj; + vm_offset_t off; + vm_pindex_t idx; + vm_page_t m; + ssize_t size; + int error, vn_locked, seqcount, wp, i, j; + u_int bits; + boolean_t obj_locked; + struct thread *td; + + if (ioflags & (IO_EXT|IO_DIRECT)) + return (EOPNOTSUPP); + ASSERT_VOP_LOCKED(vp, "vnode_pager_read"); + + /* + * We are not VOP, so shall explicitely check for doomed + * vnodes. + */ + if (vp->v_iflag & VI_DOOMED) + return (EBADF); + + /* + * Ignore non-regular files. + */ + if (vp->v_type != VREG) + return (EOPNOTSUPP); + obj = vp->v_object; + if (obj == NULL) + return (EOPNOTSUPP); + + wp = vmio_read_pack; + vm_page_t ma[wp + 1]; + + error = 0; + m = NULL; + vn_locked = VOP_ISLOCKED(vp); + obj_locked = FALSE; + td = uio->uio_td; + /* XXXKIB This should be disallowed. */ + if (td == NULL) + td = curthread; + + seqcount = (ioflags >> IO_SEQSHIFT) * FRA_BLOCK_SZ / PAGE_SIZE; + seqcount = min(vfs_read_max, seqcount); + seqcount = min(vp->v_mount->mnt_iosize_max / PAGE_SIZE, seqcount); + + while (uio->uio_resid > 0) { + if (!obj_locked) { + VM_OBJECT_LOCK(obj); + obj_locked = TRUE; + } + + size = obj->un_pager.vnp.vnp_size - uio->uio_offset; + if (size <= 0) + break; + idx = OFF_TO_IDX(uio->uio_offset); + off = uio->uio_offset - IDX_TO_OFF(idx); + size = MIN(MIN(PAGE_SIZE * wp - off, uio->uio_resid), size); + + wp = (size + off + PAGE_SIZE - 1) / PAGE_SIZE; + for (i = 0; i < wp; i++) { + ma[i] = m = vnode_grab_next_page(vp, m, idx + i, 0); + bits = io_page_bits(i, off, size); + if ((m->valid & bits) != bits) { + vm_page_busy(m); + + /* + * Read page, honouring read-ahead settings + * for filedescriptor. + */ + error = vnode_pager_read_cluster(vp, m, + seqcount, 0); + if (error != VM_PAGER_OK) { + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_unlock_queues(); + obj_locked = FALSE; + error = EIO; + break; + } + m = vm_page_lookup(obj, idx + i); + if (m == NULL) + continue; + if (m->valid == 0) { + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_free(m); + vm_page_unlock_queues(); + error = EIO; + break; + } + ma[i] = m; + vm_page_wakeup(m); + } + } + if (error != 0) + break; + vm_object_pip_add(obj, 1); + vm_page_io_start(m); + VM_OBJECT_UNLOCK(obj); + VOP_UNLOCK(vp, 0); + + /* + * Access user map pages, vnode lock is + * dropped. Possible page fault is safe at this point. + * Vnode rangelock is held, protecting from parallel + * writers. + */ + error = uiomove_fromphys(ma, off, size, uio); + VM_OBJECT_LOCK(obj); + vm_page_io_finish(m); + vm_object_pip_wakeup(obj); + VM_OBJECT_UNLOCK(obj); + obj_locked = FALSE; + vn_lock(vp, vn_locked | LK_RETRY); + if (error != 0 || (vp->v_iflag & VI_DOOMED)) + break; + } + if (obj_locked) + VM_OBJECT_UNLOCK(obj); + if (error == 0) + vfs_mark_atime(vp, td->td_ucred); + + return (error); +} + +int +vnode_pager_write(struct vnode *vp, struct uio *uio, int ioflags) +{ + vm_object_t obj; + vm_offset_t off; + vm_pindex_t idx; + vm_page_t m; + struct vattr vattr; + ssize_t size, osize, osize1, resid, sresid; + int error, vn_locked, wp, i, j; + u_int bits; + boolean_t obj_locked; + struct thread *td; + + if (ioflags & (IO_EXT|IO_INVAL|IO_DIRECT)) + return (EOPNOTSUPP); + ASSERT_VOP_LOCKED(vp, "vnode_pager_write"); + if (vp->v_iflag & VI_DOOMED) + return (EBADF); + if (vp->v_type != VREG) + return (EOPNOTSUPP); + obj = vp->v_object; + if (obj == NULL) + return (EOPNOTSUPP); + + wp = vmio_write_pack; + vm_page_t ma[wp + 1]; + + error = 0; + m = NULL; + vn_locked = VOP_ISLOCKED(vp); + obj_locked = FALSE; + if (ioflags & IO_APPEND) + uio->uio_offset = obj->un_pager.vnp.vnp_size; + td = uio->uio_td; + if (td == NULL) + td = curthread; + + /* + * Enforce the RLIMIT_FSIZE there too. + * XXXKIB the check for the file type is kept on purpose. + */ + if (vp->v_type == VREG) { + PROC_LOCK(td->td_proc); + if (uio->uio_offset + uio->uio_resid > + lim_cur(td->td_proc, RLIMIT_FSIZE)) { + psignal(td->td_proc, SIGXFSZ); + PROC_UNLOCK(td->td_proc); + return (EFBIG); + } + PROC_UNLOCK(td->td_proc); + } + osize = osize1 = obj->un_pager.vnp.vnp_size; + resid = uio->uio_resid; + while (uio->uio_resid > 0) { + size = uio->uio_resid; + idx = OFF_TO_IDX(uio->uio_offset); + off = uio->uio_offset - IDX_TO_OFF(idx); + size = MIN(PAGE_SIZE * wp - off, uio->uio_resid); + osize1 = obj->un_pager.vnp.vnp_size; + + /* + * Extend the file if writing past end. + */ + if (osize1 < uio->uio_offset + size) { + vattr.va_size = uio->uio_offset + size; + if (obj_locked) { + VM_OBJECT_UNLOCK(obj); + obj_locked = FALSE; + } + error = VOP_EXTEND(vp, td->td_ucred, uio->uio_offset + + size, ioflags); + if (error != 0) + break; + } + + if (!obj_locked) { + VM_OBJECT_LOCK(obj); + obj_locked = TRUE; + } + wp = (size + off + PAGE_SIZE - 1) / PAGE_SIZE; + for (i = 0; i < wp; i++) { + ma[i] = m = vnode_grab_next_page(vp, m, idx + i, 0); + bits = io_page_bits(i, off, size); + + /* + * Do read if page is going to be only partially + * written. + */ + if ((m->valid & ~bits) != (~bits & VM_PAGE_BITS_ALL)) { + vm_page_busy(m); + error = vnode_pager_read_cluster(vp, m, wp - i, + VN_GRAB_NO_VMWAIT); + if (error != VM_PAGER_OK) { + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_unlock_queues(); + obj_locked = FALSE; + error = EIO; + break; + } + m = vm_page_lookup(obj, idx + i); + if (m == NULL) + continue; + if (m->valid == 0) { + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_free(m); + vm_page_unlock_queues(); + error = EIO; + break; + } + ma[i] = m; + vm_page_wakeup(m); + } + } + if (error != 0) + break; + vm_object_pip_add(obj, 1); + for (i = 0; i < wp; i++) + vm_page_io_start(ma[i]); + VM_OBJECT_UNLOCK(obj); + VOP_UNLOCK(vp, 0); + sresid = uio->uio_resid; + error = uiomove_fromphys(ma, off, size, uio); + VM_OBJECT_LOCK(obj); + if (error == 0) { + /* + * Note that the page and object are dirty. + */ + vm_page_lock_queues(); + for (i = 0; i < wp; i++) { + j = io_page_bits(i, off, sresid - + uio->uio_resid); + ma[i]->valid |= j; + ma[i]->dirty |= j; + } + vm_page_unlock_queues(); + vm_object_set_writeable_dirty(obj); + } + for (i = 0; i < wp; i++) + vm_page_io_finish(ma[i]); + vm_object_pip_wakeup(obj); + if (error == 0 && (ioflags & IO_SYNC)) + vm_object_page_clean(obj, idx, idx + wp, ioflags); + VM_OBJECT_UNLOCK(obj); + obj_locked = FALSE; + vn_lock(vp, vn_locked | LK_RETRY); + if (error != 0 || (vp->v_iflag & VI_DOOMED)) + break; + } + if (obj_locked) + VM_OBJECT_UNLOCK(obj); + if (error == 0 && (ioflags & IO_SYNC)) + error = VOP_FSYNC(vp, MNT_WAIT, td); + if (error != 0) { + /* + * Roll back for error if atomic write was requested. + */ + VATTR_NULL(&vattr); + vattr.va_size = (ioflags & IO_UNIT) ? osize : osize1; + VOP_SETATTR(vp, &vattr, td->td_ucred); + if (ioflags & IO_UNIT) { + uio->uio_offset -= resid - uio->uio_resid; + uio->uio_resid = resid; + } + } + + return (error); +} diff --git a/sys/vm/vnode_pager.c b/sys/vm/vnode_pager.c index faa6f37..a49d042 100644 --- a/sys/vm/vnode_pager.c +++ b/sys/vm/vnode_pager.c @@ -1076,6 +1076,7 @@ vnode_pager_generic_putpages(vp, m, bytecount, flags, rtvals) object = vp->v_object; count = bytecount / PAGE_SIZE; +/* printf("vpgp: %p %jd %x %d\n", vp, m[0]->pindex, m[0]->dirty, count); */ for (i = 0; i < count; i++) rtvals[i] = VM_PAGER_AGAIN; diff --git a/tools/regression/file/uio/uio.c b/tools/regression/file/uio/uio.c new file mode 100644 index 0000000..d857605 --- /dev/null +++ b/tools/regression/file/uio/uio.c @@ -0,0 +1,116 @@ +/*- + * Copyright (c) 2009 Konstantin Belousov + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +int chunk_cnt = 1024; +int chunk_size = 1024; + +int +main(int argc, char *argv[]) +{ + struct iovec *wiov, *riov; + char **wdata, **rdata; + int fd, i; + ssize_t io_error; + + if (argc < 2) { + fprintf(stderr, "Usage: uio file [chunk count [chunk size]]\n"); + return (2); + } + fd = open(argv[1], O_RDWR | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); + if (fd == -1) { + fprintf(stderr, "Failed to create %s: %s\n", + argv[1], strerror(errno)); + return (1); + } + + if (argc > 2) + chunk_cnt = atoi(argv[2]); + if (argc > 3) + chunk_size = atoi(argv[3]); + + wiov = calloc(chunk_cnt, sizeof(*wiov)); + wdata = calloc(chunk_cnt, sizeof(*wdata)); + + riov = calloc(chunk_cnt, sizeof(*riov)); + rdata = calloc(chunk_cnt, sizeof(*rdata)); + + for (i = 0; i < chunk_cnt; i++) { + rdata[i] = malloc(chunk_size); + riov[i].iov_base = rdata[i]; + riov[i].iov_len = chunk_size; + + wdata[i] = malloc(chunk_size); + memset(wdata[i], i, chunk_size); + wiov[i].iov_base = wdata[i]; + wiov[i].iov_len = chunk_size; + } + + io_error = writev(fd, wiov, chunk_cnt); + if (io_error == -1) { + fprintf(stderr, "write failed: %s\n", strerror(errno)); + return (1); + } else if (io_error != chunk_cnt * chunk_size) { + fprintf(stderr, "truncated write: %d %d\n", + io_error, chunk_cnt * chunk_size); + return (1); + } + + if (lseek(fd, 0, SEEK_SET) == -1) { + fprintf(stderr, "lseek failed: %s\n", strerror(errno)); + return (1); + } + + io_error = readv(fd, riov, chunk_cnt); + if (io_error == -1) { + fprintf(stderr, "read failed: %s\n", strerror(errno)); + return (1); + } else if (io_error != chunk_cnt * chunk_size) { + fprintf(stderr, "truncated read: %d %d\n", + io_error, chunk_cnt * chunk_size); + return (1); + } + + for (i = 0; i < chunk_cnt; i++) { + if (memcmp(rdata[i], wdata[i], chunk_size) != 0) { + fprintf(stderr, "chunk %d differs\n", i); + return (1); + } + } + + return (0); +} diff --git a/tools/regression/ufs/ba_clrbuf/ba_clrbuf.c b/tools/regression/ufs/ba_clrbuf/ba_clrbuf.c new file mode 100644 index 0000000..1b0acbe --- /dev/null +++ b/tools/regression/ufs/ba_clrbuf/ba_clrbuf.c @@ -0,0 +1,129 @@ +/*- + * Copyright (c) 2009 Konstantin Belousov + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * 1. Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * 2. Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in the + * documentation and/or other materials provided with the distribution. + * + * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND + * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE + * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE + * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE + * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL + * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS + * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) + * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT + * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY + * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF + * SUCH DAMAGE. + * + * $FreeBSD$ + */ + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +static const int blks = 2; + +static void +flush_buffers(int fd) +{ + struct stat st; + char *addr; + int error; + + printf("Flushing buffers\n"); + error = fstat(fd, &st); + if (error == -1) + err(2, "stat"); + fsync(fd); + addr = mmap(NULL, st.st_size, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0); + if (addr == (char *)-1) + err(2, "mmap"); + error = msync(addr, st.st_size, MS_SYNC | MS_INVALIDATE); + if (error == -1) + err(2, "msync"); + munmap(addr, st.st_size); +} + +int +main(int argc, char *argv[]) +{ + struct statfs fst; + char *data, *vrfy; + size_t sz; + int fd, i, error, ret; + + if (argc < 2) + errx(2, "Usage: ba_clrbuf file"); + + fd = open(argv[1], O_RDWR | O_CREAT | O_TRUNC, S_IRUSR | S_IWUSR); + if (fd == -1) + err(2, "Failed to create %s", argv[1]); + + if (fstatfs(fd, &fst) == -1) + err(2, "stat"); + + sz = fst.f_iosize * blks; + data = malloc(sz); + if (data == NULL) + err(2, "malloc"); + vrfy = malloc(sz); + if (vrfy == NULL) + err(2, "malloc"); + for (i = 0; i < (int)sz; i++) + data[i] = i; + error = write(fd, data, sz); + if (error == -1) + err(2, "write"); + else if (error != (int)sz) + errx(2, "Short write %d %d", error, sz); + + flush_buffers(fd); + + error = lseek(fd, 0, SEEK_SET); + if (error == -1) + err(2, "lseek 0"); + else if (error != 0) + errx(2, "lseek 0 returned %d", error); + error = write(fd, NULL, fst.f_iosize); + printf("faulty write, error %s\n", strerror(errno)); + + error = lseek(fd, 0, SEEK_SET); + if (error == -1) + err(2, "lseek 0/2"); + else if (error != 0) + errx(2, "lseek 0/2 returned %d", error); + error = read(fd, vrfy, sz); + if (error == -1) + err(2, "read"); + else if (error != (int)sz) + errx(2, "short read %d %d", error, sz); + + if (memcmp(data, vrfy, fst.f_iosize) != 0) { + printf("Zero block corrupted, byte at 0 is %x\n", + (unsigned char)vrfy[0]); + ret = 1; + } else { + printf("No corruption\n"); + ret = 0; + } + + return (ret); +}