From mboxrd@z Thu Jan 1 00:00:00 1970 From: Sergey Senozhatsky Subject: Re: [PATCH 2/2] RFC: soft/hardlookup: taint kernel Date: Thu, 9 May 2019 18:24:49 +0900 Message-ID: <20190509092449.GA10828@jagdpanzerIV> References: <20190502194208.3535-1-daniel.vetter@ffwll.ch> <20190502194208.3535-2-daniel.vetter@ffwll.ch> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <20190502194208.3535-2-daniel.vetter@ffwll.ch> Sender: linux-kernel-owner@vger.kernel.org To: Daniel Vetter Cc: Intel Graphics Development , LKML , Daniel Vetter , Thomas Gleixner , Ingo Molnar , Peter Zijlstra , Valdis Kletnieks , Laurence Oberman , Vincent Whitchurch , Don Zickus , Andrew Morton , Sergey Senozhatsky , Sinan Kaya List-Id: intel-gfx@lists.freedesktop.org On (05/02/19 21:42), Daniel Vetter wrote: [..] > @@ -469,6 +469,8 @@ static enum hrtimer_restart watchdog_timer_fn(struct hrtimer *hrtimer) > add_taint(TAINT_SOFTLOCKUP, LOCKDEP_STILL_OK); > if (softlockup_panic) > panic("softlockup: hung tasks"); > + else > + add_taint(TAINT_WARN, LOCKDEP_STILL_OK); > __this_cpu_write(soft_watchdog_warn, true); Soft lockup sets TAINT_SOFTLOCKUP bit. Would it be enough for your CI? [..] > @@ -154,6 +154,8 @@ static void watchdog_overflow_callback(struct perf_event *event, > > if (hardlockup_panic) > nmi_panic(regs, "Hard LOCKUP"); > + else > + add_taint(TAINT_WARN, LOCKDEP_STILL_OK); Maybe you can mirror what soft lockup does. Add a HARDLOCKUP taint bit +++ b/include/linux/kernel.h @@ -571,7 +571,8 @@ extern enum system_states { #define TAINT_LIVEPATCH 15 #define TAINT_AUX 16 #define TAINT_RANDSTRUCT 17 -#define TAINT_FLAGS_COUNT 18 +#define TAINT_HARDLOCKUP 18 +#define TAINT_FLAGS_COUNT 19 and then set TAINT_HARDLOCKUP in watchdog_overflow_callback(). Just a small idea, I'll leave this to more experienced people. -ss