Project

General

Profile

Actions

Bug #10418

closed

ceph: can't block inside wait loops

Added by Ilya Dryomov over 9 years ago. Updated about 9 years ago.

Status:
Resolved
Priority:
High
Assignee:
Category:
-
Target version:
-
% Done:

0%

Source:
other
Tags:
Backport:
Regression:
Severity:
3 - minor
Reviewed:
Affected Versions:
ceph-qa-suite:
Crash signature (v1):
Crash signature (v2):

Description

[ 40.067471] ------------[ cut here ]------------
[ 40.079642] WARNING: CPU: 3 PID: 1402 at kernel/sched/core.c:7303 __might_sleep+0x57/0xa0()
[ 40.098360] do not call blocking ops when !TASK_RUNNING; state=2 set at [<ffffffff810790d0>] prepare_to_wait_event+0xa0/0x120
[ 40.123300] Modules linked in:
[ 40.133832] CPU: 3 PID: 1402 Comm: umount Not tainted 3.18.0-vm+ #40
[ 40.148608] Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
[ 40.162269] ffffffff819c58dd ffff88000b873c08 ffffffff816d8e70 0000000000000001
[ 40.186532] ffff88000b873c58 ffff88000b873c48 ffffffff81039ff2 0000000000000000
[ 40.211429] ffffffff819c5bd4 000000000000026d 0000000000000000 ffff88000a751808
[ 40.235519] Call Trace:
[ 40.246421] [<ffffffff816d8e70>] dump_stack+0x4f/0x7b
[ 40.262509] [<ffffffff81039ff2>] warn_slowpath_common+0xa2/0xc0
[ 40.280326] [<ffffffff8103a051>] warn_slowpath_fmt+0x41/0x50
[ 40.301386] [<ffffffff810790d0>] ? prepare_to_wait_event+0xa0/0x120
[ 40.325582] [<ffffffff810790d0>] ? prepare_to_wait_event+0xa0/0x120
[ 40.349284] [<ffffffff81060697>] __might_sleep+0x57/0xa0
[ 40.368904] [<ffffffff816dd09a>] mutex_lock_nested+0x2a/0x390
[ 40.390291] [<ffffffff8107e30d>] ? trace_hardirqs_on_caller+0x16d/0x200
[ 40.413425] [<ffffffff8107e3ad>] ? trace_hardirqs_on+0xd/0x10
[ 40.435578] [<ffffffff813ce22e>] done_closing_sessions+0x2e/0x80
[ 40.458278] [<ffffffff813d2b61>] ceph_mdsc_close_sessions+0x141/0x260
[ 40.481896] [<ffffffff81079150>] ? prepare_to_wait_event+0x120/0x120
[ 40.505432] [<ffffffff813b963f>] ceph_put_super+0x1f/0x50
[ 40.527231] [<ffffffff8114ef61>] generic_shutdown_super+0x71/0x100
[ 40.549493] [<ffffffff8114f521>] kill_anon_super+0x11/0x20
[ 40.570899] [<ffffffff813b9172>] ceph_kill_sb+0x22/0x40
[ 40.589896] [<ffffffff8114ed8c>] deactivate_locked_super+0x3c/0x60
[ 40.611565] [<ffffffff8114ee08>] deactivate_super+0x58/0x70
[ 40.632576] [<ffffffff8116dd43>] cleanup_mnt+0x63/0x90
[ 40.654577] [<ffffffff8116ddcd>] __cleanup_mnt+0xd/0x10
[ 40.672461] [<ffffffff81059ace>] task_work_run+0xbe/0xf0
[ 40.692426] [<ffffffff81002a06>] do_notify_resume+0x46/0x60
[ 40.713515] [<ffffffff816e16d8>] int_signal+0x12/0x17
[ 40.733821] ---[ end trace 2f39068327206a1c ]---

There seem to be a couple more apart from this one, I'll try to tackle these and see how it goes.

Actions #1

Updated by Ilya Dryomov over 9 years ago

  • Assignee changed from Ilya Dryomov to Zheng Yan

Hi Zheng,

I noticed you fixed the one in ceph_mdsc_sync(). There seem to be two more of these:

wait_event_interruptible() in ceph_get_caps()
wait_event_timeout() in ceph_mdsc_close_sessions()

Actions #2

Updated by Zheng Yan over 9 years ago

  • Status changed from In Progress to 7
Actions #3

Updated by Ilya Dryomov about 9 years ago

  • Status changed from 7 to Resolved
Actions

Also available in: Atom PDF