GENERIC from Mon Nov 30 19:27:05 2009 +0200, vm6 a0ea51b, vmcore.380 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 r199899+a0ea51b: Mon Nov 30 20:04:57 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, 217454 free (2454 frags, 26875 blocks, 0.2% fragmentation) /dev/ad4s1e: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad4s1e: clean, 50111779 free (1787 frags, 6263749 blocks, 0.0% fragmentation) /dev/ad4s1f: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad4s1f: clean, 4532580 free (281124 frags, 531432 blocks, 1.3% fragmentation) /dev/ad4s1d: FILE SYSTEM CLEAN; SKIPPING CHECKS /dev/ad4s1d: clean, 13469681 free (110921 frags, 1669845 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 0xc782ae00 dirhash (dirhash) @ ufs/ufs/ufs_dirhash.c:285 KDB: stack backtrace: db_trace_self_wrapper(c0c99346,f6535878,c08cdfc5,c08bebbb,c0c9c297,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c08bebbb,c0c9c297,c712e098,c7131978,f65358d4,...) at kdb_backtrace+0x29 _witness_debugger(c0c9c297,c782ae00,c0cbe4de,c7131978,c0cbe184,...) at _witness_debugger+0x25 witness_checkorder(c782ae00,9,c0cbe17b,11d,0,...) at witness_checkorder+0x839 _sx_xlock(c782ae00,0,c0cbe17b,11d,c78235e4,...) at _sx_xlock+0x85 ufsdirhash_acquire(e70fcc04,f6535a1c,c0,e769e53c,f65359a4,...) at ufsdirhash_acquire+0x48 ufsdirhash_add(c78235e4,f6535a1c,153c,f6535990,f6535994,...) at ufsdirhash_add+0x13 ufs_direnter(c78cc590,c7abd164,f6535a1c,f6535c00,e70fd410,...) at ufs_direnter+0x779 ufs_mkdir(f6535c28,c0cd3a64,0,0,f6535b6c,...) at ufs_mkdir+0x9a1 VOP_MKDIR_APV(c0da1c00,f6535c28,f6535c00,f6535b6c,0,...) at VOP_MKDIR_APV+0xc5 kern_mkdirat(c7800d80,ffffff9c,bfbfef5a,0,1ff,...) at kern_mkdirat+0x21b kern_mkdir(c7800d80,bfbfef5a,0,1ff,f6535d2c,...) at kern_mkdir+0x2e mkdir(c7800d80,f6535cf8,8,c0c9cb5d,c0d80d80,...) at mkdir+0x29 syscall(f6535d38) 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 0xc78cca14 ufs (ufs) @ kern/vfs_mount.c:1204 2nd 0xc788da14 devfs (devfs) @ ufs/ffs/ffs_softdep.c:1031 KDB: stack backtrace: db_trace_self_wrapper(c0c99346,f648d9f0,c08cdfc5,c08bebbb,c0c9c297,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c08bebbb,c0c9c297,c7131910,c71317d8,f648da4c,...) at kdb_backtrace+0x29 _witness_debugger(c0c9c297,c788da14,c0c8ab35,c71317d8,c0cbc51f,...) at _witness_debugger+0x25 witness_checkorder(c788da14,9,c0cbc516,407,c788da7c,...) at witness_checkorder+0x839 __lockmgr_args(c788da14,80400,c788da7c,0,0,...) at __lockmgr_args+0x7b7 vop_stdlock(f648db54,4,c0c94721,80400,c788d9bc,...) at vop_stdlock+0x65 VOP_LOCK1_APV(c0d7c600,f648db54,c0f69864,c0dbc540,c788d9bc,...) at VOP_LOCK1_APV+0xb5 _vn_lock(c788d9bc,80400,c0cbc516,407,c79e65a0,...) at _vn_lock+0x78 softdep_flushworklist(c79e65a0,f648dc00,c7864240,52b,c78cc42c,...) at softdep_flushworklist+0x47 ffs_sync(c79e65a0,1,c0ca2c83,4f9,80,...) at ffs_sync+0x2fd dounmount(c79e65a0,8000000,c7864240,47e,ff1ca3a5,...) at dounmount+0x44e unmount(c7864240,f648dcf8,8,c7864240,c0d80108,...) at unmount+0x2ff syscall(f648dd38) 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 lock order reversal: 1st 0xc78cc1bc syncer (syncer) @ kern/vfs_subr.c:1695 2nd 0xc7ec9a14 ufs (ufs) @ kern/vfs_subr.c:2085 KDB: stack backtrace: db_trace_self_wrapper(c0c99346,f4230a2c,c08cdfc5,c08bebbb,c0c9c297,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c08bebbb,c0c9c297,c71319e0,c7131910,f4230a88,...) at kdb_backtrace+0x29 _witness_debugger(c0c9c297,c7ec9a14,c0c8ebe2,c7131910,c0ca348e,...) at _witness_debugger+0x25 witness_checkorder(c7ec9a14,9,c0ca3485,825,0,...) at witness_checkorder+0x839 __lockmgr_args(c7ec9a14,80500,c7ec9a7c,0,0,...) at __lockmgr_args+0x7b7 ffs_lock(f4230b94,c08cdd6b,c0ca348e,80500,c7ec99bc,...) at ffs_lock+0xa1 VOP_LOCK1_APV(c0da1c00,f4230b94,c74e7e24,c0dbc540,c7ec99bc,...) at VOP_LOCK1_APV+0xb5 _vn_lock(c7ec99bc,80500,c0ca3485,825,4,...) at _vn_lock+0x78 vget(c7ec99bc,80500,c74e7d80,c7d,f4230c20,...) at vget+0xbb vfs_msync(c79ec000,2,c0ca3485,d76,c79ec000,...) at vfs_msync+0xea sync_fsync(f4230c7c,c0cd320f,c78cc224,f4230c7c,c78cc164,...) at sync_fsync+0x17b VOP_FSYNC_APV(c0d91d00,f4230c7c,c0ca3485,69f,c74e7d80,...) at VOP_FSYNC_APV+0xc5 sync_vnode(c0f5df94,c0f5df80,3e8,6ce,4e20,...) at sync_vnode+0x16b sched_sync(0,f4230d38,c0c9146a,343,c7783aa0,...) at sched_sync+0x273 fork_exit(c091ebd0,0,f4230d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4230d70, ebp = 0 --- Nov 30 22:37:12 x4 su: pho to root on /dev/pts/0 ** Phase 2 - Check Pathnames ** Phase 3 - Check Connectivity ** Phase 4 - Check Reference Counts ** Phase 5 - Check Cyl groups 25862 files, 665296 used, 50111779 free (1787 frags, 6263749 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. Mon Nov 30 22:37:50 CET 2009 FreeBSD/i386 (x4.osted.lan) (console) login: Expensive timeout(9) function: 0xc076ac30(0xc0fbdfe0) 0.012534389 s Nov 30 23:04:00 x4 su: pho to root on /dev/pts/0 Nov 30 23:07:25 x4 kernel: pid 2131 (creat), uid 0 inumber 70691 on /mnt: out of inodes Nov 30 23:07:26 x4 kernel: pid 2135 (creat), uid 0 inumber 70698 on /mnt: out of inodes Nov 30 23:07:27 x4 kernel: pid 2135 (creat), uid 0 inumber 70698 on /mnt: out of inodes Nov 30 23:07:28 x4 kernel: pid 2133 (creat), uid 0 inumber 70701 on /mnt: out of inodes Nov 30 23:07:29 x4 kernel: pid 2126 (creat), uid 0 inumber 70695 on /mnt: out of inodes Nov 30 23:07:30 x4 kernel: pid 2136 (creat), uid 0 inumber 70699 on /mnt: out of inodes Nov 30 23:07:31 x4 kernel: pid 2125 (creat), uid 0 inumber 70687 on /mnt: out of inodes Nov 30 23:07:33 x4 kernel: pid 2081 (mkdir), uid 0 inumber 98667 on /mnt: out of inodes Nov 30 23:07:34 x4 kernel: pid 2117 (creat), uid 0 inumber 70683 on /mnt: out of inodes Nov 30 23:07:35 x4 kernel: pid 2124 (creat), uid 0 inumber 70680 on /mnt: out of inodes Nov 30 23:07:36 x4 kernel: pid 2128 (creat), uid 0 inumber 70706 on /mnt: out of inodes Nov 30 23:07:37 x4 kernel: pid 2120 (creat), uid 0 inumber 70700 on /mnt: out of inodes Nov 30 23:07:38 x4 kernel: pid 2118 (creat), uid 0 inumber 70730 on /mnt: out of inodes Nov 30 23:07:39 x4 kernel: pid 2125 (creat), uid 0 inumber 70687 on /mnt: out of inodes Nov 30 23:07:41 x4 kernel: pid 2126 (creat), uid 0 inumber 70695 on /mnt: out of inodes Nov 30 23:07:43 x4 kernel: pid 2132 (creat), uid 0 inumber 70688 on /mnt: out of inodes Nov 30 23:07:54 x4 kernel: pid 2125 (creat), uid 0 inumber 70687 on /mnt: out of inodes Nov 30 23:07:55 x4 kernel: pid 2126 (creat), uid 0 inumber 70695 on /mnt: out of inodes Nov 30 23:07:59 x4 kernel: pid 2117 (creat), uid 0 inumber 70683 on /mnt: out of inodes Nov 30 23:08:00 x4 kernel: pid 2126 (creat), uid 0 inumber 70695 on /mnt: out of inodes Nov 30 23:08:06 x4 kernel: pid 2137 (creat), uid 0 inumber 70697 on /mnt: out of inodes Nov 30 23:08:07 x4 kernel: pid 2120 (creat), uid 0 inumber 70700 on /mnt: out of inodes Nov 30 23:08:08 x4 kernel: pid 2136 (creat), uid 0 inumber 70699 on /mnt: out of inodes Nov 30 23:08:09 x4 kernel: pid 2133 (creat), uid 0 inumber 70701 on /mnt: out of inodes Nov 30 23:08:10 x4 kernel: pid 2127 (creat), uid 0 inumber 70684 on /mnt: out of inodes Nov 30 23:08:11 x4 kernel: pid 2120 (creat), uid 0 inumber 70700 on /mnt: out of inodes Nov 30 23:08:12 x4 kernel: pid 2120 (creat), uid 0 inumber 70700 on /mnt: out of inodes Nov 30 23:08:13 x4 kernel: pid 2129 (creat), uid 0 inumber 70705 on /mnt: out of inodes Nov 30 23:08:14 x4 kernel: pid 2120 (creat), uid 0 inumber 70700 on /mnt: out of inodes Nov 30 23:08:15 x4 kernel: pid 2120 (creat), uid 0 inumber 70700 on /mnt: out of inodes Nov 30 23:08:16 x4 kernel: pid 2128 (creat), uid 0 inumber 70706 on /mnt: out of inodes Nov 30 23:08:17 x4 kernel: pid 2133 (creat), uid 0 inumber 70701 on /mnt: out of inodes Nov 30 23:08:18 x4 kernel: pid 2122 (creat), uid 0 inumber 70707 on /mnt: out of inodes Nov 30 23:08:19 x4 kernel: pid 2134 (creat), uid 0 inumber 70693 on /mnt: out of inodes Nov 30 23:08:20 x4 kernel: pid 2124 (creat), uid 0 inumber 70680 on /mnt: out of inodes Nov 30 23:08:21 x4 kernel: pid 2126 (creat), uid 0 inumber 70695 on /mnt: out of inodes Nov 30 23:08:22 x4 kernel: pid 2127 (creat), uid 0 inumber 70684 on /mnt: out of inodes Nov 30 23:08:27 x4 kernel: pid 2128 (creat), uid 0 inumber 70706 on /mnt: out of inodes Nov 30 23:08:35 x4 kernel: pid 2120 (creat), uid 0 inumber 70700 on /mnt: out of inodes lock order reversal: 1st 0xc8157058 ufs (ufs) @ kern/vfs_lookup.c:497 2nd 0xe71351a4 bufwait (bufwait) @ ufs/ffs/ffs_softdep.c:6193 3rd 0xcb12974c ufs (ufs) @ kern/vfs_subr.c:2085 KDB: stack backtrace: db_trace_self_wrapper(c0c99346,f674b3e8,c08cdfc5,c08bebbb,c0c9c2b0,...) at db_trace_self_wrapper+0x26 kdb_backtrace(c08bebbb,c0c9c2b0,c712e098,c7131910,f674b444,...) at kdb_backtrace+0x29 _witness_debugger(c0c9c2b0,cb12974c,c0c8ebe2,c7131910,c0ca348e,...) at _witness_debugger+0x25 witness_checkorder(cb12974c,9,c0ca3485,825,0,...) at witness_checkorder+0x839 __lockmgr_args(cb12974c,80100,cb1297b4,0,0,...) at __lockmgr_args+0x7b7 ffs_lock(f674b550,c08cdd6b,c0ca2968,80100,cb1296f4,...) at ffs_lock+0xa1 VOP_LOCK1_APV(c0da1c00,f674b550,c83690a4,c0dbc540,cb1296f4,...) at VOP_LOCK1_APV+0xb5 _vn_lock(cb1296f4,80100,c0ca3485,825,4,...) at _vn_lock+0x78 vget(cb1296f4,80100,c8369000,50,0,...) at vget+0xbb vfs_hash_get(c79eb2d0,ba38,80000,c8369000,f674b6ac,...) at vfs_hash_get+0xed ffs_vgetf(c79eb2d0,ba38,80000,f674b6ac,1,...) at ffs_vgetf+0x49 softdep_sync_metadata(c8157000,0,c0cbddc7,146,0,...) at softdep_sync_metadata+0x5ba ffs_syncvnode(c8157000,1,c8369000,f674b76c,246,...) at ffs_syncvnode+0x3e2 ffs_truncate(c8157000,1a00,0,880,c789a880,...) at ffs_truncate+0x6cf ufs_direnter(c8157000,c9729de8,f674b9f8,f674bc00,0,...) at ufs_direnter+0x946 ufs_makeinode(f674bc00,c091d53f,c0da1c00,f674bb28,c0da2140,...) at ufs_makeinode+0x572 ufs_mknod(f674bc28,c0cd3be8,0,0,f674bb6c,...) at ufs_mknod+0x35 VOP_MKNOD_APV(c0da1c00,f674bc28,f674bc00,f674bb6c,0,...) at VOP_MKNOD_APV+0xc5 kern_mkfifoat(c8369000,ffffff9c,804d240,0,1b6,...) at kern_mkfifoat+0x217 kern_mkfifo(c8369000,804d240,0,1b6,f674bd2c,...) at kern_mkfifo+0x2e mkfifo(c8369000,f674bcf8,8,c0c9caa5,c0d80d10,...) at mkfifo+0x29 syscall(f674bd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (132, FreeBSD ELF32, mkfifo), eip = 0x280eabeb, esp = 0xbfbfe68c, ebp = 0xbfbfe6b8 --- Nov 30 23:23:43 x4 kernel: pid 4955 (creat), uid 0 inumber 94354 on /mnt: out of inodes Nov 30 23:23:44 x4 kernel: pid 4955 (creat), uid 0 inumber 94354 on /mnt: out of inodes Nov 30 23:23:45 x4 kernel: pid 4961 (creat), uid 0 inumber 94407 on /mnt: out of inodes Nov 30 23:23:47 x4 kernel: pid 4962 (creat), uid 0 inumber 94356 on /mnt: out of inodes Nov 30 23:23:48 x4 kernel: pid 4958 (creat), uid 0 inumber 94262 on /mnt: out of inodes Nov 30 23:23:50 x4 kernel: pid 4959 (creat), uid 0 inumber 94268 on /mnt: out of inodes Nov 30 23:23:51 x4 kernel: pid 4952 (creat), uid 0 inumber 94255 on /mnt: out of inodes Nov 30 23:23:52 x4 kernel: pid 4956 (creat), uid 0 inumber 94352 on /mnt: out of inodes Nov 30 23:23:53 x4 kernel: pid 4957 (creat), uid 0 inumber 94353 on /mnt: out of inodes Nov 30 23:23:54 x4 kernel: pid 4962 (creat), uid 0 inumber 94356 on /mnt: out of inodes Nov 30 23:23:55 x4 kernel: pid 4959 (creat), uid 0 inumber 94268 on /mnt: out of inodes Nov 30 23:23:56 x4 kernel: pid 4958 (creat), uid 0 inumber 94262 on /mnt: out of inodes Nov 30 23:23:57 x4 kernel: pid 4958 (creat), uid 0 inumber 94262 on /mnt: out of inodes Nov 30 23:23:58 x4 kernel: pid 4960 (creat), uid 0 inumber 94399 on /mnt: out of inodes Nov 30 23:23:59 x4 kernel: pid 4961 (creat), uid 0 inumber 94407 on /mnt: out of inodes Nov 30 23:24:00 x4 kernel: pid 4960 (creat), uid 0 inumber 94399 on /mnt: out of inodes Nov 30 23:24:01 x4 kernel: pid 4958 (creat), uid 0 inumber 94262 on /mnt: out of inodes Nov 30 23:24:02 x4 kernel: pid 4953 (creat), uid 0 inumber 94351 on /mnt: out of inodes Nov 30 23:24:03 x4 kernel: pid 4952 (creat), uid 0 inumber 94255 on /mnt: out of inodes Nov 30 23:24:04 x4 kernel: pid 4955 (creat), uid 0 inumber 94354 on /mnt: out of inodes Nov 30 23:24:05 x4 kernel: pid 4962 (creat), uid 0 inumber 94356 on /mnt: out of inodes Nov 30 23:24:06 x4 kernel: pid 4959 (creat), uid 0 inumber 94268 on /mnt: out of inodes Nov 30 23:24:07 x4 kernel: pid 4954 (creat), uid 0 inumber 94258 on /mnt: out of inodes Nov 30 23:24:08 x4 kernel: pid 4952 (creat), uid 0 inumber 94255 on /mnt: out of inodes Nov 30 23:24:09 x4 kernel: pid 4957 (creat), uid 0 inumber 94353 on /mnt: out of inodes Nov 30 23:24:10 x4 kernel: pid 4962 (creat), uid 0 inumber 94356 on /mnt: out of inodes Nov 30 23:24:11 x4 kernel: pid 4959 (creat), uid 0 inumber 94268 on /mnt: out of inodes Nov 30 23:24:12 x4 kernel: pid 4952 (creat), uid 0 inumber 94255 on /mnt: out of inodes Nov 30 23:24:13 x4 kernel: pid 4952 (creat), uid 0 inumber 94255 on /mnt: out of inodes Nov 30 23:24:16 x4 kernel: pid 4961 (creat), uid 0 inumber 94407 on /mnt: out of inodes Nov 30 23:24:17 x4 kernel: pid 4953 (creat), uid 0 inumber 94351 on /mnt: out of inodes Nov 30 23:24:18 x4 kernel: pid 4953 (creat), uid 0 inumber 94351 on /mnt: out of inodes Nov 30 23:24:19 x4 kernel: pid 4959 (creat), uid 0 inumber 94268 on /mnt: out of inodes Nov 30 23:24:20 x4 kernel: pid 4961 (creat), uid 0 inumber 94407 on /mnt: out of inodes Nov 30 23:24:23 x4 kernel: pid 4954 (creat), uid 0 inumber 94258 on /mnt: out of inodes Nov 30 23:24:24 x4 kernel: pid 4963 (creat), uid 0 inumber 94401 on /mnt: out of inodes Nov 30 23:24:25 x4 kernel: pid 4962 (creat), uid 0 inumber 94356 on /mnt: out of inodes Nov 30 23:24:26 x4 kernel: pid 4953 (creat), uid 0 inumber 94351 on /mnt: out of inodes Nov 30 23:24:33 x4 kernel: pid 4953 (creat), uid 0 inumber 94351 on /mnt: out of inodes Nov 30 23:24:34 x4 kernel: pid 4957 (creat), uid 0 inumber 94353 on /mnt: out of inodes Nov 30 23:24:35 x4 kernel: pid 4953 (creat), uid 0 inumber 94351 on /mnt: out of inodes Nov 30 23:24:42 x4 kernel: pid 4960 (creat), uid 0 inumber 94399 on /mnt: out of inodes Nov 30 23:24:42 x4 kernel: pid 4959 (creat), uid 0 inumber 94268 on /mnt: out of inodes Nov 30 23:24:43 x4 kernel: pid 4959 (creat), uid 0 inumber 94268 on /mnt: out of inodes Nov 30 23:24:47 x4 kernel: pid 4952 (creat), uid 0 inumber 94255 on /mnt: out of inodes Nov 30 23:24:48 x4 kernel: pid 4957 (creat), uid 0 inumber 94353 on /mnt: out of inodes Nov 30 23:26:28 x4 kernel: pid 5461 (creat), uid 0 inumber 94319 on /mnt: out of inodes Expensive timeout(9) function: 0xc0ae1b00(0) 0.041709482 s Nov 30 23:35:49 x4 kernel: pid 7829 (mkdir), uid 0 inumber 21939 on /mnt: out of inodes Nov 30 23:35:50 x4 kernel: pid 7785 (creat), uid 0 inumber 47169 on /mnt: out of inodes Nov 30 23:35:55 x4 kernel: pid 7805 (creat), uid 0 inumber 47176 on /mnt: out of inodes Nov 30 23:35:56 x4 kernel: pid 7808 (creat), uid 0 inumber 47178 on /mnt: out of inodes Nov 30 23:54:58 x4 kernel: pid 12779 (creat), uid 0 inumber 47132 on /mnt: out of inodes Nov 30 23:54:59 x4 kernel: pid 12788 (creat), uid 0 inumber 70672 on /mnt: out of inodes Nov 30 23:55:00 x4 kernel: pid 12783 (creat), uid 0 inumber 70664 on /mnt: out of inodes Nov 30 23:55:01 x4 kernel: pid 12778 (creat), uid 0 inumber 70669 on /mnt: out of inodes Nov 30 23:55:02 x4 kernel: pid 12776 (creat), uid 0 inumber 70666 on /mnt: out of inodes Nov 30 23:55:03 x4 kernel: pid 12773 (creat), uid 0 inumber 70668 on /mnt: out of inodes Nov 30 23:55:04 x4 kernel: pid 12789 (creat), uid 0 inumber 70670 on /mnt: out of inodes Nov 30 23:55:05 x4 kernel: pid 12781 (creat), uid 0 inumber 70671 on /mnt: out of inodes Nov 30 23:55:06 x4 kernel: pid 12776 (creat), uid 0 inumber 70666 on /mnt: out of inodes Nov 30 23:55:07 x4 kernel: pid 12775 (creat), uid 0 inumber 47133 on /mnt: out of inodes Nov 30 23:55:08 x4 kernel: pid 12772 (creat), uid 0 inumber 47139 on /mnt: out of inodes Nov 30 23:55:09 x4 kernel: pid 12772 (creat), uid 0 inumber 47139 on /mnt: out of inodes Nov 30 23:55:10 x4 kernel: pid 12770 (creat), uid 0 inumber 47134 on /mnt: out of inodes Nov 30 23:55:11 x4 kernel: pid 12775 (creat), uid 0 inumber 47133 on /mnt: out of inodes Nov 30 23:55:12 x4 kernel: pid 12776 (creat), uid 0 inumber 70666 on /mnt: out of inodes Nov 30 23:55:13 x4 kernel: pid 12782 (creat), uid 0 inumber 23554 on /mnt: out of inodes Nov 30 23:55:14 x4 kernel: pid 12779 (creat), uid 0 inumber 47132 on /mnt: out of inodes Nov 30 23:55:15 x4 kernel: pid 12782 (creat), uid 0 inumber 23554 on /mnt: out of inodes Nov 30 23:55:17 x4 kernel: pid 12784 (creat), uid 0 inumber 23553 on /mnt: out of inodes Nov 30 23:55:26 x4 kernel: pid 12789 (creat), uid 0 inumber 70670 on /mnt: out of inodes Nov 30 23:55:27 x4 kernel: pid 12773 (creat), uid 0 inumber 70668 on /mnt: out of inodes Nov 30 23:55:28 x4 kernel: pid 12788 (creat), uid 0 inumber 70672 on /mnt: out of inodes Nov 30 23:55:29 x4 kernel: pid 12776 (creat), uid 0 inumber 70666 on /mnt: out of inodes Nov 30 23:55:30 x4 kernel: pid 12781 (creat), uid 0 inumber 70671 on /mnt: out of inodes Nov 30 23:55:31 x4 kernel: pid 12789 (creat), uid 0 inumber 70670 on /mnt: out of inodes Nov 30 23:55:32 x4 kernel: pid 12779 (creat), uid 0 inumber 47132 on /mnt: out of inodes Nov 30 23:55:33 x4 kernel: pid 12776 (creat), uid 0 inumber 70666 on /mnt: out of inodes Nov 30 23:55:34 x4 kernel: pid 12783 (creat), uid 0 inumber 70664 on /mnt: out of inodes Nov 30 23:55:35 x4 kernel: pid 12776 (creat), uid 0 inumber 70666 on /mnt: out of inodes Nov 30 23:55:36 x4 kernel: pid 12779 (creat), uid 0 inumber 47132 on /mnt: out of inodes Nov 30 23:55:37 x4 kernel: pid 12781 (creat), uid 0 inumber 70671 on /mnt: out of inodes Nov 30 23:55:38 x4 kernel: pid 12784 (creat), uid 0 inumber 23553 on /mnt: out of inodes ~KDB: enter: Line break on console [thread pid 11 tid 100005 ] Stopped at kdb_enter+0x3a: movl $0,kdb_why db> run pho db:0:pho> bt Tracing pid 11 tid 100005 td 0xc71796c0 kdb_enter(c0c3f2b8,c0c7f67a,c6e0abd4,c74cc380,0,...) at kdb_enter+0x3a uart_intr(c74cc300,c71796c0,c71578d0,c7174d80,4,...) at uart_intr+0x126 intr_event_handle(c7174d80,c6e0ac2c,c0f7adac,1f4,c73c0800,...) at intr_event_handle+0x5c intr_execute_handlers(c71578d0,c6e0ac2c,1,c6e0ac6c,c0ba6e74,...) at intr_execute_handlers+0x49 lapic_handle_intr(30,c6e0ac2c) at lapic_handle_intr+0x4c Xapic_isr1() at Xapic_isr1+0x34 --- interrupt, eip = 0xc0b9b295, esp = 0xc6e0ac6c, ebp = 0xc6e0ac6c --- acpi_cpu_c1(1,c6e0acd4,1,ffffffff,c6e0acb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e0acb4,c0bb29eb,0,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(0,c6e0acf8,c08adede,0,c6e0acd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(0,c6e0acd4,c0c97b80,a09,c71796c0,...) at cpu_idle+0x1b sched_idletd(0,c6e0ad38,c0c9146a,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08adca0,0,c6e0ad38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e0ad70, ebp = 0 --- db:0:bt> show allpcpu Current CPU: 1 cpuid = 0 dynamic pcpu = 0x668400 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 = 0x6027400 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 = 0x602a400 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 = 0x602d400 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 62735 (sshd) thread 0xc90a3b40 (100343) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc7cfe3c4) locked @ kern/uipc_sockbuf.c:148 Process 31786 (find) thread 0xc858eb40 (100460) shared lockmgr ufs (ufs) r = 0 (0xc929fe40) locked @ kern/vfs_lookup.c:497 Process 1912 (sshd) thread 0xc8361240 (100259) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc7ad6898) locked @ kern/uipc_sockbuf.c:148 Process 1909 (sshd) thread 0xc836b240 (100257) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc7cf8bd0) locked @ kern/uipc_sockbuf.c:148 Process 1908 (sshd) thread 0xc836b480 (100256) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc7ad63c4) locked @ kern/uipc_sockbuf.c:148 Process 1277 (sshd) thread 0xc7e9f240 (100151) exclusive sx so_rcv_sx (so_rcv_sx) r = 0 (0xc7cfe898) locked @ kern/uipc_sockbuf.c:148 Process 17 (syncer) thread 0xc74e7d80 (100071) exclusive lockmgr bufwait (bufwait) r = 0 (0xe733e56c) locked @ kern/vfs_bio.c:1835 exclusive lockmgr ufs (ufs) r = 0 (0xcb3858b0) locked @ kern/vfs_subr.c:2085 exclusive lockmgr syncer (syncer) r = 0 (0xc90ff74c) locked @ kern/vfs_subr.c:1695 db:0:alllocks> show lockedvnods Locked vnodes 0xc90ff6f4: tag syncer, type VNON usecount 1, writecount 0, refcount 2 mountedhere 0 flags () lock type syncer: EXCL by thread 0xc74e7d80 (pid 17) #0 0xc0873ac0 at __lockmgr_args+0xb90 #1 0xc090cc25 at vop_stdlock+0x65 #2 0xc0bdd4b5 at VOP_LOCK1_APV+0xb5 #3 0xc092a7f8 at _vn_lock+0x78 #4 0xc091ead2 at sync_vnode+0x142 #5 0xc091ee43 at sched_sync+0x273 #6 0xc0860f08 at fork_exit+0xb8 #7 0xc0ba6b20 at fork_trampoline+0x8 0xc929fde8: tag ufs, type VDIR usecount 5, writecount 0, refcount 8 mountedhere 0 flags () v_object 0xc8ef3770 ref 0 pages 1 lock type ufs: SHARED (count 1) #0 0xc08734b2 at __lockmgr_args+0x582 #1 0xc0acbc51 at ffs_lock+0xa1 #2 0xc0bdd4b5 at VOP_LOCK1_APV+0xb5 #3 0xc092a7f8 at _vn_lock+0x78 #4 0xc09112c6 at lookup+0x106 #5 0xc091267f at namei+0x57f #6 0xc0921e92 at kern_statat_vnhook+0x72 #7 0xc0921fec at kern_statat+0x3c #8 0xc0922026 at kern_lstat+0x36 #9 0xc09220cf at lstat+0x2f #10 0xc0bc4684 at syscall+0x2b4 #11 0xc0ba6b10 at Xint0x80_syscall+0x20 ino 94232, on dev md5a 0xcb385858: tag ufs, type VREG usecount 2, writecount 0, refcount 6 mountedhere 0 flags () v_object 0xc869c198 ref 0 pages 1084 lock type ufs: EXCL by thread 0xc74e7d80 (pid 17) with exclusive waiters pending with shared waiters pending #0 0xc0873ac0 at __lockmgr_args+0xb90 #1 0xc0acbc51 at ffs_lock+0xa1 #2 0xc0bdd4b5 at VOP_LOCK1_APV+0xb5 #3 0xc092a7f8 at _vn_lock+0x78 #4 0xc091e49b at vget+0xbb #5 0xc092046a at vfs_msync+0xea #6 0xc092074b at sync_fsync+0x17b #7 0xc0bdb0b5 at VOP_FSYNC_APV+0xc5 #8 0xc091eafb at sync_vnode+0x16b #9 0xc091ee43 at sched_sync+0x273 #10 0xc0860f08 at fork_exit+0xb8 #11 0xc0ba6b20 at fork_trampoline+0x8 ino 97231, on dev md5a db:0:lockedvnods> show mount 0xc77acb40 /dev/ad4s1a on / (ufs) 0xc77ad000 devfs on /dev (devfs) 0xc79ec000 /dev/ad4s1f on /usr (ufs) 0xc79ebb40 /dev/ad4s1d on /var (ufs) 0xc79eb870 procfs on /proc (procfs) 0xc79eb5a0 linprocfs on /usr/compat/linux/proc (linprocfs) 0xc79e62d0 /dev/ad4s1e on /tmp (ufs) 0xc79eb000 /dev/md5a on /mnt (ufs) More info: show mount db:0:mount> ps pid ppid pgrp uid state wmesg wchan cmd 63234 1920 1918 1001 S nanslp 0xc0df16c4 sleep 62738 62737 62738 1001 Ss+ ttyin 0xc7ef6a70 bash 62737 62735 62735 1001 S select 0xc8526324 sshd 62735 1245 62735 0 Ss sbwait 0xc7cfe3f0 sshd 31789 31787 31679 0 S piperd 0xc8a937a8 cat 31787 31782 31679 0 S wait 0xc8658000 sh 31786 31782 31679 0 S ufs 0xcb3858b0 find 31782 31779 31679 0 S wait 0xc7e9b550 sh 31781 31780 31679 0 S piperd 0xc8599620 mail 31780 31772 31679 0 S wait 0xc85887f8 sh 31779 31772 31679 0 S wait 0xca96dd48 sh 31772 31771 31679 0 S wait 0xc7fac7f8 sh 31771 31686 31679 0 S wait 0xc8290d48 sh 31688 31687 31679 0 S piperd 0xc7af9ab8 mail 31687 31679 31679 0 S wait 0xcbb107f8 sh 31686 31679 31679 0 S wait 0xc8291aa0 sh 31679 31677 31679 0 Ss wait 0xcbb12d48 sh 31677 1264 1264 0 S piperd 0xca92a930 cron 15235 1 1669 0 S+ ufs 0xcb3858b0 rw 14614 0 0 0 SL mdwait 0xc87d6000 [md5] 1921 1918 1918 1001 S piperd 0xc7f72c40 awk 1920 1918 1918 1001 S wait 0xc89a92a8 sh 1919 1917 1919 1001 Ss kqread 0xc89af780 tail 1918 1915 1918 1001 Ss wait 0xc8321d48 sh 1917 1912 1912 1001 S select 0xc850ce24 sshd 1916 1914 1916 1001 Ss+ select 0xc860f7a4 top 1915 1908 1908 1001 S select 0xc8621664 sshd 1914 1909 1909 1001 S select 0xc861fd24 sshd 1912 1245 1912 0 Ss sbwait 0xc7ad68c4 sshd 1909 1245 1909 0 Ss sbwait 0xc7cf8bfc sshd 1908 1245 1908 0 Ss sbwait 0xc7ad63f0 sshd 1663 1659 1663 0 S+ ttyin 0xc7dadc70 bash 1659 1658 1659 0 S+ pause 0xc7bd9af8 csh 1658 1280 1658 1001 S+ wait 0xc7faa550 su 1555 1 1555 1001 Ss select 0xc7bbea24 dbus-daemon 1554 1 1540 1001 S+ select 0xc772abe4 dbus-launch 1380 1 1380 0 Ss+ ttyin 0xc74fb270 getty 1379 1 1379 0 Ss+ ttyin 0xc74fb070 getty 1378 1 1378 0 Ss+ ttyin 0xc74fbe70 getty 1377 1 1377 0 Ss+ ttyin 0xc74fc270 getty 1376 1 1376 0 Ss+ ttyin 0xc74fc070 getty 1375 1 1375 0 Ss+ ttyin 0xc74fbc70 getty 1374 1 1374 0 Ss+ ttyin 0xc74fba70 getty 1373 1 1373 0 Ss+ ttyin 0xc74fb870 getty 1372 1 1372 0 Ss+ ttyin 0xc7286e70 getty 1341 1 1341 0 Ss select 0xc7771ca4 inetd 1305 1 1305 0 Ss nanslp 0xc0df16c4 watchdogd 1280 1279 1280 1001 Ss+ wait 0xc77ff550 bash 1279 1277 1277 1001 S select 0xc7770c64 sshd 1277 1245 1277 0 Ss sbwait 0xc7cfe8c4 sshd 1264 1 1264 0 Ss nanslp 0xc0df16c4 cron 1257 1 1257 25 Ss pause 0xc7e9baf8 sendmail 1253 1 1253 0 Ss select 0xc7bbeca4 sendmail 1245 1 1245 0 Ss select 0xc782fea4 sshd 1200 1 1200 0 Ss select 0xc782fa64 ntpd 1061 1 1061 0 Ss select 0xc7830464 moused 1028 1 1028 0 Ss rpcsvc 0xc74f3050 NLM: master 1021 1 1021 0 Ss select 0xc7770164 rpc.statd 1014 1013 1013 0 S (threaded) nfsd 100139 S rpcsvc 0xc789cc90 nfsd: service 100138 S rpcsvc 0xc789ccd0 nfsd: service 100137 S rpcsvc 0xc789cd10 nfsd: service 100100 S rpcsvc 0xc7830e90 nfsd: master 1013 1 1013 0 Ss select 0xc7bbeae4 nfsd 1004 1 1004 0 Ss select 0xc7830764 mountd 911 1 911 0 Ss select 0xc77b11e4 rpcbind 886 1 886 0 Ss select 0xc77b2ea4 syslogd 696 1 696 0 Ss select 0xc77b16a4 devd 20 0 0 0 SL flowclea 0xc0f5e188 [flowcleaner] 19 0 0 0 SL sdflush 0xc0f698c0 [softdepflush] 18 0 0 0 SL vlruwt 0xc77837f8 [vnlru] 17 0 0 0 SL pgtblk 0xc3ad8f08 [syncer] 16 0 0 0 SL psleep 0xc0f5dcc8 [bufdaemon] 15 0 0 0 SL pgzero 0xc0f6a698 [pagezero] 9 0 0 0 SL psleep 0xc0f6a2c4 [vmdaemon] 8 0 0 0 SL psleep 0xc0f6a28c [pagedaemon] 7 0 0 0 SL - 0xc73c0c3c [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 0xc0dbd8d4 [xpt_thrd] 13 0 0 0 SL - 0xc0df1524 [yarrow] 4 0 0 0 SL - 0xc0def2e4 [g_down] 3 0 0 0 SL - 0xc0def2e0 [g_up] 2 0 0 0 SL - 0xc0def2d8 [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: +] 100022 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 0xc0f691e0 [audit] 0 0 0 0 SLs (threaded) [kernel] 100061 D - 0xc73a1880 [fw0_taskq] 100026 D - 0xc73440c0 [kqueue taskq] 100025 D - 0xc7344100 [acpi_task_2] 100024 D - 0xc7344100 [acpi_task_1] 100023 D - 0xc7344100 [acpi_task_0] 100018 D - 0xc7344540 [thread taskq] 100016 D - 0xc715ed80 [firmware taskq] 100000 D sched 0xc0def3c0 [swapper] db:0:ps> allt Tracing command sleep pid 63234 tid 100158 td 0xc7e9e240 sched_switch(c7e9e240,0,104,191,737f6b12,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7e9e240,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(2711,c08c46d0,c7e9e240,0,100,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c0df16c4,5c,c0c972a4,100,0,...) at sleepq_timedwait_sig+0x1a _sleep(c0df16c4,0,15c,c0c972a4,2711,...) at _sleep+0x31e kern_nanosleep(c7e9e240,f65b3c64,f65b3c6c,a,0,...) at kern_nanosleep+0xc1 nanosleep(c7e9e240,f65b3cf8,8,c7e9e240,c0d818e0,...) at nanosleep+0x6f syscall(f65b3d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (240, FreeBSD ELF32, nanosleep), eip = 0x2815bac7, esp = 0xbfbfecbc, ebp = 0xbfbfecf8 --- Tracing command bash pid 62738 tid 100412 td 0xcacf6900 sched_switch(cacf6900,0,104,191,198a1720,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(cacf6900,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c7ef6a04,0,c0c94721,cacf6900,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7ef6a70,0,f69beb0c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c7ef6a70,c7ef6a04,c0c9e3cc,50e,0,...) at _cv_wait_sig+0x240 tty_wait(c7ef6a00,c7ef6a70,f69bec58,1,0,...) at tty_wait+0x71 ttydisc_read(c7ef6a00,f69bec58,0,9e,0,...) at ttydisc_read+0x22c ttydev_read(c7caf500,f69bec58,0,0,1,...) at ttydev_read+0xaa devfs_read_f(c78208c0,f69bec58,c7f65100,0,cacf6900,...) at devfs_read_f+0x7e dofileread(f69bec58,ffffffff,ffffffff,0,c78208c0,...) at dofileread+0x96 kern_readv(cacf6900,0,f69bec58,f69bec78,1,...) at kern_readv+0x58 read(cacf6900,f69becf8,c,c0c9cb21,c0d7fef4,...) at read+0x4f syscall(f69bed38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x2834b0a3, esp = 0xbfbfe00c, ebp = 0xbfbfe038 --- Tracing command sshd pid 62737 tid 100428 td 0xcacf4480 sched_switch(cacf4480,0,104,191,198bbf66,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(cacf4480,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c8526310,0,c0c94721,cacf4480,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8526324,0,f69eea7c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c8526324,c8526310,c0c9c698,603,c78080a8,...) at _cv_wait_sig+0x240 seltdwait(c78080a8,58,c97df680,cacf4480,200246,...) at seltdwait+0xa2 kern_select(cacf4480,c,286030b8,286030dc,0,0,20,0,28100c70) at kern_select+0x4f4 select(cacf4480,f69eecf8,14,c0c7e4bf,c0d808cc,...) at select+0x66 syscall(f69eed38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x283ce023, esp = 0xbfbfde5c, ebp = 0xbfbfdea8 --- Tracing command sshd pid 62735 tid 100343 td 0xc90a3b40 sched_switch(c90a3b40,0,104,191,84d4c614,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,58,...) at mi_switch+0x200 sleepq_switch(c90a3b40,0,c0c9a453,18b,58,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7cfe3f0,58,c0ca01cd,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7cfe3f0,c7cfe3b0,158,c0ca01cd,0) at _sleep+0x354 sbwait(c7cfe38c,4,c0ca029c,5c5,c7cfe3b0,...) at sbwait+0x76 soreceive_generic(c7cfe338,0,f6883c58,0,0,...) at soreceive_generic+0x3f0 soreceive(c7cfe338,0,f6883c58,0,0,0) at soreceive+0x38 soo_read(c7ea5498,f6883c58,c98ff200,0,c90a3b40,...) at soo_read+0x4e dofileread(f6883c58,ffffffff,ffffffff,0,c7ea5498,...) at dofileread+0x96 kern_readv(c90a3b40,5,f6883c58,f6883c78,1,...) at kern_readv+0x58 read(c90a3b40,f6883cf8,c,c0cb7ff4,c0d7fef4,...) at read+0x4f syscall(f6883d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x283ce0a3, esp = 0xbfbfde4c, ebp = 0xbfbfde88 --- Tracing command cat pid 31789 tid 100384 td 0xc865d240 sched_switch(c865d240,0,104,191,ef2e2c6b,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c865d240,0,c0c9a453,18b,4c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8a937a8,4c,c0c9c849,100,0,...) at sleepq_wait_sig+0x17 _sleep(c8a937a8,c8a93918,14c,c0c9c849,0,...) at _sleep+0x354 pipe_read(c788a8f8,f690cc58,c7ae3900,0,c865d240,...) at pipe_read+0x417 dofileread(f690cc58,ffffffff,ffffffff,0,c788a8f8,...) at dofileread+0x96 kern_readv(c865d240,0,f690cc58,f690cc78,1,...) at kern_readv+0x58 read(c865d240,f690ccf8,c,c865d240,c0d7fef4,...) at read+0x4f syscall(f690cd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x2817c0a3, esp = 0xbfbfeccc, ebp = 0xbfbfedd8 --- Tracing command sh pid 31787 tid 100329 td 0xca457480 sched_switch(ca457480,0,104,191,eeb4bb62,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(ca457480,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8658000,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c8658000,c8658088,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(ca457480,ffffffff,f6830c74,2,0,...) at kern_wait+0xb76 wait4(ca457480,f6830cf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f6830d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe5ec, ebp = 0xbfbfe608 --- Tracing command find pid 31786 tid 100460 td 0xc858eb40 sched_switch(c858eb40,0,104,191,6dab5eac,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,50,...) at mi_switch+0x200 sleepq_switch(c858eb40,0,c0c9a453,24b,cb3858b0,...) at sleepq_switch+0x15f sleepq_wait(cb3858b0,50,c0c8ebe2,4,1,...) at sleepq_wait+0x63 __lockmgr_args(cb3858b0,200100,cb385918,0,0,...) at __lockmgr_args+0x4a5 ffs_lock(f6a70914,c08cdd6b,c0ca2305,200100,cb385858,...) at ffs_lock+0xa1 VOP_LOCK1_APV(c0da1c00,f6a70914,c858ebe4,c0dbc540,cb385858,...) at VOP_LOCK1_APV+0xb5 _vn_lock(cb385858,200100,c0ca3485,825,0,...) at _vn_lock+0x78 vget(cb385858,200100,c858eb40,231,0,...) at vget+0xbb cache_lookup(c929fde8,f6a70b74,f6a70b88,f6a70b74,c7ae3900,...) at cache_lookup+0x67b vfs_cache_lookup(f6a70a50,c0ca40fb,c0dbc180,200000,f6a70b5c,...) at vfs_cache_lookup+0xad VOP_LOOKUP_APV(c0da1c00,f6a70a50,f6a70b88,1f1,f6a70b74,...) at VOP_LOOKUP_APV+0xe5 lookup(f6a70b5c,c0ca2a77,ea,c5,ffffff9c,...) at lookup+0x67b namei(f6a70b5c,100000,f6a70b94,c0873d22,c929fe40,...) at namei+0x57f kern_statat_vnhook(c858eb40,200,ffffff9c,28247238,0,...) at kern_statat_vnhook+0x72 kern_statat(c858eb40,200,ffffff9c,28247238,0,...) at kern_statat+0x3c kern_lstat(c858eb40,28247238,0,f6a70c18,0,...) at kern_lstat+0x36 lstat(c858eb40,f6a70cf8,8,c0c9ced3,c0d81368,...) at lstat+0x2f syscall(f6a70d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (190, FreeBSD ELF32, lstat), eip = 0x28172573, esp = 0xbfbfeb6c, ebp = 0xbfbfebf8 --- Tracing command sh pid 31782 tid 100152 td 0xc7e9f000 sched_switch(c7e9f000,0,104,191,ee57700a,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7e9f000,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7e9b550,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7e9b550,c7e9b5d8,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c7e9f000,ffffffff,f658bc74,2,0,...) at kern_wait+0xb76 wait4(c7e9f000,f658bcf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f658bd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfeb2c, ebp = 0xbfbfeb48 --- Tracing command mail pid 31781 tid 100288 td 0xc8328900 sched_switch(c8328900,0,104,191,e860e3cc,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c8328900,0,c0c9a453,18b,4c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8599620,4c,c0c9c849,100,0,...) at sleepq_wait_sig+0x17 _sleep(c8599620,c8599790,14c,c0c9c849,0,...) at _sleep+0x354 pipe_read(c788a968,f67a1c58,c7ae3900,0,c8328900,...) at pipe_read+0x417 dofileread(f67a1c58,ffffffff,ffffffff,0,c788a968,...) at dofileread+0x96 kern_readv(c8328900,0,f67a1c58,f67a1c78,1,...) at kern_readv+0x58 read(c8328900,f67a1cf8,c,c0c9cb6a,c0d7fef4,...) at read+0x4f syscall(f67a1d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x2818d0a3, esp = 0xbfbfdfac, ebp = 0xbfbfdfc8 --- Tracing command sh pid 31780 tid 100461 td 0xc858e900 sched_switch(c858e900,0,104,191,e683b893,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c858e900,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c85887f8,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c85887f8,c8588880,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c858e900,ffffffff,f6a73c74,2,0,...) at kern_wait+0xb76 wait4(c858e900,f6a73cf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f6a73d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe89c, ebp = 0xbfbfe8b8 --- Tracing command sh pid 31779 tid 100404 td 0xca976240 sched_switch(ca976240,0,104,191,e6948abc,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(ca976240,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(ca96dd48,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(ca96dd48,ca96ddd0,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(ca976240,ffffffff,f697bc74,2,0,...) at kern_wait+0xb76 wait4(ca976240,f697bcf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f697bd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe6ec, ebp = 0xbfbfe708 --- Tracing command sh pid 31772 tid 100186 td 0xc80a26c0 sched_switch(c80a26c0,0,104,191,e67386b2,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c80a26c0,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7fac7f8,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7fac7f8,c7fac880,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c80a26c0,ffffffff,f6632c74,2,0,...) at kern_wait+0xb76 wait4(c80a26c0,f6632cf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f6632d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfeb9c, ebp = 0xbfbfebb8 --- Tracing command sh pid 31771 tid 100178 td 0xc8173900 sched_switch(c8173900,0,104,191,e515f3ec,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c8173900,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8290d48,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c8290d48,c8290dd0,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c8173900,ffffffff,f6612c74,2,0,...) at kern_wait+0xb76 wait4(c8173900,f6612cf8,10,c8173900,c0d7ff64,...) at wait4+0x3b syscall(f6612d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfea5c, ebp = 0xbfbfea78 --- Tracing command mail pid 31688 tid 100386 td 0xc8655d80 sched_switch(c8655d80,0,104,191,e396be3c,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c8655d80,0,c0c9a453,18b,4c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7af9ab8,4c,c0c9c849,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7af9ab8,c7af9c28,14c,c0c9c849,0,...) at _sleep+0x354 pipe_read(c8a7ba10,f6912c58,c7ae3900,0,c8655d80,...) at pipe_read+0x417 dofileread(f6912c58,ffffffff,ffffffff,0,c8a7ba10,...) at dofileread+0x96 kern_readv(c8655d80,0,f6912c58,f6912c78,1,...) at kern_readv+0x58 read(c8655d80,f6912cf8,c,c0c357d8,c0d7fef4,...) at read+0x4f syscall(f6912d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x2818d0a3, esp = 0xbfbfdfbc, ebp = 0xbfbfdfd8 --- Tracing command sh pid 31687 tid 100420 td 0xcacf56c0 sched_switch(cacf56c0,0,104,191,1e1cfe7b,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(cacf56c0,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(cbb107f8,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(cbb107f8,cbb10880,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(cacf56c0,ffffffff,f69d6c74,2,0,...) at kern_wait+0xb76 wait4(cacf56c0,f69d6cf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f69d6d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe8cc, ebp = 0xbfbfe8e8 --- Tracing command sh pid 31686 tid 100173 td 0xc8174480 sched_switch(c8174480,0,104,191,e43e37a6,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c8174480,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8291aa0,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c8291aa0,c8291b28,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c8174480,ffffffff,f65fec74,2,0,...) at kern_wait+0xb76 wait4(c8174480,f65fecf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f65fed38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe71c, ebp = 0xbfbfe738 --- Tracing command sh pid 31679 tid 100471 td 0xc8597b40 sched_switch(c8597b40,0,104,191,1e0cf321,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c8597b40,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(cbb12d48,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(cbb12d48,cbb12dd0,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c8597b40,ffffffff,f6a91c74,2,0,...) at kern_wait+0xb76 wait4(c8597b40,f6a91cf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f6a91d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfebcc, ebp = 0xbfbfebe8 --- Tracing command cron pid 31677 tid 100462 td 0xc858e6c0 sched_switch(c858e6c0,0,104,191,10638c85,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c858e6c0,0,c0c9a453,18b,4c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(ca92a930,4c,c0c9c849,100,0,...) at sleepq_wait_sig+0x17 _sleep(ca92a930,ca92aaa0,14c,c0c9c849,0,...) at _sleep+0x354 pipe_read(c789f380,f6a76c58,c7ebd400,0,c858e6c0,...) at pipe_read+0x417 dofileread(f6a76c58,ffffffff,ffffffff,0,c789f380,...) at dofileread+0x96 kern_readv(c858e6c0,5,f6a76c58,f6a76c78,1,...) at kern_readv+0x58 read(c858e6c0,f6a76cf8,c,c0c9cb6a,c0d7fef4,...) at read+0x4f syscall(f6a76d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x281980a3, esp = 0xbfbfe60c, ebp = 0xbfbfe628 --- Tracing command rw pid 15235 tid 100331 td 0xca457000 sched_switch(ca457000,0,104,191,8c74b0fd,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,50,...) at mi_switch+0x200 sleepq_switch(ca457000,0,c0c9a453,24b,cb3858b0,...) at sleepq_switch+0x15f sleepq_wait(cb3858b0,50,c0c8ebe2,4,1,...) at sleepq_wait+0x63 __lockmgr_args(cb3858b0,200400,cb385918,0,0,...) at __lockmgr_args+0x4a5 ffs_lock(f6836964,44,0,200400,cb385858,...) at ffs_lock+0xa1 VOP_LOCK1_APV(c0da1c00,f6836964,9ea,c0dbc540,cb385858,...) at VOP_LOCK1_APV+0xb5 _vn_lock(cb385858,200400,c0cc2b02,80,cb385858,...) at _vn_lock+0x78 vnode_grab_next_page(9ea,0,c08cdd6b,c0cc1916,cb385858,...) at vnode_grab_next_page+0x161 vnode_pager_read_cluster(c3ad8f08,0,c0cc2b02,f8,c090caea,...) at vnode_pager_read_cluster+0x2ea vnode_pager_read(cb385858,f6836c58,7f0000,224,0,...) at vnode_pager_read+0x279 vn_read_chunk(cb385858,f6836c58,c789a880,c789a880,7f0000,...) at vn_read_chunk+0xcc vn_read(c8a7b000,f6836c58,c789a880,0,ca457000,...) at vn_read+0xd9 dofileread(f6836c58,ffffffff,ffffffff,0,c8a7b000,...) at dofileread+0x96 kern_readv(ca457000,4,f6836c58,f6836c78,1,...) at kern_readv+0x58 read(ca457000,f6836cf8,c,c0c357d8,c0d7fef4,...) at read+0x4f syscall(f6836d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x2818e0a3, esp = 0xbfbfd63c, ebp = 0xbfbfe6e8 --- Tracing command md5 pid 14614 tid 100181 td 0xc8173240 sched_switch(c8173240,0,104,191,6daabc33,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c8173240,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c87d6000,4c,c0c69b70,0,0,...) at sleepq_wait+0x63 _sleep(c87d6000,c87d6020,24c,c0c69b70,0,...) at _sleep+0x36b md_kthread(c87d6000,f661ed38,c0c9146a,343,c8290550,...) at md_kthread+0x125 fork_exit(c06b44c0,c87d6000,f661ed38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf661ed70, ebp = 0 --- Tracing command awk pid 1921 tid 100268 td 0xc8369900 sched_switch(c8369900,0,104,191,73452a62,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c8369900,0,c0c9a453,18b,4c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7f72c40,4c,c0c9c849,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7f72c40,c7f72db0,14c,c0c9c849,0,...) at _sleep+0x354 pipe_read(c78082a0,f673bc58,c8a34600,0,c8369900,...) at pipe_read+0x417 dofileread(f673bc58,ffffffff,ffffffff,0,c78082a0,...) at dofileread+0x96 kern_readv(c8369900,0,f673bc58,f673bc78,1,...) at kern_readv+0x58 read(c8369900,f673bcf8,c,c8369900,c0d7fef4,...) at read+0x4f syscall(f673bd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x281b20a3, esp = 0xbfbfe97c, ebp = 0xbfbfe998 --- Tracing command sh pid 1920 tid 100267 td 0xc8369b40 sched_switch(c8369b40,0,104,191,7351927b,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c8369b40,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c89a92a8,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c89a92a8,c89a9330,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c8369b40,ffffffff,f6737c74,2,0,...) at kern_wait+0xb76 wait4(c8369b40,f6737cf8,10,c0c9cc11,c0d7ff64,...) at wait4+0x3b syscall(f6737d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfe94c, ebp = 0xbfbfe968 --- Tracing command tail pid 1919 tid 100266 td 0xc835e480 sched_switch(c835e480,0,104,191,c6d91b13,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,58,...) at mi_switch+0x200 sleepq_switch(c835e480,0,c0c9a453,18b,58,...) at sleepq_switch+0x15f sleepq_catch_signals(3e9,c08c46d0,c835e480,1,100,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c89af780,58,c0c910b4,100,0,...) at sleepq_timedwait_sig+0x1a _sleep(c89af780,c89af780,158,c0c910b4,3e9,...) at _sleep+0x31e kern_kevent(c835e480,4,0,1,f6734c58,...) at kern_kevent+0x364 kevent(c835e480,f6734cf8,18,c0c357d8,c0d82654,...) at kevent+0x19b syscall(f6734d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (363, FreeBSD ELF32, kevent), eip = 0x2815fcab, esp = 0xbfbfeb5c, ebp = 0xbfbfec18 --- Tracing command sh pid 1918 tid 100265 td 0xc835e6c0 sched_switch(c835e6c0,0,104,191,7df4166b,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c835e6c0,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c8321d48,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c8321d48,c8321dd0,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c835e6c0,ffffffff,f6731c74,2,0,...) at kern_wait+0xb76 wait4(c835e6c0,f6731cf8,10,c835e6c0,c0d7ff64,...) at wait4+0x3b syscall(f6731d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2815e06b, esp = 0xbfbfeb5c, ebp = 0xbfbfeb78 --- Tracing command sshd pid 1917 tid 100264 td 0xc8369d80 Tracing command top pid 1916 tid 100263 td 0xc835e900 sched_switch(c835e900,0,104,191,a20ad2ee,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c835e900,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f672aa4c,c087b0da,c860f790,0,c835e900,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c860f7a4,0,f672aa7c,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c860f7a4,c860f790,3e9,603,c80a4310,...) at _cv_timedwait_sig+0x250 seltdwait(f672ac28,f672ac30,c8a34700,c835e900,5b1b0a0a,...) at seltdwait+0x8a kern_select(c835e900,2,bfbfebec,0,0,f672ac70,20,1,0) at kern_select+0x4f4 select(c835e900,f672acf8,14,c0c7e4bf,c0d808cc,...) at select+0x66 syscall(f672ad38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x281e8023, esp = 0xbfbfeb8c, ebp = 0xbfbfece8 --- Tracing command sshd pid 1915 tid 100262 td 0xc835eb40 Tracing command sshd pid 1914 tid 100261 td 0xc835ed80 sched_switch(c835ed80,0,104,191,a20c5484,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c835ed80,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c861fd10,0,c0c94721,c835ed80,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c861fd24,0,f6724a7c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c861fd24,c861fd10,c0c9c698,603,c7ea5770,...) at _cv_wait_sig+0x240 seltdwait(c7ea5770,58,c8539c80,c835ed80,200246,...) at seltdwait+0xa2 kern_select(c835ed80,a,286030b8,286030dc,0,0,20,0,28100c70) at kern_select+0x4f4 select(c835ed80,f6724cf8,14,c0c7e4bf,c0d808cc,...) at select+0x66 syscall(f6724d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x283ce023, esp = 0xbfbfde5c, ebp = 0xbfbfdea8 --- Tracing command sshd pid 1912 tid 100259 td 0xc8361240 Tracing command sshd pid 1909 tid 100257 td 0xc836b240 Tracing command sshd pid 1908 tid 100256 td 0xc836b480 Tracing command bash pid 1663 tid 100115 td 0xc7bd3240 sched_switch(c7bd3240,0,104,191,6bd54e09,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7bd3240,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c7dadc04,0,c0c94721,c7bd3240,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7dadc70,0,f64f6b0c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c7dadc70,c7dadc04,c0c9e3cc,50e,0,...) at _cv_wait_sig+0x240 tty_wait(c7dadc00,c7dadc70,f64f6c58,1,0,...) at tty_wait+0x71 ttydisc_read(c7dadc00,f64f6c58,0,9e,0,...) at ttydisc_read+0x22c ttydev_read(c7ba7d00,f64f6c58,0,0,1,...) at ttydev_read+0xaa devfs_read_f(c7cb1428,f64f6c58,c789a880,0,c7bd3240,...) at devfs_read_f+0x7e dofileread(f64f6c58,ffffffff,ffffffff,0,c7cb1428,...) at dofileread+0x96 kern_readv(c7bd3240,0,f64f6c58,f64f6c78,1,...) at kern_readv+0x58 read(c7bd3240,f64f6cf8,c,c0c9cb21,c0d7fef4,...) at read+0x4f syscall(f64f6d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (3, FreeBSD ELF32, read), eip = 0x2834b0a3, esp = 0xbfbfde0c, ebp = 0xbfbfde38 --- Tracing command csh pid 1659 tid 100130 td 0xc7bdf900 sched_switch(c7bdf900,0,104,191,cf2f7622,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,68,...) at mi_switch+0x200 sleepq_switch(c7bdf900,0,c0c9a453,18b,68,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7bd9af8,68,c0c4a1b1,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7bd9af8,c7bd9b28,168,c0c4a1b1,0,...) at _sleep+0x354 kern_sigsuspend(c7bdf900,0,0,0,0,...) at kern_sigsuspend+0xae sigsuspend(c7bdf900,f652dcf8,4,c0c9cb21,c0d823ec,...) at sigsuspend+0x4d syscall(f652dd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (4, FreeBSD ELF32, write), eip = 0x2817af0b, esp = 0xbfbfe5ec, ebp = 0xbfbfe658 --- Tracing command su pid 1658 tid 100165 td 0xc80a0b40 sched_switch(c80a0b40,0,104,191,75df8631,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c80a0b40,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7faa550,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7faa550,c7faa5d8,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c80a0b40,67b,f65c8c74,2,0,...) at kern_wait+0xb76 wait4(c80a0b40,f65c8cf8,10,c80a0b40,c0d7ff64,...) at wait4+0x3b syscall(f65c8d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x2811f06b, esp = 0xbfbfe60c, ebp = 0xbfbfe628 --- Tracing command dbus-daemon pid 1555 tid 100078 td 0xc74e7480 Tracing command dbus-launch pid 1554 tid 100163 td 0xc80a2000 Tracing command getty pid 1380 tid 100119 td 0xc7bd1900 Tracing command getty pid 1379 tid 100109 td 0xc78396c0 Tracing command getty pid 1378 tid 100153 td 0xc7e9ed80 Tracing command getty pid 1377 tid 100076 td 0xc7839480 Tracing command getty pid 1376 tid 100118 td 0xc7bd1b40 Tracing command getty pid 1375 tid 100154 td 0xc7e9eb40 Tracing command getty pid 1374 tid 100121 td 0xc7803480 Tracing command getty pid 1373 tid 100095 td 0xc7864240 Tracing command getty pid 1372 tid 100113 td 0xc7bd36c0 Tracing command inetd pid 1341 tid 100144 td 0xc7864d80 Tracing command watchdogd pid 1305 tid 100132 td 0xc7800d80 sched_switch(c7800d80,0,104,191,9eeb0504,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7800d80,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(ea61,c08c46d0,c7800d80,1,100,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c0df16c4,5c,c0c972a4,100,0,...) at sleepq_timedwait_sig+0x1a _sleep(c0df16c4,0,15c,c0c972a4,ea61,...) at _sleep+0x31e kern_nanosleep(c7800d80,f6535c64,f6535c6c,3c,0,...) at kern_nanosleep+0xc1 nanosleep(c7800d80,f6535cf8,8,c0cae10e,c0d818e0,...) at nanosleep+0x6f syscall(f6535d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (240, FreeBSD ELF32, nanosleep), eip = 0x28185ac7, esp = 0xbfbfecec, ebp = 0xbfbfed18 --- Tracing command bash pid 1280 tid 100091 td 0xc7803d80 sched_switch(c7803d80,0,104,191,6813ee2f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7803d80,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c77ff550,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c77ff550,c77ff5d8,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c7803d80,ffffffff,f647fc74,6,0,...) at kern_wait+0xb76 wait4(c7803d80,f647fcf8,10,c0c9cb21,c0d7ff64,...) at wait4+0x3b syscall(f647fd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (7, FreeBSD ELF32, wait4), eip = 0x282be06b, esp = 0xbfbfe9ac, ebp = 0xbfbfe9c8 --- Tracing command sshd pid 1279 tid 100101 td 0xc7863480 sched_switch(c7863480,0,104,191,6bd758b4,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7863480,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c7770c50,0,c0c94721,c7863480,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7770c64,0,f64a2a7c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c7770c64,c7770c50,c0c9c698,603,c788a3f0,...) at _cv_wait_sig+0x240 seltdwait(c788a3f0,58,c77b7000,c7863480,200246,...) at seltdwait+0xa2 kern_select(c7863480,f,286030b8,286030dc,0,0,20,0,28100c70) at kern_select+0x4f4 select(c7863480,f64a2cf8,14,c0c7e4bf,c0d808cc,...) at select+0x66 syscall(f64a2d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x283ce023, esp = 0xbfbfde5c, ebp = 0xbfbfdea8 --- Tracing command sshd pid 1277 tid 100151 td 0xc7e9f240 Tracing command cron pid 1264 tid 100147 td 0xc7e9fb40 sched_switch(c7e9fb40,0,104,191,6fb1156c,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7e9fb40,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(ea61,c08c46d0,c7e9fb40,0,100,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c0df16c4,5c,c0c972a4,100,0,...) at sleepq_timedwait_sig+0x1a _sleep(c0df16c4,0,15c,c0c972a4,ea61,...) at _sleep+0x31e kern_nanosleep(c7e9fb40,f657cc64,f657cc6c,3c,0,...) at kern_nanosleep+0xc1 nanosleep(c7e9fb40,f657ccf8,8,c0c9cd6f,c0d818e0,...) at nanosleep+0x6f syscall(f657cd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (240, FreeBSD ELF32, nanosleep), eip = 0x28178ac7, esp = 0xbfbfec8c, ebp = 0xbfbfecb8 --- Tracing command sendmail pid 1257 tid 100150 td 0xc7e9f480 sched_switch(c7e9f480,0,104,191,d3f6e27,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,68,...) at mi_switch+0x200 sleepq_switch(c7e9f480,0,c0c9a453,18b,68,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7e9baf8,68,c0c4a1b1,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7e9baf8,c7e9bb28,168,c0c4a1b1,0,...) at _sleep+0x354 kern_sigsuspend(c7e9f480,0,0,0,0,...) at kern_sigsuspend+0xae sigsuspend(c7e9f480,f6585cf8,4,c0c9cb21,c0d823ec,...) at sigsuspend+0x4d syscall(f6585d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (4, FreeBSD ELF32, write), eip = 0x28332f0b, esp = 0xbfbfcf9c, ebp = 0xbfbfcfc8 --- Tracing command sendmail pid 1253 tid 100093 td 0xc78646c0 sched_switch(c78646c0,0,104,191,6f4b3230,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c78646c0,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f6487a4c,c087b0da,c7bbec90,0,c78646c0,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c7bbeca4,0,f6487a7c,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c7bbeca4,c7bbec90,1389,603,cb89b508,...) at _cv_timedwait_sig+0x250 seltdwait(f6487c28,f6487c30,c7ebd080,c78646c0,c188b014,...) at seltdwait+0x8a kern_select(c78646c0,5,bfbfc520,0,0,f6487c70,20,5,0) at kern_select+0x4f4 select(c78646c0,f6487cf8,14,c0c9d045,c0d808cc,...) at select+0x66 syscall(f6487d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x283d7023, esp = 0xbfbfc48c, ebp = 0xbfbfcfb8 --- Tracing command sshd pid 1245 tid 100143 td 0xc7bd1000 sched_switch(c7bd1000,0,104,191,7976d7c3,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7bd1000,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c782fe90,0,c0c94721,c7bd1000,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c782fea4,0,f6570a7c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c782fea4,c782fe90,c0c9c698,603,c78073b8,...) at _cv_wait_sig+0x240 seltdwait(c78073b8,58,c7ae2080,c7bd1000,ebe,...) at seltdwait+0xa2 kern_select(c7bd1000,5,286090b0,0,0,0,20,2861a070,1) at kern_select+0x4f4 select(c7bd1000,f6570cf8,14,c7bd1000,c0d808cc,...) at select+0x66 syscall(f6570d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x283ce023, esp = 0xbfbfdf1c, ebp = 0xbfbfee38 --- Tracing command ntpd pid 1200 tid 100080 td 0xc74e7000 sched_switch(c74e7000,0,104,191,9b821659,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c74e7000,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c782fa50,0,c0c94721,c74e7000,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c782fa64,0,f643da7c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c782fa64,c782fa50,c0c9c698,603,c788a620,...) at _cv_wait_sig+0x240 seltdwait(c788a620,58,c7175100,c74e7000,0,...) at seltdwait+0xa2 kern_select(c74e7000,1c,bfbfed28,0,0,0,20,f643dc98,246) at kern_select+0x4f4 select(c74e7000,f643dcf8,14,c74e7000,c0d808cc,...) at select+0x66 syscall(f643dd38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x28353023, esp = 0xbfbfecfc, ebp = 0xbfbfedc8 --- Tracing command moused pid 1061 tid 100133 td 0xc7bdf480 Tracing command rpc.lockd pid 1028 tid 100116 td 0xc7bd3000 sched_switch(c7bd3000,0,104,191,521b1003,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7bd3000,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f64f99fc,c087b0da,c7ae3480,0,c7bd3000,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c74f3050,0,f64f9a2c,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c74f3050,c7ae3480,1388,3af,c7687600,...) at _cv_timedwait_sig+0x250 svc_run_internal(c7bd3164,14,c0cb977b,c0cb8e70,f64f9b8c,...) at svc_run_internal+0x356 svc_run(c7ae3480,0,4,c0a72e30,f64f9b8c,...) at svc_run+0x7f nlm_syscall(c7bd3000,f64f9cf8,10,c0c9d485,c0d80f78,...) at nlm_syscall+0x77d syscall(f64f9d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (154, FreeBSD ELF32, nlm_syscall), eip = 0x280fab0b, esp = 0xbfbfed5c, ebp = 0xbfbfee28 --- Tracing command rpc.statd pid 1021 tid 100092 td 0xc7803b40 sched_switch(c7803b40,0,104,191,ebe262be,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7803b40,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f6483a4c,c087b0da,c7770150,0,c7803b40,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c7770164,0,f6483a7c,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c7770164,c7770150,7531,603,c7820bd0,...) at _cv_timedwait_sig+0x250 seltdwait(f6483c28,f6483c30,c7175100,c7803b40,ebe,...) at seltdwait+0x8a kern_select(c7803b40,8,bfbfed44,0,0,f6483c70,20,1e,0) at kern_select+0x4f4 select(c7803b40,f6483cf8,14,c0c9cd6f,c0d808cc,...) at select+0x66 syscall(f6483d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x28187023, esp = 0xbfbfec9c, ebp = 0xbfbfedd8 --- Tracing command nfsd pid 1014 tid 100139 td 0xc78046c0 sched_switch(c78046c0,0,104,191,521a6ec7,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c78046c0,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f655cbf8,c087b0da,c74dae00,0,c78046c0,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c789cc90,0,f655cc28,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c789cc90,c74dae00,1388,3af,0,...) at _cv_timedwait_sig+0x250 svc_run_internal(f655cd24,c0860f08,c74dae00,f655cd38,c0c9146a,...) at svc_run_internal+0x356 svc_thread_start(c74dae00,f655cd38,c0c9146a,343,c7aba2a8,...) at svc_thread_start+0x10 fork_exit(c0a80e70,c74dae00,f655cd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0x2e, eip = 0xc, esp = 0x33, ebp = 0 --- Tracing command nfsd pid 1014 tid 100138 td 0xc7804900 sched_switch(c7804900,0,104,191,521ab760,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7804900,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f6559bf8,c087b0da,c74dae00,0,c7804900,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c789ccd0,0,f6559c28,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c789ccd0,c74dae00,1388,3af,0,...) at _cv_timedwait_sig+0x250 svc_run_internal(f6559d24,c0860f08,c74dae00,f6559d38,c0c9146a,...) at svc_run_internal+0x356 svc_thread_start(c74dae00,f6559d38,c0c9146a,343,c7aba2a8,...) at svc_thread_start+0x10 fork_exit(c0a80e70,c74dae00,f6559d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0x2e, eip = 0xc, esp = 0x33, ebp = 0 --- Tracing command nfsd pid 1014 tid 100137 td 0xc7804b40 sched_switch(c7804b40,0,104,191,521a3887,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7804b40,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f6556bf8,c087b0da,c74dae00,0,c7804b40,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c789cd10,0,f6556c28,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c789cd10,c74dae00,1388,3af,0,...) at _cv_timedwait_sig+0x250 svc_run_internal(f6556d24,c0860f08,c74dae00,f6556d38,c0c9146a,...) at svc_run_internal+0x356 svc_thread_start(c74dae00,f6556d38,c0c9146a,343,c7aba2a8,...) at svc_thread_start+0x10 fork_exit(c0a80e70,c74dae00,f6556d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0x2e, eip = 0xc, esp = 0x33, ebp = 0 --- Tracing command nfsd pid 1014 tid 100100 td 0xc78636c0 sched_switch(c78636c0,0,104,191,521b4fc5,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c78636c0,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f649eae8,c087b0da,c74dae00,0,c78636c0,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c7830e90,0,f649eb18,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c7830e90,c74dae00,1388,3af,f649eb60,...) at _cv_timedwait_sig+0x250 svc_run_internal(c7863824,14,c0cb977b,c0cb822f,f649ec3c,...) at svc_run_internal+0x356 svc_run(c74dae00,0,c0cb8533,1fd,0,...) at svc_run+0x7f nfssvc_nfsd(bfbfe8c0,f649ec3c,c,c7175100,f649ec50,...) at nfssvc_nfsd+0xad nfssvc_nfsserver(c78636c0,f649ecf8,bfbfe8c0,c78636c0,c7aba2a8,...) at nfssvc_nfsserver+0x24f nfssvc(c78636c0,f649ecf8,8,c0c9d045,c0d80f94,...) at nfssvc+0x83 syscall(f649ed38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (155, FreeBSD ELF32, nfssvc), eip = 0x280daaeb, esp = 0xbfbfe87c, ebp = 0xbfbfeae8 --- Tracing command nfsd pid 1013 tid 100083 td 0xc7836d80 Tracing command mountd pid 1004 tid 100103 td 0xc7863000 Tracing command rpcbind pid 911 tid 100114 td 0xc7bd3480 sched_switch(c7bd3480,0,104,191,cc3b8e41,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7bd3480,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(f64f3aa8,c087b0da,c77b11d0,0,c7bd3480,...) at sleepq_catch_signals+0xb7 sleepq_timedwait_sig(c77b11e4,0,f64f3ad8,101,0,...) at sleepq_timedwait_sig+0x1a _cv_timedwait_sig(c77b11e4,c77b11d0,7531,603,f64f3b8c,...) at _cv_timedwait_sig+0x250 seltdwait(f64f3c5c,f64f3c64,511,c7bd3480,f64f3b5c,...) at seltdwait+0x8a poll(c7bd3480,f64f3cf8,c,c0c9cd6f,c0d8157c,...) at poll+0x300 syscall(f64f3d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (209, FreeBSD ELF32, poll), eip = 0x2813f00f, esp = 0xbfbfcc0c, ebp = 0xbfbfedd8 --- Tracing command syslogd pid 886 tid 100086 td 0xc78366c0 sched_switch(c78366c0,0,104,191,efa3f710,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c78366c0,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c77b2e90,0,c0c94721,c78366c0,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c77b2ea4,0,f6459a7c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c77b2ea4,c77b2e90,c0c9c698,603,c789f658,...) at _cv_wait_sig+0x240 seltdwait(c789f658,58,c7175100,c78366c0,0,...) at seltdwait+0xa2 kern_select(c78366c0,9,282290ac,0,0,0,20,0,281a5478) at kern_select+0x4f4 select(c78366c0,f6459cf8,14,c0c9cc21,c0d808cc,...) at select+0x66 syscall(f6459d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x28191023, esp = 0xbfbfe2bc, ebp = 0xbfbfee28 --- Tracing command devd pid 696 tid 100088 td 0xc7836240 sched_switch(c7836240,0,104,191,8260baae,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7836240,0,c0c9a453,18b,0,...) at sleepq_switch+0x15f sleepq_catch_signals(c087b0da,c77b1690,0,c0c94721,c7836240,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c77b16a4,0,f6463a7c,101,0,...) at sleepq_wait_sig+0x17 _cv_wait_sig(c77b16a4,c77b1690,c0c9c698,603,c7807b98,...) at _cv_wait_sig+0x240 seltdwait(c7807b98,58,c7175100,c7836240,ebe,...) at seltdwait+0xa2 kern_select(c7836240,6,bfbfe9b0,0,0,0,20,8059be0,1) at kern_select+0x4f4 select(c7836240,f6463cf8,14,c7836240,c0d808cc,...) at select+0x66 syscall(f6463d38) at syscall+0x2b4 Xint0x80_syscall() at Xint0x80_syscall+0x20 --- syscall (93, FreeBSD ELF32, select), eip = 0x8088b73, esp = 0xbfbfe97c, ebp = 0xbfbfee58 --- Tracing command flowcleaner pid 20 tid 100074 td 0xc74e76c0 sched_switch(c74e76c0,0,104,191,ddc778ff,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c74e76c0,0,c0c9a453,26e,c74e76c0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f5e188,0,f4239cc4,1,0,...) at sleepq_timedwait+0x6b _cv_timedwait(c0f5e188,c0f5e190,2710,3f0,0,...) at _cv_timedwait+0x250 flowtable_cleaner(0,f4239d38,c0c9146a,343,c77832a8,...) at flowtable_cleaner+0x1bf fork_exit(c0934110,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,83ffbfe1,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,44,...) at mi_switch+0x200 sleepq_switch(c74e7900,0,c0c9a453,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f698c0,44,c0cbd255,0,0,...) at sleepq_timedwait+0x6b _sleep(c0f698c0,c0f69864,44,c0cbd255,3e8,...) at _sleep+0x339 softdep_flush(0,f4236d38,c0c9146a,343,c7783550,...) at softdep_flush+0x244 fork_exit(c0ac1c00,0,f4236d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4236d70, ebp = 0 --- Tracing command vnlru pid 18 tid 100072 td 0xc74e7b40 sched_switch(c74e7b40,0,104,191,83ff10f3,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,50,...) at mi_switch+0x200 sleepq_switch(c74e7b40,0,c0c9a453,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c77837f8,50,c0ca4455,0,0,...) at sleepq_timedwait+0x6b _sleep(c77837f8,c0f5df54,250,c0ca4455,3e8,...) at _sleep+0x339 vnlru_proc(0,f4233d38,c0c9146a,343,c77837f8,...) at vnlru_proc+0xe7 fork_exit(c091f7a0,0,f4233d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xf4233d70, ebp = 0 --- Tracing command syncer pid 17 tid 100071 td 0xc74e7d80 sched_switch(c74e7d80,0,104,191,15a1545c,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,44,...) at mi_switch+0x200 sleepq_switch(c74e7d80,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c3ad8f08,44,c0ca15e8,0,0,...) at sleepq_wait+0x63 _sleep(c3ad8f08,c869c198,44,c0ca15e8,0) at _sleep+0x36b vm_page_sleep(c3ad8f08,c0ca15e8,0,b93,cb385960,...) at vm_page_sleep+0xc3 allocbuf(e733e50c,4000,c0ca107b,aa1,163,...) at allocbuf+0x7c2 getblk(cb385858,27a,0,4000,0,...) at getblk+0x56f cluster_read(cb385858,1b99400,0,27a,0,...) at cluster_read+0xfa ffs_balloc_ufs2(cb385858,9eb000,0,1000,c7164600,...) at ffs_balloc_ufs2+0x1cdd ffs_write(f4230934,c0cd3b60,f4230874,0,c74e7e24,...) at ffs_write+0x372 VOP_WRITE_APV(c0da1c00,f4230934,4,0,1000,...) at VOP_WRITE_APV+0x136 vnode_pager_generic_putpages(cb385858,f4230a50,1000,8,f4230a00,...) at vnode_pager_generic_putpages+0x227 vop_stdputpages(f42309b0,c0cd37ad,cb385858,cb385858,8,...) at vop_stdputpages+0x30 VOP_PUTPAGES_APV(c0da1c00,f42309b0,c0cc3101,40c,c0dbc6a0,...) at VOP_PUTPAGES_APV+0xd6 vnode_pager_putpages(c869c198,f4230a50,1,8,f4230a00,...) at vnode_pager_putpages+0x92 vm_pageout_flush(f4230a50,1,8,3c3,c71bf240,...) at vm_pageout_flush+0x177 vm_object_page_collect_flush(8,0,c0cc1359,377,4,...) at vm_object_page_collect_flush+0x300 vm_object_page_clean(c869c198,0,0,0,0,...) at vm_object_page_clean+0x3d3 vfs_msync(c79eb000,2,c0ca3485,d76,c79eb000,...) at vfs_msync+0x194 sync_fsync(f4230c7c,c0cd320f,c90ff7b4,f4230c7c,c90ff6f4,...) at sync_fsync+0x17b VOP_FSYNC_APV(c0d91d00,f4230c7c,c0ca3485,69f,c74e7d80,...) at VOP_FSYNC_APV+0xc5 sync_vnode(c0f5df94,c0f5df80,3e8,6ce,4e20,...) at sync_vnode+0x16b sched_sync(0,f4230d38,c0c9146a,343,c7783aa0,...) at sched_sync+0x273 fork_exit(c091ebd0,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,83feccc3,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,44,...) at mi_switch+0x200 sleepq_switch(c74e9000,0,c0c9a453,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f5dcc8,44,c0ca19bf,0,0,...) at sleepq_timedwait+0x6b _sleep(c0f5dcc8,c0f5dccc,44,c0ca19bf,3e8,...) at _sleep+0x339 buf_daemon(0,f422dd38,c0c9146a,343,c7783d48,...) at buf_daemon+0x138 fork_exit(c0906db0,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,b2be9cf0,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c74e9240,0,c0c9a453,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f6a698,0,c0cc30ad,0,0,...) at sleepq_timedwait+0x6b _sleep(c0f6a698,c0f6a180,0,c0cc30ad,493e0,...) at _sleep+0x339 vm_pagezero(0,f422ad38,c0c9146a,343,c71782a8,...) at vm_pagezero+0xdc fork_exit(c0b02a70,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,eb1c91a5,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,68,...) at mi_switch+0x200 sleepq_switch(c74e9480,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0f6a2c4,68,c0ca19bf,0,0,...) at sleepq_wait+0x63 _sleep(c0f6a2c4,c0f6a2c8,68,c0ca19bf,0,...) at _sleep+0x36b vm_daemon(0,f4227d38,c0c9146a,343,c7178550,...) at vm_daemon+0x59 fork_exit(c0afb700,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,21ea0130,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,44,...) at mi_switch+0x200 sleepq_switch(c74e96c0,0,c0c9a453,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0f6a28c,44,c0ca19bf,0,0,...) at sleepq_timedwait+0x6b _sleep(c0f6a28c,c0f6a180,44,c0ca19bf,1388,...) at _sleep+0x339 vm_pageout(0,f4224d38,c0c9146a,343,c71787f8,...) at vm_pageout+0x2bb fork_exit(c0afc5b0,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,83e635cf,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c74e9d80,0,c0c9a453,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c73c0c3c,4c,c0c8b9e6,0,0,...) at sleepq_timedwait+0x6b _sleep(c73c0c3c,c73c0cf0,4c,c0c8b9e6,3e8,...) at _sleep+0x339 fdc_thread(c73c0c00,f41bbd38,c0c9146a,343,c7178aa0,...) at fdc_thread+0x27d fork_exit(c0b7fff0,c73c0c00,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,b0b787b8,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c73ba480,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c73f4000,5c,c0c8b9e6,100,0,...) at sleepq_wait_sig+0x17 _sleep(c73f4000,c73f8488,15c,c0c8b9e6,0,...) at _sleep+0x354 fw_bus_probe_thread(c73f4000,f41abd38,c0c9146a,343,c7178d48,...) at fw_bus_probe_thread+0xa08 fork_exit(c0659f70,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,8ba6a7f4,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73bad80,0,c0c9a453,24b,c73bad80,...) at sleepq_switch+0x15f sleepq_wait(c73d4d0c,0,f4194cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73d4d0c,c73d4dac,c0c84a7e,6c,c73d4d14,...) at _cv_wait+0x240 usb_process(c73d4d04,f4194d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,6f8441ea,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73cc000,0,c0c9a453,24b,c73cc000,...) at sleepq_switch+0x15f sleepq_wait(c73d4cdc,0,f4191cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73d4cdc,c73d4dac,c0c84a7e,6c,c73d4ce4,...) at _cv_wait+0x240 usb_process(c73d4cd4,f4191d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8b403c10,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73cc240,0,c0c9a453,24b,c73cc240,...) at sleepq_switch+0x15f sleepq_wait(c73d4cac,0,f418ecbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73d4cac,c73d4dac,c0c84a7e,6c,c73d4cb4,...) at _cv_wait+0x240 usb_process(c73d4ca4,f418ed38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8b402a91,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73cc480,0,c0c9a453,24b,c73cc480,...) at sleepq_switch+0x15f sleepq_wait(c73d4c7c,0,f418bcbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73d4c7c,c73d4dac,c0c84a7e,6c,c73d4c84,...) at _cv_wait+0x240 usb_process(c73d4c74,f418bd38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8b40168f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73cc900,0,c0c9a453,24b,c73cc900,...) at sleepq_switch+0x15f sleepq_wait(c73c6b5c,0,f4183cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c6b5c,c73c6bfc,c0c84a7e,6c,c73c6b64,...) at _cv_wait+0x240 usb_process(c73c6b54,f4183d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,66efbc2f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73ccb40,0,c0c9a453,24b,c73ccb40,...) at sleepq_switch+0x15f sleepq_wait(c73c6b2c,0,f4180cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c6b2c,c73c6bfc,c0c84a7e,6c,c73c6b34,...) at _cv_wait+0x240 usb_process(c73c6b24,f4180d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8adc8a29,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73ccd80,0,c0c9a453,24b,c73ccd80,...) at sleepq_switch+0x15f sleepq_wait(c73c6afc,0,f417dcbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c6afc,c73c6bfc,c0c84a7e,6c,c73c6b04,...) at _cv_wait+0x240 usb_process(c73c6af4,f417dd38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8adc77b3,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736c6c0,0,c0c9a453,24b,c736c6c0,...) at sleepq_switch+0x15f sleepq_wait(c73c6acc,0,f417acbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c6acc,c73c6bfc,c0c84a7e,6c,c73c6ad4,...) at _cv_wait+0x240 usb_process(c73c6ac4,f417ad38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8adc6530,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736c900,0,c0c9a453,24b,c736c900,...) at sleepq_switch+0x15f sleepq_wait(c73c2b5c,0,f4176cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c2b5c,c73c2bfc,c0c84a7e,6c,c73c2b64,...) at _cv_wait+0x240 usb_process(c73c2b54,f4176d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,66ef5e4f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736cb40,0,c0c9a453,24b,c736cb40,...) at sleepq_switch+0x15f sleepq_wait(c73c2b2c,0,f4173cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c2b2c,c73c2bfc,c0c84a7e,6c,c73c2b34,...) at _cv_wait+0x240 usb_process(c73c2b24,f4173d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8a785ea9,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736cd80,0,c0c9a453,24b,c736cd80,...) at sleepq_switch+0x15f sleepq_wait(c73c2afc,0,f4170cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c2afc,c73c2bfc,c0c84a7e,6c,c73c2b04,...) at _cv_wait+0x240 usb_process(c73c2af4,f4170d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8a784cbd,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9000,0,c0c9a453,24b,c73b9000,...) at sleepq_switch+0x15f sleepq_wait(c73c2acc,0,f416dcbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73c2acc,c73c2bfc,c0c84a7e,6c,c73c2ad4,...) at _cv_wait+0x240 usb_process(c73c2ac4,f416dd38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8a783a13,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9240,0,c0c9a453,24b,c73b9240,...) at sleepq_switch+0x15f sleepq_wait(c73bbb5c,0,f4169cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73bbb5c,c73bbbfc,c0c84a7e,6c,c73bbb64,...) at _cv_wait+0x240 usb_process(c73bbb54,f4169d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,66ef002c,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9480,0,c0c9a453,24b,c73b9480,...) at sleepq_switch+0x15f sleepq_wait(c73bbb2c,0,f4166cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73bbb2c,c73bbbfc,c0c84a7e,6c,c73bbb34,...) at _cv_wait+0x240 usb_process(c73bbb24,f4166d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8a146e1d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b96c0,0,c0c9a453,24b,c73b96c0,...) at sleepq_switch+0x15f sleepq_wait(c73bbafc,0,f4163cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73bbafc,c73bbbfc,c0c84a7e,6c,c73bbb04,...) at _cv_wait+0x240 usb_process(c73bbaf4,f4163d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8a14593e,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9900,0,c0c9a453,24b,c73b9900,...) at sleepq_switch+0x15f sleepq_wait(c73bbacc,0,f4160cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73bbacc,c73bbbfc,c0c84a7e,6c,c73bbad4,...) at _cv_wait+0x240 usb_process(c73bbac4,f4160d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,8a144540,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73b9d80,0,c0c9a453,24b,c73b9d80,...) at sleepq_switch+0x15f sleepq_wait(c73b6b5c,0,f4159cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73b6b5c,c73b6bfc,c0c84a7e,6c,c73b6b64,...) at _cv_wait+0x240 usb_process(c73b6b54,f4159d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,66eea060,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73ba000,0,c0c9a453,24b,c73ba000,...) at sleepq_switch+0x15f sleepq_wait(c73b6b2c,0,f4156cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73b6b2c,c73b6bfc,c0c84a7e,6c,c73b6b34,...) at _cv_wait+0x240 usb_process(c73b6b24,f4156d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,89b000fc,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7350d80,0,c0c9a453,24b,c7350d80,...) at sleepq_switch+0x15f sleepq_wait(c73b6afc,0,f4153cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73b6afc,c73b6bfc,c0c84a7e,6c,c73b6b04,...) at _cv_wait+0x240 usb_process(c73b6af4,f4153d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,89afef1a,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736a000,0,c0c9a453,24b,c736a000,...) at sleepq_switch+0x15f sleepq_wait(c73b6acc,0,f4150cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73b6acc,c73b6bfc,c0c84a7e,6c,c73b6ad4,...) at _cv_wait+0x240 usb_process(c73b6ac4,f4150d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,89afd944,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736a480,0,c0c9a453,24b,c736a480,...) at sleepq_switch+0x15f sleepq_wait(c73a7b5c,0,f4149cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73a7b5c,c73a7bfc,c0c84a7e,6c,c73a7b64,...) at _cv_wait+0x240 usb_process(c73a7b54,f4149d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,66ee489f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736a6c0,0,c0c9a453,24b,c736a6c0,...) at sleepq_switch+0x15f sleepq_wait(c73a7b2c,0,f4146cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73a7b2c,c73a7bfc,c0c84a7e,6c,c73a7b34,...) at _cv_wait+0x240 usb_process(c73a7b24,f4146d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,89461cb5,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736a900,0,c0c9a453,24b,c736a900,...) at sleepq_switch+0x15f sleepq_wait(c73a7afc,0,f4143cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73a7afc,c73a7bfc,c0c84a7e,6c,c73a7b04,...) at _cv_wait+0x240 usb_process(c73a7af4,f4143d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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,89460af2,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c736ab40,0,c0c9a453,24b,c736ab40,...) at sleepq_switch+0x15f sleepq_wait(c73a7acc,0,f4140cbc,1,0,...) at sleepq_wait+0x63 _cv_wait(c73a7acc,c73a7bfc,c0c84a7e,6c,c73a7ad4,...) at _cv_wait+0x240 usb_process(c73a7ac4,f4140d38,c0c9146a,343,c7346000,...) at usb_process+0x193 fork_exit(c07bdcc0,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 100021 td 0xc7350480 sched_switch(c7350480,0,104,191,8945f135,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c7350480,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0dbd8d4,4c,c0c3091a,0,0,...) at sleepq_wait+0x63 _sleep(c0dbd8d4,c0dbd8ec,4c,c0c3091a,0,...) at _sleep+0x36b xpt_scanner_thread(0,c6e3bd38,c0c9146a,343,c73462a8,...) at xpt_scanner_thread+0x4a fork_exit(c0484400,0,c6e3bd38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e3bd70, ebp = 0 --- Tracing command yarrow pid 13 tid 100017 td 0xc717b240 sched_switch(c717b240,0,104,191,e477709c,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c717b240,0,c0c9a453,26e,2,...) at sleepq_switch+0x15f sleepq_timedwait(c0df1524,0,c0c8b9e6,2,0,...) at sleepq_timedwait+0x6b _sleep(c0df1524,0,0,c0c8b9e6,64,...) at _sleep+0x339 pause(c0c8b9e6,64,c0c78b9d,111,0,...) at pause+0x47 random_kthread(0,c6e2fd38,c0c9146a,343,c7346550,...) at random_kthread+0x1ef fork_exit(c0736760,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,66d433f5,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c717b6c0,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0def2e4,4c,c0c8b9e6,0,0,...) at sleepq_wait+0x63 _sleep(c0def2e4,c0def248,24c,c0c8b9e6,0,...) at _sleep+0x36b g_io_schedule_down(c717b6c0,0,c0c8d0ae,74,0,...) at g_io_schedule_down+0x56 g_down_procbody(0,c6e29d38,c0c9146a,343,c7177000,...) at g_down_procbody+0x8d fork_exit(c0827c40,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,6a401cd2,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c717b900,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c0def2e0,4c,c0c8b9e6,0,0,...) at sleepq_wait+0x63 _sleep(c0def2e0,c0def268,24c,c0c8b9e6,0,...) at _sleep+0x36b g_io_schedule_up(c717b900,0,c0c8d0ae,5d,0,...) at g_io_schedule_up+0x11e g_up_procbody(0,c6e26d38,c0c9146a,343,c71772a8,...) at g_up_procbody+0x8d fork_exit(c0827cd0,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,e4222c49,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,4c,...) at mi_switch+0x200 sleepq_switch(c717bb40,0,c0c9a453,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0def2d8,4c,c0c8b9e6,0,0,...) at sleepq_timedwait+0x6b _sleep(c0def2d8,0,4c,c0c8b9e6,64,...) at _sleep+0x339 g_event_procbody(0,c6e23d38,c0c9146a,343,c7177550,...) at g_event_procbody+0xcb fork_exit(c0827d60,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,89418e6c,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c7175070,...) at mi_switch+0x200 ithread_loop(c74e0660,f41bed38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,c74e0660,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,a146f821,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c74db0f0,...) at mi_switch+0x200 ithread_loop(c74e0330,f41aed38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,c74e0330,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,8903f02f,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71be0f0,...) at mi_switch+0x200 ithread_loop(c73ebbf0,f41a2d38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,95fa4021,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71be3f0,...) at mi_switch+0x200 ithread_loop(c73eb450,f419ad38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,b3e93d48,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71be1f0,...) at mi_switch+0x200 ithread_loop(c739f690,f415dd38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,b3357890,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71be270,...) at mi_switch+0x200 ithread_loop(c739f9f0,f414dd38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,8e13961,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71be2f0,...) at mi_switch+0x200 ithread_loop(c73ad110,f413dd38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,6a3f469f,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71bdef0,...) at mi_switch+0x200 ithread_loop(c739f500,c6f87d38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,9ad7f995,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c738c0f0,...) at mi_switch+0x200 ithread_loop(c73928d0,c6e81d38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,89422e2f,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c7174b70,...) at mi_switch+0x200 ithread_loop(c7176600,c6e77d38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,accca968,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c73517f0,...) at mi_switch+0x200 ithread_loop(c71763c0,c6e4dd38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,c71763c0,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 100022 td 0xc7350240 sched_switch(c7350240,0,109,191,af95e86b,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c73518f0,...) at mi_switch+0x200 ithread_loop(c7176380,c6e3ed38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,c7176380,c6e3ed38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e3ed70, ebp = 0 --- Tracing command intr pid 12 tid 100020 td 0xc73506c0 sched_switch(c73506c0,0,109,191,2cbc4ffa,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c7351a70,...) at mi_switch+0x200 ithread_loop(c710ca20,c6e38d38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,a8fdf954,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71bdb70,...) at mi_switch+0x200 ithread_loop(c71761b0,c6e20d38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,ddc6b507,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71bdbf0,...) at mi_switch+0x200 ithread_loop(c71761c0,c6e1dd38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,4cc42890,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71bdc70,...) at mi_switch+0x200 ithread_loop(c71761d0,c6e1ad38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,e4222a4f,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71bdcf0,...) at mi_switch+0x200 ithread_loop(c71761e0,c6e17d38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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,ed963bb5,...) at sched_switch+0x406 mi_switch(109,0,c0c916e9,52d,c71bdd70,...) at mi_switch+0x200 ithread_loop(c71761f0,c6e14d38,c0c9146a,343,c71777f8,...) at ithread_loop+0x1f6 fork_exit(c0863ef0,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 cpustop_handler(1,c6e0dc20,c0bc4906,c0898048,f07fd821,...) at cpustop_handler+0x32 ipi_nmi_handler(c0898048,f07fd821,7ffededc,369e99,c7177aa0,...) at ipi_nmi_handler+0x2f trap(c6e0dc2c) at trap+0x36 calltrap() at calltrap+0x6 --- trap 0x13, eip = 0xc0b9b295, esp = 0xc6e0dc6c, ebp = 0xc6e0dc6c --- acpi_cpu_c1(0,c6e0dcd4,0,ffffffff,c6e0dcb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e0dcb4,c0bb29eb,0,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(0,c6e0dcf8,c08adede,0,c6e0dcd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(0,c6e0dcd4,c0c97b80,a09,c7179480,...) at cpu_idle+0x1b sched_idletd(0,c6e0dd38,c0c9146a,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08adca0,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 kdb_enter(c0c3f2b8,c0c7f67a,c6e0abd4,c74cc380,0,...) at kdb_enter+0x3a uart_intr(c74cc300,c71796c0,c71578d0,c7174d80,4,...) at uart_intr+0x126 intr_event_handle(c7174d80,c6e0ac2c,c0f7adac,1f4,c73c0800,...) at intr_event_handle+0x5c intr_execute_handlers(c71578d0,c6e0ac2c,1,c6e0ac6c,c0ba6e74,...) at intr_execute_handlers+0x49 lapic_handle_intr(30,c6e0ac2c) at lapic_handle_intr+0x4c Xapic_isr1() at Xapic_isr1+0x34 --- interrupt, eip = 0xc0b9b295, esp = 0xc6e0ac6c, ebp = 0xc6e0ac6c --- acpi_cpu_c1(1,c6e0acd4,1,ffffffff,c6e0acb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e0acb4,c0bb29eb,0,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(0,c6e0acf8,c08adede,0,c6e0acd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(0,c6e0acd4,c0c97b80,a09,c71796c0,...) at cpu_idle+0x1b sched_idletd(0,c6e0ad38,c0c9146a,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08adca0,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,c0bc4906,c6e07bb0,c087ad24,...) at cpustop_handler+0x32 ipi_nmi_handler(c6e07bb0,c087ad24,c0df1770,4,c7177aa0,...) at ipi_nmi_handler+0x2f trap(c6e07c2c) at trap+0x36 calltrap() at calltrap+0x6 --- trap 0x13, eip = 0xc0b9b295, esp = 0xc6e07c6c, ebp = 0xc6e07c6c --- acpi_cpu_c1(2,c6e07cd4,2,ffffffff,c6e07cb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e07cb4,c0bb29eb,0,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(0,c6e07cf8,c08adede,0,c6e07cd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(0,c6e07cd4,c0c97b80,3b0,c7179900,...) at cpu_idle+0x1b sched_idletd(0,c6e07d38,c0c9146a,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08adca0,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,c0bc4906,c6e04bb0,c087ad24,...) at cpustop_handler+0x32 ipi_nmi_handler(c6e04bb0,c087ad24,c0df17a8,4,c7177aa0,...) at ipi_nmi_handler+0x2f trap(c6e04c2c) at trap+0x36 calltrap() at calltrap+0x6 --- trap 0x13, eip = 0xc0b9b295, esp = 0xc6e04c6c, ebp = 0xc6e04c6c --- acpi_cpu_c1(c0ba708f,c6e04cd4,3,ffffffff,c6e04cb4,...) at acpi_cpu_c1+0x5 acpi_cpu_idle(ffffffff,0,c6e04cb4,c0bb29eb,1,...) at acpi_cpu_idle+0x11c cpu_idle_amdc1e(1,c6e04cf8,c08adede,1,c6e04cd4,...) at cpu_idle_amdc1e+0x56 cpu_idle(1,c6e04cd4,c0c97b80,a09,c7179b40,...) at cpu_idle+0x1b sched_idletd(0,c6e04d38,c0c9146a,343,c7177aa0,...) at sched_idletd+0x23e fork_exit(c08adca0,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,d169fae9,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,5c,...) at mi_switch+0x200 sleepq_switch(c7179d80,0,c0c9a453,18b,5c,...) at sleepq_switch+0x15f sleepq_catch_signals(c0c9a453,15b,0,100,100,...) at sleepq_catch_signals+0xb7 sleepq_wait_sig(c7177d48,5c,c0c9cc32,100,0,...) at sleepq_wait_sig+0x17 _sleep(c7177d48,c7177dd0,15c,c0c9cc32,0,...) at _sleep+0x354 kern_wait(c7179d80,ffffffff,c6e00c74,0,0,...) at kern_wait+0xb76 wait4(c7179d80,c6e00cf8,10,c0c9ca62,c0d7ff64,...) 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,894384d3,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c717b000,0,c0c9a453,24b,c717b000,...) at sleepq_switch+0x15f sleepq_wait(c0f691e0,0,c6dfdc9c,1,0,...) at sleepq_wait+0x63 _cv_wait(c0f691e0,c0f691c4,c0cba4d7,194,0,...) at _cv_wait+0x240 audit_worker(0,c6dfdd38,c0c9146a,343,c7178000,...) at audit_worker+0x84 fork_exit(c0a90f90,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,e726f30a,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c73ba6c0,0,c0c9a453,24b,c73ba6c0,...) at sleepq_switch+0x15f sleepq_wait(c73a1880,0,c0c96bec,c0c8b9e6,0,...) at sleepq_wait+0x63 msleep_spin(c73a1880,c73a1898,c0c8b9e6,0,c0c94721,...) at msleep_spin+0x21d taskqueue_thread_loop(c73f849c,f41a8d38,c0c9146a,343,c0def3c0,...) at taskqueue_thread_loop+0x94 fork_exit(c08c70c0,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,8bb73284,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c71bf900,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c73440c0,0,c0c8b9e6,0,0,...) at sleepq_wait+0x63 _sleep(c73440c0,c73440d8,0,c0c8b9e6,0,...) at _sleep+0x36b taskqueue_thread_loop(c0defc50,c6e4ad38,c0c9146a,343,c0def3c0,...) at taskqueue_thread_loop+0xba fork_exit(c08c70c0,c0defc50,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 100025 td 0xc71bfb40 sched_switch(c71bfb40,0,104,191,8bb720c9,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c71bfb40,0,c0c9a453,24b,c71bfb40,...) at sleepq_switch+0x15f sleepq_wait(c7344100,0,c0c96bec,c0c8b9e6,0,...) at sleepq_wait+0x63 msleep_spin(c7344100,c7344118,c0c8b9e6,0,c0c94721,...) at msleep_spin+0x21d taskqueue_thread_loop(c0dc0720,c6e47d38,c0c9146a,343,c0def3c0,...) at taskqueue_thread_loop+0x94 fork_exit(c08c70c0,c0dc0720,c6e47d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e47d70, ebp = 0 --- Tracing command kernel pid 0 tid 100024 td 0xc71bfd80 sched_switch(c71bfd80,0,104,191,8bb7118d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c71bfd80,0,c0c9a453,24b,c71bfd80,...) at sleepq_switch+0x15f sleepq_wait(c7344100,0,c0c96bec,c0c8b9e6,0,...) at sleepq_wait+0x63 msleep_spin(c7344100,c7344118,c0c8b9e6,0,c0c94721,...) at msleep_spin+0x21d taskqueue_thread_loop(c0dc0720,c6e44d38,c0c9146a,343,c0def3c0,...) at taskqueue_thread_loop+0x94 fork_exit(c08c70c0,c0dc0720,c6e44d38) at fork_exit+0xb8 fork_trampoline() at fork_trampoline+0x8 --- trap 0, eip = 0, esp = 0xc6e44d70, ebp = 0 --- Tracing command kernel pid 0 tid 100023 td 0xc7350000 sched_switch(c7350000,0,104,191,8bb70243,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7350000,0,c0c9a453,24b,c7350000,...) at sleepq_switch+0x15f sleepq_wait(c7344100,0,c0c96bec,c0c8b9e6,0,...) at sleepq_wait+0x63 msleep_spin(c7344100,c7344118,c0c8b9e6,0,c0c94721,...) at msleep_spin+0x21d taskqueue_thread_loop(c0dc0720,c6e41d38,c0c9146a,343,c0def3c0,...) at taskqueue_thread_loop+0x94 fork_exit(c08c70c0,c0dc0720,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 100018 td 0xc7350b40 sched_switch(c7350b40,0,104,191,af97c523,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c7350b40,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c7344540,0,c0c8b9e6,0,0,...) at sleepq_wait+0x63 _sleep(c7344540,c7344558,0,c0c8b9e6,0,...) at _sleep+0x36b taskqueue_thread_loop(c0e03ec8,c6e32d38,c0c9146a,343,c0def3c0,...) at taskqueue_thread_loop+0xba fork_exit(c08c70c0,c0e03ec8,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,b508fb9f,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,0,...) at mi_switch+0x200 sleepq_switch(c717b480,0,c0c9a453,24b,0,...) at sleepq_switch+0x15f sleepq_wait(c715ed80,0,c0c8b9e6,0,0,...) at sleepq_wait+0x63 _sleep(c715ed80,c715ed98,0,c0c8b9e6,0,...) at _sleep+0x36b taskqueue_thread_loop(c0e02960,c6e2cd38,c0c9146a,343,c0def3c0,...) at taskqueue_thread_loop+0xba fork_exit(c08c70c0,c0e02960,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 0xc0def670 sched_switch(c0def670,0,104,191,f7d99d7d,...) at sched_switch+0x406 mi_switch(104,0,c0c9a453,1d6,44,...) at mi_switch+0x200 sleepq_switch(c0def670,0,c0c9a453,26e,0,...) at sleepq_switch+0x15f sleepq_timedwait(c0def3c0,44,c0c983f5,0,0,...) at sleepq_timedwait+0x6b _sleep(c0def3c0,0,44,c0c983f5,2710,...) at _sleep+0x339 scheduler(0,141ec00,141ec00,141e000,1425000,...) at scheduler+0x23e mi_startup() at mi_startup+0x96 begin() at begin+0x2c db:0:allt> call doadump Physical memory: 3439 MB Dumping 253 MB: 238 222 206 190 174 158 142 126 110 94 78 62 46 30 14 Dump complete = 0xf db:0:doadump> reset cpu_reset: Restarting BSP cpu_reset_proxy: Stopped CPU 1 (kgdb) proc 15235 [Switching to thread 124 (Thread 100331)]#0 sched_switch (td=0xca457000, newtd=0xc8235480, flags=0x104) at ../../../kern/sched_ule.c:1865 1865 cpuid = PCPU_GET(cpuid); (kgdb) bt #0 sched_switch (td=0xca457000, newtd=0xc8235480, flags=0x104) at ../../../kern/sched_ule.c:1865 #1 0xc0893fd0 in mi_switch (flags=0x104, newtd=0x0) at ../../../kern/kern_synch.c:449 #2 0xc08c4baf in sleepq_switch (wchan=0xcb3858b0, pri=0x50) at ../../../kern/subr_sleepqueue.c:509 #3 0xc08c5853 in sleepq_wait (wchan=0xcb3858b0, pri=0x50) at ../../../kern/subr_sleepqueue.c:588 #4 0xc08733d5 in __lockmgr_args (lk=0xcb3858b0, flags=0x200400, ilk=0xcb385918, wmesg=0x0, pri=0x0, timo=0x0, file=0xc0cc2b02 "../../../vm/vm_readwrite.c", line=0x80) at ../../../kern/kern_lock.c:216 #5 0xc0acbc51 in ffs_lock (ap=0xf6836964) at lockmgr.h:94 #6 0xc0bdd4b5 in VOP_LOCK1_APV (vop=0xc0da1c00, a=0xf6836964) at vnode_if.c:1988 #7 0xc092a7f8 in _vn_lock (vp=0xcb385858, flags=0x200400, file=0xc0cc2b02 "../../../vm/vm_readwrite.c", line=0x80) at vnode_if.h:859 #8 0xc0affe41 in vnode_grab_next_page (vp=0xcb385858, prev=Variable "prev" is not available. ) at ../../../vm/vm_readwrite.c:128 #9 0xc0b0016a in vnode_pager_read_cluster (vp=0xcb385858, m=0xc53d0108, maxrun=Variable "maxrun" is not available. ) at ../../../vm/vm_readwrite.c:177 #10 0xc0b010e9 in vnode_pager_read (vp=0xcb385858, uio=0xf6836c58, ioflags=0x7f0000) at ../../../vm/vm_readwrite.c:279 #11 0xc092baec in vn_read_chunk (vp=0xcb385858, uio=0xf6836c58, active_cred=0xc789a880, fcred=0xc789a880, ioflag=0x7f0000) at ../../../kern/vfs_vnops.c:556 #12 0xc092bc69 in vn_read (fp=0xc8a7b000, uio=0xf6836c58, active_cred=0xc789a880, flags=0x0, td=0xca457000) at ../../../kern/vfs_vnops.c:604 #13 0xc08d0836 in dofileread (td=0xca457000, fd=0x4, fp=0xc8a7b000, auio=0xf6836c58, offset=0xffffffffffffffff, flags=0x0) at file.h:229 #14 0xc08d0b68 in kern_readv (td=0xca457000, fd=0x4, auio=0xf6836c58) at ../../../kern/sys_generic.c:237 #15 0xc08d0c7f in read (td=0xca457000, uap=0xf6836cf8) at ../../../kern/sys_generic.c:153 #16 0xc0bc4684 in syscall (frame=0xf6836d38) at ../../../i386/i386/trap.c:1076 #17 0xc0ba6b10 in Xint0x80_syscall () at ../../../i386/i386/exception.s:261 #18 0x00000033 in ?? () Previous frame inner to this frame (corrupt stack?) (kgdb) f 8 #8 0xc0affe41 in vnode_grab_next_page (vp=0xcb385858, prev=Variable "prev" is not available. ) at ../../../vm/vm_readwrite.c:128 128 vn_lock(vp, locked | LK_RETRY); (kgdb) p *vp $1 = {v_type = VREG, v_tag = 0xc0c8ebe2 "ufs", v_op = 0xc0da1c00, v_data = 0xc8de9910, v_mount = 0xc79eb000, v_nmntvnodes = {tqe_next = 0xc9e5b600, tqe_prev = 0xc884f9d0}, v_un = {vu_mount = 0x0, vu_socket = 0x0, vu_cdev = 0x0, vu_fifoinfo = 0x0, vu_yield = 0x0}, v_hashlist = {le_next = 0x0, le_prev = 0xc75404b8}, v_hash = 0x17bcf, v_cache_src = {lh_first = 0x0}, v_cache_dst = {tqh_first = 0xc81c25e8, tqh_last = 0xc81c25f8}, v_cache_dd = 0x0, v_cstart = 0x25f, v_lasta = 0x189840, v_lastw = 0x25e, v_clen = 0x0, v_lock = {lock_object = {lo_name = 0xc0c8ebe2 "ufs", lo_flags = 0x57b0000, lo_data = 0x0, lo_witness = 0xc7131910}, lk_lock = 0xc74e7d86, lk_timo = 0x33, lk_pri = 0x50, lk_stack = {depth = 0xc, pcs = {0xc0873ac0, 0xc0acbc51, 0xc0bdd4b5, 0xc092a7f8, 0xc091e49b, 0xc092046a, 0xc092074b, 0xc0bdb0b5, 0xc091eafb, 0xc091ee43, 0xc0860f08, 0xc0ba6b20, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0}}}, v_interlock = {lock_object = {lo_name = 0xc0c9c4ba "vnode interlock", lo_flags = 0x1030000, lo_data = 0x0, lo_witness = 0xc712b248}, mtx_lock = 0x4}, v_vnlock = 0xcb3858b0, v_holdcnt = 0x6, v_usecount = 0x2, v_iflag = 0x0, v_vflag = 0x0, v_writecount = 0x0, v_freelist = {tqe_next = 0x0, tqe_prev = 0x0}, v_bufobj = {bo_mtx = {lock_object = {lo_name = 0xc0ca442a "bufobj interlock", lo_flags = 0x1030000, lo_data = 0x0, lo_witness = 0xc71301e8}, mtx_lock = 0x4}, bo_clean = {bv_hd = {tqh_first = 0xe733e50c, tqh_last = 0xe733e544}, bv_root = 0xe733e50c, bv_cnt = 0x1}, bo_dirty = {bv_hd = {tqh_first = 0x0, tqh_last = 0xcb385970}, bv_root = 0x0, bv_cnt = 0x0}, bo_numoutput = 0x0, bo_flag = 0x0, bo_ops = 0xc0d906e0, bo_bsize = 0x4000, bo_object = 0xc869c198, bo_synclist = {le_next = 0x0, le_prev = 0xc74da0b4}, bo_private = 0xcb385858, __bo_vnode = 0xcb385858}, v_pollinfo = 0x0, v_label = 0x0, v_lockf = 0x0, v_rl = {rl_waiters = {tqh_first = 0xc7825cd0, tqh_last = 0xc7825cd0}, rl_currdep = 0x0}} git diff master diff --git a/sys/conf/files b/sys/conf/files index 5571378..c8b4242 100644 --- a/sys/conf/files +++ b/sys/conf/files @@ -2009,6 +2009,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 @@ -2696,6 +2697,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/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_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/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_inode.c b/sys/ufs/ffs/ffs_inode.c index b2f9067..f57bdd7 100644 --- a/sys/ufs/ffs/ffs_inode.c +++ b/sys/ufs/ffs/ffs_inode.c @@ -270,9 +270,12 @@ ffs_truncate(vp, length, flags, cred, td) #endif if ((ip->i_flags & SF_SNAPSHOT) != 0) ffs_snapremove(vp); - vp->v_lasta = vp->v_clen = vp->v_cstart = vp->v_lastw = 0; +#define FORGET_CLUSTER(v) \ + vp->v_lasta = vp->v_clen = vp->v_cstart = vp->v_lastw = 0 + osize = ip->i_size; if (DOINGSOFTDEP(vp)) { - if (length > 0 || softdepslowdown) { + if ((length > 0 && length <= osize) || softdepslowdown) { + FORGET_CLUSTER(vp); /* * If a file is only partially truncated, then * we have to clean up the data structures @@ -288,7 +291,8 @@ ffs_truncate(vp, length, flags, cred, td) if (ip->i_flag & IN_SPACECOUNTED) fs->fs_pendingblocks -= datablocks; UFS_UNLOCK(ump); - } else { + } else if (length == 0) { + FORGET_CLUSTER(vp); #ifdef QUOTA (void) chkdq(ip, -datablocks, NOCRED, 0); #endif @@ -304,7 +308,6 @@ ffs_truncate(vp, length, flags, cred, td) return (ffs_update(vp, 0)); } } - osize = ip->i_size; /* * Lengthen the size of the file. We must ensure that the * last byte of the file is allocated. Since the smallest @@ -337,6 +340,7 @@ ffs_truncate(vp, length, flags, cred, td) * of subsequent file growth. Directories however are not * zero'ed as they should grow back initialized to empty. */ + FORGET_CLUSTER(vp); offset = blkoff(fs, length); if (offset == 0) { ip->i_size = length; 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..ad841ee --- /dev/null +++ b/sys/vm/vm_readwrite.c @@ -0,0 +1,529 @@ +/*- + * 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 + * + */ + +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)); +} + +/* + * 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) +{ + vm_object_t object; + vm_page_t m; + int locked; + + 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) + break; + VM_OBJECT_UNLOCK(object); + locked = VOP_ISLOCKED(vp); + VOP_UNLOCK(vp, 0); + VM_WAIT; + vn_lock(vp, locked | LK_RETRY); + if (vp->v_iflag & VI_DOOMED) + return (NULL); + 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) +{ + 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); + if (m == NULL) { + 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); + if (m == NULL) { + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_unlock_queues(); + error = EIO; + obj_locked = FALSE; + break; + } + 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); + if (error != 0 && (vp->v_iflag & VI_DOOMED)) { + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_unlock_queues(); + obj_locked = FALSE; + error = EBADF; + break; + } + m = vm_page_lookup(obj, idx + i); + if (m == NULL) { + if (error == VM_PAGER_OK) + continue; + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_unlock_queues(); + error = EIO; + break; + } + if (m->valid == 0 || error != VM_PAGER_OK) { + 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; + VATTR_NULL(&vattr); + + /* + * Extend the file if writing past end. + */ + if (osize1 < uio->uio_offset + resid) { + vattr.va_size = uio->uio_offset + resid; + error = VOP_SETATTR(vp, &vattr, td->td_ucred); + if (error != 0) + return (error); + } + + 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); + + 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); + if (m == NULL) { + 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; + } + 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); + if (error != 0 && (vp->v_iflag & VI_DOOMED)) { + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_unlock_queues(); + obj_locked = FALSE; + error = EBADF; + break; + } + m = vm_page_lookup(obj, idx + i); + if (m == NULL) { + if (error == VM_PAGER_OK) + continue; + vm_page_lock_queues(); + for (j = 0; j < i; j++) + vm_page_free(ma[j]); + vm_page_unlock_queues(); + error = EIO; + break; + } + if (m->valid == 0 || error != VM_PAGER_OK) { + 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) { + if (uio->uio_offset > osize1) + osize1 = uio->uio_offset; + /* + * 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.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); +}