From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1758655AbbFCT3c (ORCPT ); Wed, 3 Jun 2015 15:29:32 -0400 Received: from mout.kundenserver.de ([212.227.17.10]:53416 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751753AbbFCT30 (ORCPT ); Wed, 3 Jun 2015 15:29:26 -0400 From: Arnd Bergmann To: Timur Tabi Cc: Guenter Roeck , fu.wei@linaro.org, Suravee.Suthikulpanit@amd.com, linaro-acpi@lists.linaro.org, linux-watchdog@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, tekkamanninja@gmail.com, graeme.gregory@linaro.org, al.stone@linaro.org, hanjun.guo@linaro.org, ashwin.chaugule@linaro.org, vgandhi@codeaurora.org, wim@iguana.be, jcm@redhat.com, leo.duran@amd.com, corbet@lwn.net, mark.rutland@arm.com, catalin.marinas@arm.com, will.deacon@arm.com, rjw@rjwysocki.net Subject: Re: [PATCH v4 5/7] Watchdog: introduce ARM SBSA watchdog driver Date: Wed, 03 Jun 2015 21:29:12 +0200 Message-ID: <7870088.TdP6RHCoCB@wuerfel> User-Agent: KMail/4.11.5 (Linux/3.16.0-10-generic; KDE/4.11.5; x86_64; ; ) In-Reply-To: <556F4D29.1080001@codeaurora.org> References: <=fu.wei@linaro.org> <20150603182503.GD6460@roeck-us.net> <556F4D29.1080001@codeaurora.org> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" X-Provags-ID: V03:K0:YGBUFyp/yPj2TDXRpO6NM85C7zFn3/J67MZCwT5RYU8zT3zlODU jIitcgSc73TQinX8lovwWmHZuXH6d+LLsjk7MZ1wcoJYcV3ayN5uNDS8MCZ9E4ZaIWJ7BWj 9By8GzwN3e+bqIG0opcck8AxpKGwFz5E1GQDFtmW6cF6siBnuZ/ohpP1CEXhRCKI5Pvs211 U87jvM1VVL5gEwWeCkMBQ== X-UI-Out-Filterresults: notjunk:1;V01:K0:8Cl+U76dqSI=:BzqYZW3o+9BgYWYZsXOyRP 8gsNjz0F9UWoLoSL2mkhdjYDLTqTH/LwxN3KPpqDUea+zN+74rDOSIl5I3zquaVn5L8XHHK+q /SmU7KFH4e6AMqB0gsrJiD+MudUDkYDSdsPekqdlDDKzdziAiiRejyPmMZNlKPTL3vfZkuWGT oxAXfQRxn95ALmvKfGnk5p5RXwfrba8O9IMc9ixv+zHM9DFfqcWIJefXig4PrksT9nX8lOmC2 xWygtkSYv4GnfPYrELtQaiJTdFaSB6kJGK82uV+mUu0LWf5WaUCl8Ab1zvZ+xCx7wXgEdo6SR 39ITdV5oiigTLytpCN2BT1fkp2NNX0m+j0QNEAuH/KQA7Ef6KMA659SOch6eTLIa4gDkAo8Fu Lb3X5kuvbrFFFrhlUK3flKI2H3to3r2DpvSzZD0MDSqoNiKqzZdppIlFK+8toSwOIuZomQstA RaZrtsa1cXULiBi7Lv9NiD1+SzePed+F2dQ049tuUiHdvGeDrCs3JpKn/fH3xUQhXUx3LhnZe uCFWsJNoEtDwHi2VKVafX9eVYUEjxy0grGcEIVzUm5qdiWYX3fZUZIq49Bq0u+r4J49lQd7Aj QWkbET/Ut7nAa5zwxz+bM47O5lcbJycNw2hEKnJljBtKd/YMm+yXCJ9QW2XHX/welLaHYfQmK ENARI8HRnLX25DzTrH//Y/XAYV8vRLvy3l0sgrraTFtr/xA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wednesday 03 June 2015 13:53:29 Timur Tabi wrote: > On 06/03/2015 01:25 PM, Guenter Roeck wrote: > > In general the idea here would be to use a crashdump kernel, which, > > when loaded, would reset the watchdog before it fires. This kernel > > would then write a core dump to a specified location. > > What is the mechanism for resetting the watchdog? The only code that > knows about the hardware registers is this driver. Does the crashdump > kernel call the watchdog stop function? It might or might not, depending on what you want to achieve. In most cases, I'd expect the crashdump kernel to have it enabled if we want to let the user set a pretimeout, but that is a policy question that is not for the kernel to decide. > > If arm64 doesn't support a crashdump kernel, it might still be possible > > to log the backtrace somewhere (eg in nvram using pstore if that is > > supported via acpi or efi). > > I think it's expected that the firmware support a crash dump mechanism > of some kind. But if we're talking about firmware support, then why > bother with the panic() in the first place? panic() is what triggers all the crash dump or pstore mechanisms, it has to do that anyway. > > Is there reason to believe that this all won't work on arm64 ? > > No, but I'm still trying to figure out why pre-timeout is valuable. If > we don't disable WS1, then we risk having the hardware reset before we > can take advantage of what the panic() offers. In which case, what's > the point of pre-timeout? The timeouts are both configurable, so the sysadmin has to make sure that the time between them is long enough to do whatever is necessary. Arnd