From mboxrd@z Thu Jan 1 00:00:00 1970 From: "H. Peter Anvin" Subject: Re: [PATCH] kernel, add panic_on_warn Date: Thu, 30 Oct 2014 10:24:19 -0700 Message-ID: <54527443.6030007@zytor.com> References: <1414688627-5298-1-git-send-email-prarit@redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1414688627-5298-1-git-send-email-prarit-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "kexec" Errors-To: kexec-bounces+glkk-kexec=m.gmane.org-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org To: Prarit Bhargava , linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org Cc: Andi Kleen , Jonathan Corbet , kexec-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org, Rusty Russell , linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, jbaron-JqFfY2XvxFXQT0dZR+AlfA@public.gmane.org, Fabian Frederick , isimatu.yasuaki-+CUm20s59erQFUHtdCDX3A@public.gmane.org, linux-api-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Masami Hiramatsu , Andrew Morton , vgoyal-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org List-Id: linux-api@vger.kernel.org On 10/30/2014 10:03 AM, Prarit Bhargava wrote: > There have been several times where I have had to rebuild a kernel to > cause a panic when hitting a WARN() in the code in order to get a crash > dump from a system. Sometimes this is easy to do, other times (such as > in the case of a remote admin) it is not trivial to send new images to the > user. > > A much easier method would be a switch to change the WARN() over to a > panic. This makes debugging easier in that I can now test the actual > image the WARN() was seen on and I do not have to engage in remote > debugging. > > This patch adds a panic_on_warn kernel parameter and > /proc/sys/kernel/panic_on_warn calls panic() in the warn_slowpath_common() > path. The function will still print out the location of the warning. > > An example of the panic_on_warn output: > > The first line below is from the WARN_ON() to output the WARN_ON()'s location. > After that the panic() output is displayed. > There is another very valid use for this: many operators would rather a machine shuts down than being potentially compromised either functionally or security-wise. -hpa