http://www.novell.com/support/kb/doc.php?id=7002725
¸®´ª½º ½Ã½ºÅÛÀ» ¿î¿µÇÏ´Ù º¸¸é ½Ã½ºÅÛ Hang-up¿¡ ´ëÇÑ ¹®Á¦Á¡À» ¸¹ÀÌ µé¾î³ª°Ô µË´Ï´Ù. ¹°·Ð ¸®´ª½º ½Ã½ºÅÛ
ÀÚüÀÇ ¹®Á¦Á¡À̶ó°í º¸´Ù´Â ƯÁ¤ ¿î¿µ ÇÁ·Î¼¼½º¿¡ ´ëÇؼ ÀÎÅÍ·´Æ® ¶Ç´Â ½ºÄÉÁìÀÌ Á¤»óÀûÀ¸·Î ÁøÇàµÇÁö ¸øÇßÀ»¶§ ³ªÅ¸´Â ¹®Á¦Á¡¿¡ ´ëÇؼ °£·«ÇØ ¼Ò°³ÇØ º¸°íÀÚ ÇÕ´Ï´Ù.
°©Àڱ⠽ýºÅÛ ·Î±×¿¡¼ Ãâ·ÂÇÏ°ÔµÈ /var/log/message ÀÇ ½Ã½ºÅÛ ·Î±×.
kernel: INFO: task startup.sh:9902 blocked for more than 120 seconds. kernel: "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this messag kernel: startup.sh D 0000000000000008 0 9902 7811 0x00000004 kernel: ffff880828f17ce8 0000000000000082 ffff88081c2aeaa0 ffff88081c2aeaa0 kernel: ffff88081c2aeaa0 ffffea00378c0d98 ffff88081c2aeaa0 0000010100001e60 kernel: ffff88081c2af058 ffff880828f17fd8 000000000000fb88 ffff88081c2af058 kernel: Call Trace: kernel: [<ffffffffa00accf0>] ? ext4_file_open+0x0/0x130 [ext4] kernel: [<ffffffff814eae85>] schedule_timeout+0x215/0x2e0 kernel: [<ffffffff81174234>] ? nameidata_to_filp+0x54/0x70 kernel: [<ffffffff81268d39>] ? cpumask_next_and+0x29/0x50 kernel: [<ffffffff814eab03>] wait_for_common+0x123/0x180 kernel: [<ffffffff8105fa40>] ? default_wake_function+0x0/0x20 kernel: [<ffffffff814eac1d>] wait_for_completion+0x1d/0x20 kernel: [<ffffffff8106155c>] sched_exec+0xdc/0xe0 kernel: [<ffffffff8117ee90>] do_execve+0xe0/0x2c0 kernel: [<ffffffff810095ea>] sys_execve+0x4a/0x80 kernel: [<ffffffff8100b4ca>] stub_execve+0x6a/0xc0
|
[¿¹»ó ¹®Á¦Á¡ 1]
½Ã½ºÅÛ ·Î±×¿¡¼ ³ªÅ¸³ kernel:INFO: task ÀÇ ¸Þ¼¼Áö¸¦ ³ªÅ¸³»´Â Àǹ̴ ÇöÀç ¿î¿µÇÏ°íÀÚ ÇÏ´Â startup.sh
½ºÅ©¸³Æ®¿¡ ´ëÇؼ 120ÃÊ (2ºÐ default) µ¿¾È khungtaskd ¾²·¹µå¿¡¼ D-state »óŸ¦ °¨ÁöÇÏ¿© call trace
¸¦ È£ÃâÇÏ°Ô µÇ´Â »óȲÀ¸·Î ¿¹ÃøÇÒ ¼ö ÀÖ½À´Ï´Ù.
[¿¹»ó ¹®Á¦Á¡2]
½Ã½ºÅÛÀÇ ¼º´ÉÀúÇÏ Æ¯È÷ ·¹µåÇÞÀÇ º¸°í¼¿¡ ÀÇÇÏ¸é µð½ºÅ©ÀÇ heavy I/O ·Î ³ªÅ¸³ª´Â ¹®Á¦Á¡À¸·Î
¿¹ÃøµÉ¼ö ÀÖ½À´Ï´Ù.
[¿¹»ó ¹®Á¦Á¡ 2]
¿î¿µµÇ°í ÀÖ´Â Application¿¡ ´ëÇؼ "D-state" (Uninterruptible sleep) ¸ðµå°¡ 120ÃÊ µ¿¾È Áö¼ÓµÇ¾úÀ»¶§
¿¹ÃøµÉ¼ö ÀÖ´Â ¹®Á¦·Î ÇØ´ç ÇÁ·Î¼¼½º°¡ Á¤»óÀûÀ¸·Î ½ºÄÉÁ층ÀÌ ÀϾÁö ¾Ê¾ÒÀ» ¶§µµ ³ªÅ¸³ª°Ô µË´Ï´Ù
[ D-state ¿øÀκм®À» À§Çؼ´Â ? ]
À§¿Í°°Àº ¹®Á¦Á¡¿¡ ´ëÇؼ Á¢±ÙÇÒ¼ö ÀÖ´Â ±âº»ÀûÀÎ ¹æ¹ý¿¡ ´ëÇؼ´Â Á¤È®ÇÑ ¹®Á¦Á¡À» ÆľÇÇϱâ À§Çؼ´Â Ä¿³ÎÀÇ ´ýÇÁ¸¦ ÀÌ¿ëÇÏ¿© core¸¦ ºÐ¼®ÇÏ´Â °ÍÀÌ °¡Àå Á¤È®ÇÒ¼ö ÀÖ½À´Ï´Ù. core¸¦ ºÐ¼®Çϱâ À§ÇÑ ¹æ¹ý·Ð¿¡ ´ëÇؼ´Â ´ÙÀ½
ºí·Î±ëÀ» ÅëÇÏ¿© ¼Ò°³Çϵµ·Ï ÇÏ°Ú½À´Ï´Ù.
# echo 1 > /proc/sys/kernel/hung_task_panic
|
À§¿Í °°ÀÌ kernel core¸¦ »ý¼ºÇϱâ À§ÇØ ¼³Á¤À» ÁøÇàÇÑ ÈÄ µ¿ÀÏÇÑ Çö»ýÀÌ ¹ß»ýµÇ¾î core°¡ »ý¼ºÀÌ µÇ¸é ¹®Á¦°¡
µÇ´Â ¿î¿µ ÇÁ·Î¼¼½ºÀÇ D-state ¹®Á¡¿¡ ´ëÇؼ ºÐ¼®ÀÌ °¡´ÉÇÕ´Ï´Ù.
[ hung_task_timeoutÀ» Disable ½ÃÄѶó]
±âº»ÀûÀÎ Work-Arround¿¡ ´ëÇؼ´Â ¾Æ·¡¿Í °°ÀÌ hung_task_timeout ºÎºÐ¿¡ ´ëÇؼ Disable ½ÃÄÑÁÖ´Â °ÍÀ» ±ÇÀåÇÏ°í ÀÖ½À´Ï´Ù.
# echo 0 > /proc/sys/kernel/hung_task_timeout_secs
|
À§¿Í °°ÀÌ Ä¿³Î¿¡¼ Hang Time OUt À» üũÇÏ´Â ºÎºÐ¿¡ ´ëÇؼ Disable ½ÃÄÑÁØ ÈÄ¿¡´Â call trace ¿©ºÎ°¡ Áö¼ÓÀûÀ¸·Î ¹ß»ýµÇ´ÂÁö ¸ð´ÏÅ͸µÀÌ ÇÊ¿äÇÕ´Ï´Ù. ¸¸¾à ÇØ´ç ÇÁ·Î¼¼½º¿¡ ´ëÇؼ Uninterrupt sleepÀÌ Áö¼ÓÀûÀ¸·Î ¹ß»ýÇÑ´Ù¸é Ä¿³Î ¾÷µ¥ÀÌÆ® ¶ÇÇÑ °í·ÁÇØ¾ß ÇÕ´Ï´Ù.
¡Ø samba hang upÇö»óÀº....°á±¹Àº ¸®ºÎÆÃÀ¸·Î ÇØ°á...