Messages in this thread | | | Date | Mon, 1 Feb 2016 15:06:21 +0100 | From | Heiko Carstens <> | Subject | Re: [PATCH] lib/bug: make panic_on_warn available for all architectures |
| |
On Tue, Jan 26, 2016 at 03:14:08PM -0800, Andrew Morton wrote: > On Fri, 22 Jan 2016 14:12:16 +0100 Heiko Carstens <heiko.carstens@de.ibm.com> wrote: > > > Christian Borntraeger reported that panic_on_warn doesn't have any > > effect on s390. > > > > The panic_on_warn feature was introduced with 9e3961a09798 ("kernel: > > add panic_on_warn"). However it did care only for the case when > > WANT_WARN_ON_SLOWPATH is defined. This is turn is only the case for > > architectures which do not have an own __WARN_TAINT defined. > > > > Other architectures which do have __WARN_TAINT defined call > > report_bug() for warnings within lib/bug.c which does not call panic() > > in case panic_on_warn is set. > > > > Let's simply enable the panic_on_warn feature by adding the same code > > like it was added to warn_slowpath_common() in panic.c. > > > > This enables panic_on_warn also for arm64, parisc, powerpc, s390 and > > sh. > > > > It's a bit sad to do this in two places. You couldn't find a suitable > place which is effective for all architectures?
Yes, I know, it's lame. But looking at lib/bug.c:report_bug() and kernel/panic.c:warn_slowpath_common() it looks like these functions have a lot in common but differ in detail. It seems hard to combine them without introducing an ifdef hell.
| |