Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S261416AbUFCHFr (ORCPT ); Thu, 3 Jun 2004 03:05:47 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S261396AbUFCHFr (ORCPT ); Thu, 3 Jun 2004 03:05:47 -0400 Received: from smtp-roam.Stanford.EDU ([171.64.10.152]:61892 "EHLO smtp-roam.Stanford.EDU") by vger.kernel.org with ESMTP id S261443AbUFCHD0 (ORCPT ); Thu, 3 Jun 2004 03:03:26 -0400 Message-ID: <40BECD28.70806@myrealbox.com> Date: Thu, 03 Jun 2004 00:03:04 -0700 From: Andy Lutomirski User-Agent: Mozilla Thunderbird 0.6 (Windows/20040502) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Dmitry Torokhov CC: linux-kernel@vger.kernel.org, Andrew Morton , Greg KH , Vojtech Pavlik Subject: Re: [RFC] Changing SysRq - show registers handling References: In-Reply-To: Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1683 Lines: 41 Dmitry Torokhov wrote: > Hi, > > Currently SysRq "show registers" command dumps registers and the call > trace from keyboard interrupt context when SysRq-P. For that struct pt_regs * > has to be dragged throughout entire input and USB systems. Other than passing > this pointer to SysRq handler these systems has no interest in it, it is > completely foreign piece of data for them and I would like to get rid of it. > > I am suggesting slightly changing semantics of SysRq-P handling - instread > of dumping registers and call trace immediately it will simply post a request > for this information to be dumped. When next HW interrupt arrives and is > handled, before running softirqs then current stack trace will be printed. > This approach adds small overhead to the HW interrupt handling routine as the > condition has to be checked with every interrupt but I expect it to be > negligible as it is only check and conditional jump that is almost never > taken. The code should be hot in cache so branch prediction should work just > fine. What about checking the flag on return from the input interrupts? That way the overhead would be confined to code paths take the hit from passing an extra parameter. > > The patch below implements proposed changes in SysRq handler and adds > necessary changes to do_IRQ() on i386. If it is agreed upon I will adjust > other arches. > > Please let me know what you think. > --Andy - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/