[LU-7055] osd_ost_fini calls sleeping function under rwlock Created: 28/Aug/15 Updated: 11/Apr/16 Resolved: 11/Apr/16 |
|
| Status: | Resolved |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | Lustre 2.9.0 |
| Type: | Bug | Priority: | Major |
| Reporter: | Oleg Drokin | Assignee: | Emoly Liu |
| Resolution: | Fixed | Votes: | 0 |
| Labels: | None | ||
| Severity: | 3 |
| Rank (Obsolete): | 9223372036854775807 |
| Description |
|
I was hitting "BUG: rwlock wrong CPU on CPU#6, umount/19930" sort of message frequently lately and I found at least one of the abusers. It seems osd_ost_fini calls into osd_seq_free() under write lock, which in turn calls into dput that might sleep which is a no-no. |
| Comments |
| Comment by Joseph Gmitter (Inactive) [ 28/Aug/15 ] |
|
Hi Emoly, |
| Comment by Andrew Perepechko [ 04/Mar/16 ] |
|
The same issue. BUG: rwlock wrong CPU on CPU#2, umount/14990, ffff8800891aa748 (Tainted: G W --------------- ) Pid: 14990, comm: umount Tainted: G W --------------- 2.6.32 #1 Call Trace: [<ffffffff812a728a>] ? rwlock_bug+0x6a/0x70 [<ffffffff812a72fb>] ? _raw_write_unlock+0x6b/0x80 [<ffffffff8154892b>] ? _write_unlock+0x2b/0x40 [<ffffffffa0e22529>] ? osd_obj_map_fini+0x229/0x4b0 [osd_ldiskfs] [<ffffffffa0e0913c>] ? osd_device_fini+0x13c/0x190 [osd_ldiskfs] [<ffffffffa0788573>] ? class_cleanup+0x583/0xd40 [obdclass] [<ffffffffa07663ac>] ? class_name2dev+0x7c/0xe0 [obdclass] [<ffffffffa078a29a>] ? class_process_config+0x156a/0x1ad0 [obdclass] [<ffffffffa0782dfc>] ? lustre_cfg_new+0x16c/0x6e0 [obdclass] [<ffffffffa0782f63>] ? lustre_cfg_new+0x2d3/0x6e0 [obdclass] [<ffffffffa078a979>] ? class_manual_cleanup+0x179/0x6e0 [obdclass] [<ffffffffa0764360>] ? class_export_put+0x110/0x2d0 [obdclass] [<ffffffffa0e0b394>] ? osd_obd_disconnect+0x174/0x1e0 [osd_ldiskfs] [<ffffffffa078ceab>] ? lustre_put_lsi+0x1ab/0xeb0 [obdclass] [<ffffffffa0794f18>] ? lustre_common_put_super+0x5c8/0xbe0 [obdclass] [<ffffffffa07c396d>] ? server_put_super+0x1bd/0xed0 [obdclass] [<ffffffff8119880b>] ? generic_shutdown_super+0x5b/0xe0 [<ffffffff811988f6>] ? kill_anon_super+0x16/0x60 [<ffffffff8119908f>] ? deactivate_super+0x4f/0x80 [<ffffffffa078c7b6>] ? lustre_kill_super+0x36/0x60 [obdclass] [<ffffffff81199097>] ? deactivate_super+0x57/0x80 [<ffffffff811b88cf>] ? mntput_no_expire+0xbf/0x110 [<ffffffff811b943b>] ? sys_umount+0x7b/0x3a0 [<ffffffff8100b0b2>] ? system_call_fastpath+0x16/0x1b |
| Comment by Gerrit Updater [ 29/Mar/16 ] |
|
Emoly Liu (emoly.liu@intel.com) uploaded a new patch: http://review.whamcloud.com/19189 |
| Comment by Gerrit Updater [ 11/Apr/16 ] |
|
Oleg Drokin (oleg.drokin@intel.com) merged in patch http://review.whamcloud.com/19189/ |
| Comment by Emoly Liu [ 11/Apr/16 ] |
|
This patch has landed to 2.9. |