OpenSolaris

Printable Version Enter a New Search
Bug ID 6350587
Synopsis threads blocked in cv_wait_sig after a "forced" unmount on error never woken up
State 10-Fix Delivered (Fix available in build)
Category:Subcategory kernel:ufs
Keywords rtiq_reviewed | ufs-forced-umount
Responsible Engineer Owen Roberts
Reported Against snv_26
Duplicate Of
Introduced In solaris_7
Commit to Fix snv_34
Fixed In snv_34
Release Fixed solaris_nevada(snv_34) , solaris_10u3(s10u3_01) (Bug ID:2135214) solaris_9(s9patch) (Bug ID:2135215,) solaris_8(s8patch) (Bug ID:2135216,)
Related Bugs 4134299 , 4904481 , 4316952
Submit Date 15-November-2005
Last Update Date 7-July-2009
Description
While investigating 4316952 and running the testcase, found that there were processes that were created to operate on the filesystem that were not exiting when the fs was foribly unmounted on some error condition.

After fsflush runs and frees the ufsvfs the threads are still running and any subsequent signal either via kill or reboot (which kills the proc) the system would panic with the following stack :

0x2a1006fb480 unix:panic+0x1c
0x2a1006fb530 unix:die+0x78
0x2a1006fb610 unix:trap+0x9d4
0x2a1006fb760 unix:ktl0+0x48
0x2a1006fb8b0 <trap>ufs:ufs_write+0x2e8
              genunix:fop_write - frame recycled
0x2a1006fb9e0 genunix:write+0x270
0x2a1006fbae0 unix:syscall_trap32+0xcc
-- switch to user thread's user stack --
Work Around
N/A
Comments
N/A