Sorry Dave. Let me copy and paste the trace below, hope it works. Thanks, Norman Below is the sysrq for the 2 offending threads. 1. the disk writing thread hung in fclose Tigris_IMC.exe D 0000000000000000 0 4197 4100 0x00000000 ffff881f3db921c0 0000000000000086 0000000000000000 ffff881f42eb8b80 ffff880861419fd8 ffff880861419fd8 ffff880861419fd8 ffff881f3db921c0 0000000000080000 0000000000000000 00000000000401e0 00000000061805c1 Call Trace: [<ffffffff810d89ed>] ? zone_statistics+0x9d/0xa0 [<ffffffffa0402682>] ? xfs_iomap_write_delay+0x172/0x2b0 [xfs] [<ffffffff813c7e35>] ? rwsem_down_failed_common+0xc5/0x150 [<ffffffff811f32a3>] ? call_rwsem_down_write_failed+0x13/0x20 [<ffffffff813c74ec>] ? down_write+0x1c/0x1d [<ffffffffa03fba8e>] ? xfs_ilock+0x7e/0xa0 [xfs] [<ffffffffa041b64b>] ? __xfs_get_blocks+0x1db/0x3d0 [xfs] [<ffffffff81103340>] ? kmem_cache_alloc+0x100/0x130 [<ffffffff8113fa2e>] ? alloc_page_buffers+0x6e/0xe0 [<ffffffff81141cdf>] ? __block_write_begin+0x1cf/0x4d0 [<ffffffffa041b850>] ? xfs_get_blocks_direct+0x10/0x10 [xfs] [<ffffffffa041b850>] ? xfs_get_blocks_direct+0x10/0x10 [xfs] [<ffffffff8114226b>] ? block_write_begin+0x4b/0xa0 [<ffffffffa041b8fb>] ? xfs_vm_write_begin+0x3b/0x70 [xfs] [<ffffffff810c0258>] ? generic_file_buffered_write+0xf8/0x250 [<ffffffffa04207b5>] ? xfs_file_buffered_aio_write+0xc5/0x130 [xfs] [<ffffffffa042099c>] ? xfs_file_aio_write+0x17c/0x2a0 [xfs] [<ffffffff81115b28>] ? do_sync_write+0xb8/0xf0 [<ffffffff8119daa4>] ? security_file_permission+0x24/0xc0 [<ffffffff8111630a>] ? vfs_write+0xaa/0x190 [<ffffffff81116657>] ? sys_write+0x47/0x90 [<ffffffff813ce412>] ? system_call_fastpath+0x16/0x1b 2. flush from another partition flush-8:48 D 0000000000000000 0 4217 2 0x00000000 ffff883fc053f580 0000000000000046 ffff881f40f348f0 ffff881f40e2aa80 ffff883fabb83fd8 ffff883fabb83fd8 ffff883fabb83fd8 ffff883fc053f580 ffff883fc27654c0 ffff881f40dfc040 0000000000000001 ffffffff810656f9 Call Trace: [<ffffffff810656f9>] ? __queue_work+0xc9/0x390 [<ffffffff811e3e3f>] ? cfq_insert_request+0xaf/0x4f0 [<ffffffff81065a06>] ? queue_work_on+0x16/0x20 [<ffffffff813c69cd>] ? schedule_timeout+0x1dd/0x240 [<ffffffffa041a762>] ? kmem_zone_zalloc+0x32/0x50 [xfs] [<ffffffff813c7559>] ? __down+0x6c/0x99 [<ffffffff81070377>] ? down+0x37/0x40 [<ffffffffa041d59d>] ? xfs_buf_lock+0x1d/0x40 [xfs] [<ffffffffa041d6a3>] ? _xfs_buf_find+0xe3/0x210 [xfs] [<ffffffffa041dcb4>] ? xfs_buf_get+0x64/0x150 [xfs] [<ffffffffa041dfb2>] ? xfs_buf_read+0x12/0xa0 [xfs] [<ffffffffa04151af>] ? xfs_trans_read_buf+0x1bf/0x2f0 [xfs] [<ffffffffa03d06c0>] ? xfs_read_agf+0x60/0x1b0 [xfs] [<ffffffffa03cf3b7>] ? xfs_alloc_update+0x17/0x20 [xfs] [<ffffffffa03d0841>] ? xfs_alloc_read_agf+0x31/0xd0 [xfs] [<ffffffffa03d2083>] ? xfs_alloc_fix_freelist+0x433/0x4a0 [xfs] [<ffffffff810d89ed>] ? zone_statistics+0x9d/0xa0 [<ffffffffa03d23a4>] ? xfs_alloc_vextent+0x184/0x4a0 [xfs] [<ffffffffa03dc348>] ? xfs_bmap_btalloc+0x2d8/0x 6d0 [xfs] [<ffffffffa03e0efd>] ? xfs_bmapi+0x9bd/0x11a0 [xfs] [<ffffffffa03d9bbc>] ? xfs_bmap_search_multi_extents+0xac/0x120 [xfs] [<ffffffffa040293c>] ? xfs_iomap_write_allocate+0x17c/0x330 [xfs] [<ffffffffa041b20f>] ? xfs_map_blocks+0x19f/0x1b0 [xfs] [<ffffffffa041c20e>] ? xfs_vm_writepage+0x19e/0x470 [xfs] [<ffffffff810c97ba>] ? __writepage+0xa/0x30 [<ffffffff810c9c4d>] ? write_cache_pages+0x1cd/0x3d0 [<ffffffff810c97b0>] ? bdi_set_max_ratio+0x90/0x90 [<ffffffff810c9e93>] ? generic_writepages+0x43/0x70 [<ffffffff81139330>] ? writeback_single_inode+0x160/0x300 [<ffffffff811397d4>] ? writeback_sb_inodes+0x104/0x1a0 [<ffffffff81139cfd>] ? writeback_inodes_wb+0x8d/0x140 [<ffffffff8113a05b>] ? wb_writeback+0x2ab/0x310 [<ffffffff813cedee>] ? apic_timer_interrupt+0xe/0x20 [<ffffffff8113a10e>] ? wb_check_old_data_flush+0x4e/0xa0 [<ffffffff8113a28b>] ? wb_do_writeback+0x12b/0x160 [<ffffffff8113a332>] ? bdi_writeback_thread+0x72/0x150 [<ffffffff8113a2c0>] ? wb_do_writeback+0x160/0x160 [<ffffffff8106b06e>] ? kthread+0x7e/0x90 [<ffffffff813cf544>] ? kernel_thread_helper+0x4/0x10 [<ffffffff8106aff0>] ? kthread_worker_fn+0x1a0/0x1a0 [<ffffffff813cf540>] ? gs_change+0x13/0x13 kernel version 3.0.13-0.27 xfsprogs version xfs_repair version 3.1.6 number of CPUs 32 xfs_info /fastraid2 meta-data=/dev/sdd1 isize=256 agcount=4, agsize=17822144 blks = sectsz=512 attr=2 data = bsize=4096 blocks=71288576, imaxpct=25 = sunit=0 swidth=0 blks naming =version 2 bsize=4096 ascii-ci=0 log =internal bsize=4096 blocks=34808, version=2 = sectsz=512 sunit=0 blks, lazy-count=1 realtime =none extsz=4096 blocks=0, rtextents=0 contents of /proc/meminfo cat /proc/meminfo MemTotal: 262429860 kB MemFree: 146893200 kB Buffers: 38600 kB Cached: 336388 kB SwapCached: 0 kB Active: 4601364 kB Inactive: 277852 kB Active(anon): 4504236 kB Inactive(anon): 9524 kB Active(file): 97128 kB Inactive(file): 268328 kB Unevictable: 107520004 kB Mlocked: 212048 kB SwapTotal: 1051644 kB SwapFree: 1051644 kB Dirty: 140 kB Writeback: 0 kB AnonPages: 112024272 kB Mapped: 2031420 kB Shmem: 9528 kB Slab: 123444 kB SReclaimable: 24088 kB SUnreclaim: 99356 kB KernelStack: 3728 kB PageTables: 229284 kB NFS_Unstable: 0 kB Bounce: 0 kB WritebackTmp: 0 kB CommitLimit: 260857204 kB Committed_AS: 112752960 kB VmallocTotal: 34359738367 kB VmallocUsed: 712612 kB VmallocChunk: 34224802044 kB HardwareCorrupted: 0 kB AnonHugePages: 111861760 kB HugePages_Total: 0 HugePages_Free: 0 HugePages_Rsvd: 0 HugePages_Surp: 0 Hugepagesize: 2048 kB DirectMap4k: 133788 kB DirectMap2M: 7178240 kB DirectMap1G: 261095424 kB contents of /proc/mounts cat /proc/mounts rootfs / rootfs rw 0 0 udev /dev tmpfs rw,relatime,nr_inodes=0,mode=755 0 0 tmpfs /dev/shm tmpfs rw,relatime 0 0 /dev/sde3 / reiserfs rw,relatime,acl,user_xattr 0 0 proc /proc proc rw,relatime 0 0 sysfs /sys sysfs rw,relatime 0 0 devpts /dev/pts devpts rw,relatime,gid=5,mode=620,ptmxmode=000 0 0 /dev/sde1 /boot reiserfs rw,relatime,acl,user_xattr 0 0 fusectl /sys/fs/fuse/connections fusectl rw,relatime 0 0 debugfs /sys/kernel/debug debugfs rw,relatime 0 0 nfsd /proc/fs/nfsd nfsd rw,relatime 0 0 rpc_pipefs /var/lib/nfs/rpc_pipefs rpc_pipefs rw,relatime 0 0 //10.34.3.247/IMCRootFolder /home/klac/mount_path_Tool cifs rw,relatime,sec=ntlm,unc=\\10.34.3.247\IMCRootFolder,username=KTMfg,uid=1000,forceuid,gid=100,forcegid,addr=10.34.3.247,file_mode=0755,dir_mode=0755,nounix,rsize=16384,wsize=131007,actimeo=1 0 0 /dev/sda1 /edge xfs rw,noatime,nodiratime,attr2,delaylog,largeio,nobarrier,logbufs=8,logbsize=256k,noquota 0 0 /dev/sdb1 /fastraid0 xfs rw,noatime,nodiratime,attr2,delaylog,largeio,nobarrier,logbufs=8,logbsize=256k,noquota 0 0 /dev/sdc1 /fastraid1 xfs rw,noatime,nodiratime,attr2,delaylog,largeio,nobarrier,logbufs=8,logbsize=256k,noquota 0 0 /dev/sdd1 /fastraid2 xfs rw,noatime,nodiratime,attr2,delaylog,largeio,nobarrier,logbufs=8,logbsize=256k,noquota 0 0 /dev/sdf1 /fastraid3 xfs rw,noatime,nodiratime,attr2,delaylog,largeio,nobarrier,logbufs=8,logbsize=256k,noquota 0 0 /dev/sdg1 /fastraid4 xfs rw,noatime,nodiratime,attr2,delaylog,largeio,nobarrier,logbufs=8,logbsize=256k,noquota 0 0 /dev/sdh1 /fastraid5 xfs rw,noatime,nodiratime,attr2,delaylog,largeio,nobarrier,logbufs=8,logbsize=256k,noquota 0 0 contents of /proc/partitions cat /proc/partitions major minor #blocks name 8 16 285155328 sdb 8 17 285154304 sdb1 8 32 285155328 sdc 8 33 285154304 sdc1 8 48 285155328 sdd 8 49 285154304 sdd1 8 80 285671424 sdf 8 81 285659136 sdf1 8 64 124485632 sde 8 65 1051648 sde1 8 66 1051648 sde2 8 67 122381312 sde3 8 96 285671424 sdg 8 97 285659136 sdg1 8 112 285671424 sdh 8 113 285659136 sdh1 8 0 142577664 sda 8 1 142576640 sda1 RAID layout (hardware and/or software) Hardware RAID 0 , 2 disks per RAID. LVM configuration fdisk -l Disk /dev/sdb: 292.0 GB, 291999055872 bytes 255 heads, 63 sectors/track, 35500 cylinders, total 570310656 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x00073b0b Device Boot Start End Blocks Id System /dev/sdb1 2048 570310655 285154304 83 Linux Disk /dev/sdc: 292.0 GB, 291999055872 bytes 255 heads, 63 sectors/track, 35500 cylinders, total 570310656 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000d3eba Device Boot Start End Blocks Id System /dev/sdc1 2048 570310655 285154304 83 Linux Disk /dev/sdd: 292.0 GB, 291999055872 bytes 255 heads, 63 sectors/track, 35500 cylinders, total 570310656 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0003e548 Device Boot Start End Blocks Id System /dev/sdd1 2048 570310655 285154304 83 Linux Disk /dev/sdf: 292.5 GB, 292527538176 bytes 255 heads, 63 sectors/track, 35564 cylinders, total 571342848 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0009caf0 Device Boot Start End Blocks Id System /dev/sdf1 2048 571320319 285659136 83 Linux Disk /dev/sde: 127.5 GB, 127473287168 bytes 255 heads, 63 sectors/track, 15497 cylinders, total 248971264 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x674cfaee Device Boot Start End Blocks Id System /dev/sde1 * 2048 2105343 1051648 83 Linux /dev/sde2 2105344 4208639 1051648 82 Linux swap / Solaris /dev/sde3 4208640 248971263 122381312 83 Linux Disk /dev/sdg: 292.5 GB, 292527538176 bytes 255 heads, 63 sectors/track, 35564 cylinders, total 571342848 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0000a1d4 Device Boot Start End Blocks Id System /dev/sdg1 2048 571320319 285659136 83 Linux Disk /dev/sdh: 292.5 GB, 292527538176 bytes 255 heads, 63 sectors/track, 35564 cylinders, total 571342848 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x0006b7ff Device Boot Start End Blocks Id System /dev/sdh1 2048 571320319 285659136 83 Linux Disk /dev/sda: 146.0 GB, 145999527936 bytes 255 heads, 63 sectors/track, 17750 cylinders, total 285155328 sectors Units = sectors of 1 * 512 = 512 bytes Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Disk identifier: 0x000f1568 Device Boot Start End Blocks Id System /dev/sda1 2048 285155327 142576640 83 Linux -----Original Message----- From: Dave Chinner [mailto:david@xxxxxxxxxxxxx] Sent: Monday, February 11, 2013 10:56 PM To: Cheung, Norman Cc: linux-xfs@xxxxxxxxxxx Subject: Re: Hung in D state during fclose On Tue, Feb 12, 2013 at 06:17:04AM +0000, Norman Cheung wrote: > I am not sure if this forum is the same as xfs@xxxxxxxxxxx, if so, my > apology for double posting. I appreciate in sight or work around on this. > > Every 3 - 4 days, my application will hang in D state at file close. > And shortly after that flush (from a different partition) is locked in > D state also. > > My application runs continuously, 5 threads are writing data at a rate > of 1.5M/sec to 5 different XFS partitions. Each of these partitions > is a 2 disk RAID 0. In addition, I have other threads consuming 100% > CPU at all time, and most of these threads are tied to its own CPU. > > There are 5 data writing threads are also set to run in specific CPU > (one CPU per thread), with priority set to high (-2). The data writing pattern is: > each disk writing thread will write a file 1.5 Gig. Then the thread > will pause for about 3 minutes. Hence we have 5 files of 1.5Gig each > after one processing cycle. And we keep 5 sets and delete the older ones. > > After about 300 - 800 cycle, one or two of these disk writing threads > will go into D state. And within a second flush of another partition > will show up in D state. then after 15 minutes of no activities, the > parent task will lower the priority of all threads (to noraml 20) and > abort the threads. In all cases, lowering the priority will get > threads out of D states. I have also tried running the disk writing > threads with normal priority (20). Same hangs. Also the fclose of > all 5 files to 5 different partitions happens around the same time. > > Thanks in advance, > > Norman > > > Below is the sysrq for the 2 offending threads. > > 1. the disk writing thread hung in fclose > > > Tigris_IMC.exe D 0000000000000000 0 4197 4100 0x00000000 > ffff881f3db921c0 0000000000000086 0000000000000000 ffff881f42eb8b80 > ffff880861419fd8 ffff880861419fd8 ffff880861419fd8 ffff881f3db921c0 > 0000000000080000 0000000000000000 00000000000401e0 00000000061805c1 Call Trace: > [<ffffffff810d89ed>] ? zone_statistics+0x9d/0xa0 [<ffffffffa0402682>] ? > xfs_iomap_write_delay+0x172/0x2b0 [xfs] [<ffffffff813c7e35>] ? > rwsem_down_failed_common+0xc5/0x150 > [<ffffffff811f32a3>] ? call_rwsem_down_write_failed+0x13/0x20 > [<ffffffff813c74ec>] ? down_write+0x1c/0x1d [<ffffffffa03fba8e>] ? > xfs_ilock+0x7e/0xa0 [xfs] [<ffffffffa041b64b>] ? > __xfs_get_blocks+0x1db/0x3d0 [xfs] [<ffffffff81103340>] ? > kmem_cache_alloc+0x100/0x130 [<ffffffff8113fa2e>] ? alloc_page_buffers+0x6e/0xe0 [<ffffffff81141cdf>] ? > __block_write_begin+0x1cf/0x4d0 [<ffffffffa041b850>] ? > xfs_get_blocks_direct+0x10/0x10 [xfs] [<ffffffffa041b850>] ? > xfs_get_blocks_direct+0x10/0x10 [xfs] [<ffffffff8114226b>] ? > block_write_begin+0x4b/0xa0 [<ffffffffa041b8fb>] ? > xfs_vm_write_begin+0x3b/0x70 [xfs] [<ffffffff810c0258>] ? > generic_file_buffered_write+0xf8/0x250 > [<ffffffffa04207b5>] ? xfs_file_buffered_aio_write+0xc5/0x130 [xfs] > [<ffffffffa042099c>] ? xfs_file_aio_write+0x17c/0x2a0 [xfs] > [<ffffffff81115b28>] ? do_sync_write+0xb8/0xf0 [<ffffffff8119daa4>] ? > security_file_permission+0x24/0xc0 > [<ffffffff8111630a>] ? vfs_write+0xaa/0x190 [<ffffffff81116657>] ? > sys_write+0x47/0x90 [<ffffffff813ce412>] ? > system_call_fastpath+0x16/0x1b Can you please post non-mangled traces? these have all the lines run together and then wrapped by you mailer.... Cheers, Dave. -- Dave Chinner david@xxxxxxxxxxxxx _______________________________________________ xfs mailing list xfs@xxxxxxxxxxx http://oss.sgi.com/mailman/listinfo/xfs