From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S263174AbVG3UzI (ORCPT ); Sat, 30 Jul 2005 16:55:08 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S263165AbVG3UzI (ORCPT ); Sat, 30 Jul 2005 16:55:08 -0400 Received: from caramon.arm.linux.org.uk ([212.18.232.186]:7946 "EHLO caramon.arm.linux.org.uk") by vger.kernel.org with ESMTP id S263174AbVG3UyP (ORCPT ); Sat, 30 Jul 2005 16:54:15 -0400 Date: Sat, 30 Jul 2005 21:54:03 +0100 From: Russell King To: Linus Torvalds Cc: Hugh Dickins , Andrew Morton , Dominik Brodowski , Daniel Ritz , linux-kernel@vger.kernel.org Subject: Re: revert yenta free_irq on suspend Message-ID: <20050730215403.J26592@flint.arm.linux.org.uk> Mail-Followup-To: Linus Torvalds , Hugh Dickins , Andrew Morton , Dominik Brodowski , Daniel Ritz , linux-kernel@vger.kernel.org References: <20050730210306.D26592@flint.arm.linux.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5.1i In-Reply-To: ; from torvalds@osdl.org on Sat, Jul 30, 2005 at 01:36:24PM -0700 Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org On Sat, Jul 30, 2005 at 01:36:24PM -0700, Linus Torvalds wrote: > On Sat, 30 Jul 2005, Russell King wrote: > > > > What this probably means is that we need some way to turn off interrupts > > from devices on suspend, and on resume, keep them off until drivers > > have had a chance to quiesce all devices, turn them back on, and then > > do full resume. > > No, we just need to suspend and resume the interrupt controller properly. > Which we had the technology for, and we actually used to do, but for some > (incorrect) reason ACPI people thought it should be up to individual > drivers. I don't think so - I believe one of the problem cases is where you have a screaming interrupt caused by an improperly setup device. Consider the case where you have a shared interrupt line and you're partially through resuming devices, when one unresumed device (setup by the BIOS) suddenly starts asserting its interrupt. The kernel then disables the source. Unfortunately, that was the IRQ for your USB host, which has your USB keyboard and mouse attached. -- Russell King Linux kernel 2.6 ARM Linux - http://www.arm.linux.org.uk/ maintainer of: 2.6 Serial core