From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S965085AbXBUBwc (ORCPT ); Tue, 20 Feb 2007 20:52:32 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S965076AbXBUBwb (ORCPT ); Tue, 20 Feb 2007 20:52:31 -0500 Received: from mail.suse.de ([195.135.220.2]:42932 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S964934AbXBUBwY (ORCPT ); Tue, 20 Feb 2007 20:52:24 -0500 Date: Tue, 20 Feb 2007 17:51:02 -0800 From: Greg KH To: linux-kernel@vger.kernel.org, stable@kernel.org Cc: Justin Forbes , Zwane Mwaikambo , "Theodore Ts'o" , Randy Dunlap , Dave Jones , Chuck Wolber , Chris Wedgwood , Michael Krufky , torvalds@linux-foundation.org, akpm@linux-foundation.org, alan@lxorguk.ukuu.org.uk, Robert Hancock , Mauro Carvalho Chehab Subject: [patch 13/18] V4L: cx88: Fix lockup on suspend Message-ID: <20070221015102.GN3684@kroah.com> References: <20070221014413.282048309@mini.kroah.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline; filename="V4L-cx88-Fix-lockup-on-suspend.patch" In-Reply-To: <20070221014927.GA3684@kroah.com> User-Agent: Mutt/1.5.13 (2006-08-11) Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org -stable review patch. If anyone has any objections, please let us know. ------------------ From: Robert Hancock Suspending with the cx88xx module loaded causes the system to lock up because the cx88_audio_thread kthread was missing a try_to_freeze() call, which caused it to go into a tight loop and result in softlockup when suspending. Fix that. (cherry picked from commit a96afb3e9428f2e7463344f12dbc85faf08e2e09) Signed-off-by: Robert Hancock Signed-off-by: Mauro Carvalho Chehab Signed-off-by: Michael Krufky Signed-off-by: Greg Kroah-Hartman --- drivers/media/video/cx88/cx88-tvaudio.c | 2 ++ 1 file changed, 2 insertions(+) --- linux-2.6.18.7.orig/drivers/media/video/cx88/cx88-tvaudio.c +++ linux-2.6.18.7/drivers/media/video/cx88/cx88-tvaudio.c @@ -38,6 +38,7 @@ #include #include #include +#include #include #include #include @@ -979,6 +980,7 @@ int cx88_audio_thread(void *data) msleep_interruptible(1000); if (kthread_should_stop()) break; + try_to_freeze(); /* just monitor the audio status for now ... */ memset(&t, 0, sizeof(t)); --