All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
To: Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>
Cc: Andi Kleen <andi.kleen@intel.com>,
	Ashok Raj <ashok.raj@intel.com>, Borislav Petkov <bp@suse.de>,
	Tony Luck <tony.luck@intel.com>,
	"Ravi V. Shankar" <ravi.v.shankar@intel.com>,
	x86@kernel.org, sparclinux@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
	Ricardo Neri <ricardo.neri-calderon@linux.intel.com>,
	Jacob Pan <jacob.jun.pan@intel.com>,
	Clemens Ladisch <clemens@ladisch.de>,
	Arnd Bergmann <arnd@arndb.de>,
	Philippe Ombredanne <pombredanne@nexb.com>,
	Kate Stewart <kstewart@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael.j.wysocki@intel.com>,
	iommu@lists.linux-foundation.org
Subject: [RFC PATCH 09/23] x86/hpet: Reserve timer for the HPET hardlockup detector
Date: Tue, 12 Jun 2018 17:57:29 -0700	[thread overview]
Message-ID: <1528851463-21140-10-git-send-email-ricardo.neri-calderon@linux.intel.com> (raw)
In-Reply-To: <1528851463-21140-1-git-send-email-ricardo.neri-calderon@linux.intel.com>

HPET timer 2 will be used to drive the HPET-based hardlockup detector.
Reserve such timer to ensure it cannot be used by user space programs or
clock events.

When looking for MSI-capable timers for clock events, skip timer 2 if
the HPET hardlockup detector is selected.

Also, do not assign an IO APIC pin to timer 2 of the HPET. A subsequent
changeset will handle the interrupt setup of the timer used for the
hardlockup detector.

Cc: Ashok Raj <ashok.raj@intel.com>
Cc: Andi Kleen <andi.kleen@intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Borislav Petkov <bp@suse.de>
Cc: Jacob Pan <jacob.jun.pan@intel.com>
Cc: Clemens Ladisch <clemens@ladisch.de>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Philippe Ombredanne <pombredanne@nexb.com>
Cc: Kate Stewart <kstewart@linuxfoundation.org>
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
Cc: "Ravi V. Shankar" <ravi.v.shankar@intel.com>
Cc: x86@kernel.org
Cc: iommu@lists.linux-foundation.org
Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
---
 arch/x86/include/asm/hpet.h |  3 +++
 arch/x86/kernel/hpet.c      | 19 ++++++++++++++++---
 2 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/arch/x86/include/asm/hpet.h b/arch/x86/include/asm/hpet.h
index 9e0afde..3266796 100644
--- a/arch/x86/include/asm/hpet.h
+++ b/arch/x86/include/asm/hpet.h
@@ -61,6 +61,9 @@
  */
 #define HPET_MIN_PERIOD		100000UL
 
+/* Timer used for the hardlockup detector */
+#define HPET_WD_TIMER_NR 2
+
 /* hpet memory map physical address */
 extern unsigned long hpet_address;
 extern unsigned long force_hpet_address;
diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
index 3fa1d3f..b03faee 100644
--- a/arch/x86/kernel/hpet.c
+++ b/arch/x86/kernel/hpet.c
@@ -185,7 +185,8 @@ do {								\
 
 /*
  * When the hpet driver (/dev/hpet) is enabled, we need to reserve
- * timer 0 and timer 1 in case of RTC emulation.
+ * timer 0 and timer 1 in case of RTC emulation. Timer 2 is reserved in case
+ * the HPET-based hardlockup detector is used.
  */
 #ifdef CONFIG_HPET
 
@@ -195,7 +196,7 @@ static void hpet_reserve_platform_timers(unsigned int id)
 {
 	struct hpet __iomem *hpet = hpet_virt_address;
 	struct hpet_timer __iomem *timer = &hpet->hpet_timers[2];
-	unsigned int nrtimers, i;
+	unsigned int nrtimers, i, start_timer;
 	struct hpet_data hd;
 
 	nrtimers = ((id & HPET_ID_NUMBER) >> HPET_ID_NUMBER_SHIFT) + 1;
@@ -210,6 +211,13 @@ static void hpet_reserve_platform_timers(unsigned int id)
 	hpet_reserve_timer(&hd, 1);
 #endif
 
+	if (IS_ENABLED(CONFIG_HARDLOCKUP_DETECTOR_HPET)) {
+		hpet_reserve_timer(&hd, HPET_WD_TIMER_NR);
+		start_timer = HPET_WD_TIMER_NR + 1;
+	} else {
+		start_timer = HPET_WD_TIMER_NR;
+	}
+
 	/*
 	 * NOTE that hd_irq[] reflects IOAPIC input pins (LEGACY_8254
 	 * is wrong for i8259!) not the output IRQ.  Many BIOS writers
@@ -218,7 +226,7 @@ static void hpet_reserve_platform_timers(unsigned int id)
 	hd.hd_irq[0] = HPET_LEGACY_8254;
 	hd.hd_irq[1] = HPET_LEGACY_RTC;
 
-	for (i = 2; i < nrtimers; timer++, i++) {
+	for (i = start_timer; i < nrtimers; timer++, i++) {
 		hd.hd_irq[i] = (readl(&timer->hpet_config) &
 			Tn_INT_ROUTE_CNF_MASK) >> Tn_INT_ROUTE_CNF_SHIFT;
 	}
@@ -630,6 +638,11 @@ static void hpet_msi_capability_lookup(unsigned int start_timer)
 		struct hpet_dev *hdev = &hpet_devs[num_timers_used];
 		unsigned int cfg = hpet_readl(HPET_Tn_CFG(i));
 
+		/* Do not use timer reserved for the HPET watchdog. */
+		if (IS_ENABLED(CONFIG_HARDLOCKUP_DETECTOR_HPET) &&
+		    i == HPET_WD_TIMER_NR)
+			continue;
+
 		/* Only consider HPET timer with MSI support */
 		if (!(cfg & HPET_TN_FSB_CAP))
 			continue;
-- 
2.7.4


WARNING: multiple messages have this Message-ID (diff)
From: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
To: Thomas Gleixner <tglx@linutronix.de>,
	Ingo Molnar <mingo@kernel.org>, "H. Peter Anvin" <hpa@zytor.com>
Cc: Andi Kleen <andi.kleen@intel.com>,
	Ashok Raj <ashok.raj@intel.com>, Borislav Petkov <bp@suse.de>,
	Tony Luck <tony.luck@intel.com>,
	"Ravi V. Shankar" <ravi.v.shankar@intel.com>,
	x86@kernel.org, sparclinux@vger.kernel.org,
	linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org,
	Ricardo Neri <ricardo.neri-calderon@linux.intel.com>,
	Jacob Pan <jacob.jun.pan@intel.com>,
	Clemens Ladisch <clemens@ladisch.de>,
	Arnd Bergmann <arnd@arndb.de>,
	Philippe Ombredanne <pombredanne@nexb.com>,
	Kate Stewart <kstewart@linuxfoundation.org>,
	"Rafael J. Wysocki" <rafael.j.wysocki@intel.com>,
	iommu@lists.linux-foundation.org
Subject: [RFC PATCH 09/23] x86/hpet: Reserve timer for the HPET hardlockup detector
Date: Wed, 13 Jun 2018 00:57:29 +0000	[thread overview]
Message-ID: <1528851463-21140-10-git-send-email-ricardo.neri-calderon@linux.intel.com> (raw)
In-Reply-To: <1528851463-21140-1-git-send-email-ricardo.neri-calderon@linux.intel.com>

HPET timer 2 will be used to drive the HPET-based hardlockup detector.
Reserve such timer to ensure it cannot be used by user space programs or
clock events.

When looking for MSI-capable timers for clock events, skip timer 2 if
the HPET hardlockup detector is selected.

Also, do not assign an IO APIC pin to timer 2 of the HPET. A subsequent
changeset will handle the interrupt setup of the timer used for the
hardlockup detector.

Cc: Ashok Raj <ashok.raj@intel.com>
Cc: Andi Kleen <andi.kleen@intel.com>
Cc: Tony Luck <tony.luck@intel.com>
Cc: Borislav Petkov <bp@suse.de>
Cc: Jacob Pan <jacob.jun.pan@intel.com>
Cc: Clemens Ladisch <clemens@ladisch.de>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Philippe Ombredanne <pombredanne@nexb.com>
Cc: Kate Stewart <kstewart@linuxfoundation.org>
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
Cc: "Ravi V. Shankar" <ravi.v.shankar@intel.com>
Cc: x86@kernel.org
Cc: iommu@lists.linux-foundation.org
Signed-off-by: Ricardo Neri <ricardo.neri-calderon@linux.intel.com>
---
 arch/x86/include/asm/hpet.h |  3 +++
 arch/x86/kernel/hpet.c      | 19 ++++++++++++++++---
 2 files changed, 19 insertions(+), 3 deletions(-)

diff --git a/arch/x86/include/asm/hpet.h b/arch/x86/include/asm/hpet.h
index 9e0afde..3266796 100644
--- a/arch/x86/include/asm/hpet.h
+++ b/arch/x86/include/asm/hpet.h
@@ -61,6 +61,9 @@
  */
 #define HPET_MIN_PERIOD		100000UL
 
+/* Timer used for the hardlockup detector */
+#define HPET_WD_TIMER_NR 2
+
 /* hpet memory map physical address */
 extern unsigned long hpet_address;
 extern unsigned long force_hpet_address;
diff --git a/arch/x86/kernel/hpet.c b/arch/x86/kernel/hpet.c
index 3fa1d3f..b03faee 100644
--- a/arch/x86/kernel/hpet.c
+++ b/arch/x86/kernel/hpet.c
@@ -185,7 +185,8 @@ do {								\
 
 /*
  * When the hpet driver (/dev/hpet) is enabled, we need to reserve
- * timer 0 and timer 1 in case of RTC emulation.
+ * timer 0 and timer 1 in case of RTC emulation. Timer 2 is reserved in case
+ * the HPET-based hardlockup detector is used.
  */
 #ifdef CONFIG_HPET
 
@@ -195,7 +196,7 @@ static void hpet_reserve_platform_timers(unsigned int id)
 {
 	struct hpet __iomem *hpet = hpet_virt_address;
 	struct hpet_timer __iomem *timer = &hpet->hpet_timers[2];
-	unsigned int nrtimers, i;
+	unsigned int nrtimers, i, start_timer;
 	struct hpet_data hd;
 
 	nrtimers = ((id & HPET_ID_NUMBER) >> HPET_ID_NUMBER_SHIFT) + 1;
@@ -210,6 +211,13 @@ static void hpet_reserve_platform_timers(unsigned int id)
 	hpet_reserve_timer(&hd, 1);
 #endif
 
+	if (IS_ENABLED(CONFIG_HARDLOCKUP_DETECTOR_HPET)) {
+		hpet_reserve_timer(&hd, HPET_WD_TIMER_NR);
+		start_timer = HPET_WD_TIMER_NR + 1;
+	} else {
+		start_timer = HPET_WD_TIMER_NR;
+	}
+
 	/*
 	 * NOTE that hd_irq[] reflects IOAPIC input pins (LEGACY_8254
 	 * is wrong for i8259!) not the output IRQ.  Many BIOS writers
@@ -218,7 +226,7 @@ static void hpet_reserve_platform_timers(unsigned int id)
 	hd.hd_irq[0] = HPET_LEGACY_8254;
 	hd.hd_irq[1] = HPET_LEGACY_RTC;
 
-	for (i = 2; i < nrtimers; timer++, i++) {
+	for (i = start_timer; i < nrtimers; timer++, i++) {
 		hd.hd_irq[i] = (readl(&timer->hpet_config) &
 			Tn_INT_ROUTE_CNF_MASK) >> Tn_INT_ROUTE_CNF_SHIFT;
 	}
@@ -630,6 +638,11 @@ static void hpet_msi_capability_lookup(unsigned int start_timer)
 		struct hpet_dev *hdev = &hpet_devs[num_timers_used];
 		unsigned int cfg = hpet_readl(HPET_Tn_CFG(i));
 
+		/* Do not use timer reserved for the HPET watchdog. */
+		if (IS_ENABLED(CONFIG_HARDLOCKUP_DETECTOR_HPET) &&
+		    i = HPET_WD_TIMER_NR)
+			continue;
+
 		/* Only consider HPET timer with MSI support */
 		if (!(cfg & HPET_TN_FSB_CAP))
 			continue;
-- 
2.7.4


  parent reply	other threads:[~2018-06-13  1:05 UTC|newest]

Thread overview: 200+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-13  0:57 [RFC PATCH 00/23] Implement an HPET-based hardlockup detector Ricardo Neri
2018-06-13  0:57 ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 01/23] x86/apic: Add a parameter for the APIC delivery mode Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 02/23] genirq: Introduce IRQD_DELIVER_AS_NMI Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 03/23] genirq: Introduce IRQF_DELIVER_AS_NMI Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  8:34   ` Peter Zijlstra
2018-06-13  8:34     ` Peter Zijlstra
2018-06-13  8:34     ` Peter Zijlstra
2018-06-13  8:59     ` Julien Thierry
2018-06-13  8:59       ` Julien Thierry
2018-06-13  8:59       ` Julien Thierry
2018-06-13  9:20       ` Thomas Gleixner
2018-06-13  9:20         ` Thomas Gleixner
2018-06-13  9:20         ` Thomas Gleixner
2018-06-13  9:36         ` Julien Thierry
2018-06-13  9:36           ` Julien Thierry
2018-06-13  9:36           ` Julien Thierry
2018-06-13  9:49           ` Julien Thierry
2018-06-13  9:49             ` Julien Thierry
2018-06-13  9:49             ` Julien Thierry
2018-06-13  9:57           ` Thomas Gleixner
2018-06-13  9:57             ` Thomas Gleixner
2018-06-13  9:57             ` Thomas Gleixner
2018-06-13 10:25             ` Julien Thierry
2018-06-13 10:25               ` Julien Thierry
2018-06-13 10:25               ` Julien Thierry
2018-06-13 10:06         ` Marc Zyngier
2018-06-13 10:06           ` Marc Zyngier
2018-06-13 10:06           ` Marc Zyngier
2018-06-15  2:12           ` Ricardo Neri
2018-06-15  2:12             ` Ricardo Neri
2018-06-15  2:12             ` Ricardo Neri
2018-06-15  8:01             ` Julien Thierry
2018-06-15  8:01               ` Julien Thierry
2018-06-15  8:01               ` Julien Thierry
2018-06-16  0:39               ` Ricardo Neri
2018-06-16  0:39                 ` Ricardo Neri
2018-06-16  0:39                 ` Ricardo Neri
2018-06-16 13:36                 ` Thomas Gleixner
2018-06-16 13:36                   ` Thomas Gleixner
2018-06-16 13:36                   ` Thomas Gleixner
2018-06-13  0:57 ` [RFC PATCH 04/23] iommu/vt-d/irq_remapping: Add support for IRQCHIP_CAN_DELIVER_AS_NMI Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 05/23] x86/msi: " Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 06/23] x86/ioapic: Add support for IRQCHIP_CAN_DELIVER_AS_NMI with interrupt remapping Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 07/23] x86/hpet: Expose more functions to read and write registers Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 08/23] x86/hpet: Calculate ticks-per-second in a separate function Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` Ricardo Neri [this message]
2018-06-13  0:57   ` [RFC PATCH 09/23] x86/hpet: Reserve timer for the HPET hardlockup detector Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 10/23] x86/hpet: Relocate flag definitions to a header file Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 11/23] x86/hpet: Configure the timer used by the hardlockup detector Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 12/23] kernel/watchdog: Introduce a struct for NMI watchdog operations Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  7:41   ` Nicholas Piggin
2018-06-13  7:41     ` Nicholas Piggin
2018-06-13  7:41     ` Nicholas Piggin
2018-06-13  8:42     ` Peter Zijlstra
2018-06-13  8:42       ` Peter Zijlstra
2018-06-13  8:42       ` Peter Zijlstra
2018-06-13  9:26       ` Thomas Gleixner
2018-06-13  9:26         ` Thomas Gleixner
2018-06-13  9:26         ` Thomas Gleixner
2018-06-13 11:52         ` Nicholas Piggin
2018-06-13 11:52           ` Nicholas Piggin
2018-06-13 11:52           ` Nicholas Piggin
2018-06-14  1:31           ` Ricardo Neri
2018-06-14  1:31             ` Ricardo Neri
2018-06-14  1:31             ` Ricardo Neri
2018-06-14  2:32             ` Nicholas Piggin
2018-06-14  2:32               ` Nicholas Piggin
2018-06-14  2:32               ` Nicholas Piggin
2018-06-14  8:32               ` Thomas Gleixner
2018-06-14  8:32                 ` Thomas Gleixner
2018-06-14  8:32                 ` Thomas Gleixner
2018-06-15  2:21               ` Ricardo Neri
2018-06-15  2:21                 ` Ricardo Neri
2018-06-15  2:21                 ` Ricardo Neri
2018-06-14  1:26       ` Ricardo Neri
2018-06-14  1:26         ` Ricardo Neri
2018-06-14  1:26         ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 13/23] watchdog/hardlockup: Define a generic function to detect hardlockups Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 14/23] watchdog/hardlockup: Decouple the hardlockup detector from perf Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  8:43   ` Peter Zijlstra
2018-06-13  8:43     ` Peter Zijlstra
2018-06-13  8:43     ` Peter Zijlstra
2018-06-14  1:19     ` Ricardo Neri
2018-06-14  1:19       ` Ricardo Neri
2018-06-14  1:19       ` Ricardo Neri
2018-06-14  1:41       ` Nicholas Piggin
2018-06-14  1:41         ` Nicholas Piggin
2018-06-14  1:41         ` Nicholas Piggin
2018-06-15  2:23         ` Ricardo Neri
2018-06-15  2:23           ` Ricardo Neri
2018-06-15  2:23           ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 15/23] kernel/watchdog: Add a function to obtain the watchdog_allowed_mask Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 16/23] watchdog/hardlockup: Add an HPET-based hardlockup detector Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  5:23   ` Randy Dunlap
2018-06-13  5:23     ` Randy Dunlap
2018-06-13  5:23     ` Randy Dunlap
2018-06-14  1:00     ` Ricardo Neri
2018-06-14  1:00       ` Ricardo Neri
2018-06-14  1:00       ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 17/23] watchdog/hardlockup/hpet: Convert the timer's interrupt to NMI Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  9:07   ` Peter Zijlstra
2018-06-13  9:07     ` Peter Zijlstra
2018-06-13  9:07     ` Peter Zijlstra
2018-06-15  2:07     ` Ricardo Neri
2018-06-15  2:07       ` Ricardo Neri
2018-06-15  2:07       ` Ricardo Neri
2018-06-13  9:40   ` Thomas Gleixner
2018-06-13  9:40     ` Thomas Gleixner
2018-06-13  9:40     ` Thomas Gleixner
2018-06-15  2:03     ` Ricardo Neri
2018-06-15  2:03       ` Ricardo Neri
2018-06-15  2:03       ` Ricardo Neri
2018-06-15  9:19       ` Thomas Gleixner
2018-06-15  9:19         ` Thomas Gleixner
2018-06-15  9:19         ` Thomas Gleixner
2018-06-16  0:51         ` Ricardo Neri
2018-06-16  0:51           ` Ricardo Neri
2018-06-16  0:51           ` Ricardo Neri
2018-06-16 13:24           ` Thomas Gleixner
2018-06-16 13:24             ` Thomas Gleixner
2018-06-16 13:24             ` Thomas Gleixner
2018-06-20  0:15             ` Ricardo Neri
2018-06-20  0:15               ` Ricardo Neri
2018-06-20  0:15               ` Ricardo Neri
2018-06-20  0:25               ` Randy Dunlap
2018-06-20  0:25                 ` Randy Dunlap
2018-06-20  0:25                 ` Randy Dunlap
2018-06-21  0:25                 ` Ricardo Neri
2018-06-21  0:25                   ` Ricardo Neri
2018-06-21  0:25                   ` Ricardo Neri
2018-06-20  7:47               ` Thomas Gleixner
2018-06-20  7:47                 ` Thomas Gleixner
2018-06-20  7:47                 ` Thomas Gleixner
2018-06-13  0:57 ` [RFC PATCH 18/23] watchdog/hardlockup/hpet: Add the NMI watchdog operations Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 19/23] watchdog/hardlockup: Make arch_touch_nmi_watchdog() to hpet-based implementation Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 20/23] watchdog/hardlockup/hpet: Rotate interrupt among all monitored CPUs Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  9:48   ` Thomas Gleixner
2018-06-13  9:48     ` Thomas Gleixner
2018-06-13  9:48     ` Thomas Gleixner
2018-06-15  2:16     ` Ricardo Neri
2018-06-15  2:16       ` Ricardo Neri
2018-06-15  2:16       ` Ricardo Neri
2018-06-15 10:29       ` Thomas Gleixner
2018-06-15 10:29         ` Thomas Gleixner
2018-06-15 10:29         ` Thomas Gleixner
2018-06-16  0:46         ` Ricardo Neri
2018-06-16  0:46           ` Ricardo Neri
2018-06-16  0:46           ` Ricardo Neri
2018-06-16 13:27           ` Thomas Gleixner
2018-06-16 13:27             ` Thomas Gleixner
2018-06-16 13:27             ` Thomas Gleixner
2018-06-13  0:57 ` [RFC PATCH 21/23] watchdog/hardlockup/hpet: Adjust timer expiration on the number of " Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57 ` [RFC PATCH 22/23] watchdog/hardlockup/hpet: Only enable the HPET watchdog via a boot parameter Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  5:26   ` Randy Dunlap
2018-06-13  5:26     ` Randy Dunlap
2018-06-13  5:26     ` Randy Dunlap
2018-06-14  0:58     ` Ricardo Neri
2018-06-14  0:58       ` Ricardo Neri
2018-06-14  0:58       ` Ricardo Neri
2018-06-14  3:30       ` Randy Dunlap
2018-06-14  3:30         ` Randy Dunlap
2018-06-14  3:30         ` Randy Dunlap
2018-06-13  0:57 ` [RFC PATCH 23/23] watchdog/hardlockup: Activate the HPET-based lockup detector Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri
2018-06-13  0:57   ` Ricardo Neri

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1528851463-21140-10-git-send-email-ricardo.neri-calderon@linux.intel.com \
    --to=ricardo.neri-calderon@linux.intel.com \
    --cc=andi.kleen@intel.com \
    --cc=arnd@arndb.de \
    --cc=ashok.raj@intel.com \
    --cc=bp@suse.de \
    --cc=clemens@ladisch.de \
    --cc=hpa@zytor.com \
    --cc=iommu@lists.linux-foundation.org \
    --cc=jacob.jun.pan@intel.com \
    --cc=kstewart@linuxfoundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=mingo@kernel.org \
    --cc=pombredanne@nexb.com \
    --cc=rafael.j.wysocki@intel.com \
    --cc=ravi.v.shankar@intel.com \
    --cc=sparclinux@vger.kernel.org \
    --cc=tglx@linutronix.de \
    --cc=tony.luck@intel.com \
    --cc=x86@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.