From mboxrd@z Thu Jan 1 00:00:00 1970 From: Shirish Pargaonkar Subject: wait_even_interruptible_timeout(), signal, spin_lock() = system hang Date: Fri, 28 May 2010 11:44:46 -0500 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Cc: linux-fsdevel To: linux-kernel@vger.kernel.org Return-path: Sender: linux-kernel-owner@vger.kernel.org List-Id: linux-fsdevel.vger.kernel.org After this sequence of calls, system hangs (smp, x86 box based with .34 kernel), can ping only. I have not been able to break in with Alt Sysrq t, working on that rc = wait_event_interruptible_timeout(ses->server->response_q, (midQ->midState != MID_REQUEST_SUBMITTED), timeout); if (rc < 0) { cFYI(1, ("command 0x%x interrupted", midQ->command)); return -1; } and when function that invoking function after coming out with ERESTARTSYS (I kill the command with Ctrl C) calls spin_lock(&GlobalMid_Lock); system hangs. If I sleep before return -1 (e.g. msleep(1), no hang) I do not have to use wait_event_interruptible_timeout and no such problems with wait_event_timeout, it is only when signal/interrupt is involved, I run into this problem Any pointers/ideas what could be happening, would be really really appreciated. Regards, Shirish