linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [GIT pull] core udpate for 5.1
@ 2019-03-10 11:33 Thomas Gleixner
  2019-03-10 11:33 ` [GIT pull] locking fixes " Thomas Gleixner
                   ` (7 more replies)
  0 siblings, 8 replies; 29+ messages in thread
From: Thomas Gleixner @ 2019-03-10 11:33 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel, x86

Linus,

please pull the latest core-core-for-linus git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core-core-for-linus

A single commit adding a command line parameter which allows to set the
watchdog threshold on the kernel command-line, so kernels with massive
debug facilities enabled won't trigger the watchdog during early boot and
before the threshold can be changed via sysctl.


Thanks,

	tglx

------------------>
Laurence Oberman (1):
      watchdog/core: Add watchdog_thresh command line parameter


 Documentation/admin-guide/kernel-parameters.txt | 8 ++++++++
 kernel/watchdog.c                               | 7 +++++++
 2 files changed, 15 insertions(+)

diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index b90fe3b6bc6c..79b5b473001b 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -4957,6 +4957,14 @@
 			or other driver-specific files in the
 			Documentation/watchdog/ directory.
 
+	watchdog_thresh=
+			[KNL]
+			Set the hard lockup detector stall duration
+			threshold in seconds. The soft lockup detector
+			threshold is set to twice the value. A value of 0
+			disables both lockup detectors. Default is 10
+			seconds.
+
 	workqueue.watchdog_thresh=
 			If CONFIG_WQ_WATCHDOG is configured, workqueue can
 			warn stall conditions and dump internal state to
diff --git a/kernel/watchdog.c b/kernel/watchdog.c
index 977918d5d350..8fbfda94a67b 100644
--- a/kernel/watchdog.c
+++ b/kernel/watchdog.c
@@ -199,6 +199,13 @@ static int __init nosoftlockup_setup(char *str)
 }
 __setup("nosoftlockup", nosoftlockup_setup);
 
+static int __init watchdog_thresh_setup(char *str)
+{
+	get_option(&str, &watchdog_thresh);
+	return 1;
+}
+__setup("watchdog_thresh=", watchdog_thresh_setup);
+
 #ifdef CONFIG_SMP
 int __read_mostly sysctl_softlockup_all_cpu_backtrace;
 


^ permalink raw reply related	[flat|nested] 29+ messages in thread
* [GIT pull] core updates for 5.1
@ 2019-03-24 14:12 Thomas Gleixner
  2019-03-24 14:12 ` [GIT pull] perf " Thomas Gleixner
  0 siblings, 1 reply; 29+ messages in thread
From: Thomas Gleixner @ 2019-03-24 14:12 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel, x86

Linus,

please pull the latest core-urgent-for-linus git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core-urgent-for-linus

Two small fixes:

 - Move the large objtool_file struct off the stack so objtool works in
   setups with a tight stack limit.

 - Make a few variables static in the watchdog core code.

Thanks,

	tglx

------------------>
Josh Poimboeuf (1):
      objtool: Move objtool_file struct off the stack

Valdis Kletnieks (1):
      watchdog/core: Make variables static


 kernel/watchdog.c     | 4 ++--
 tools/objtool/check.c | 3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/kernel/watchdog.c b/kernel/watchdog.c
index 8fbfda94a67b..403c9bd90413 100644
--- a/kernel/watchdog.c
+++ b/kernel/watchdog.c
@@ -42,9 +42,9 @@ int __read_mostly watchdog_user_enabled = 1;
 int __read_mostly nmi_watchdog_user_enabled = NMI_WATCHDOG_DEFAULT;
 int __read_mostly soft_watchdog_user_enabled = 1;
 int __read_mostly watchdog_thresh = 10;
-int __read_mostly nmi_watchdog_available;
+static int __read_mostly nmi_watchdog_available;
 
-struct cpumask watchdog_allowed_mask __read_mostly;
+static struct cpumask watchdog_allowed_mask __read_mostly;
 
 struct cpumask watchdog_cpumask __read_mostly;
 unsigned long *watchdog_cpumask_bits = cpumask_bits(&watchdog_cpumask);
diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index 0414a0d52262..5dde107083c6 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -2184,9 +2184,10 @@ static void cleanup(struct objtool_file *file)
 	elf_close(file->elf);
 }
 
+static struct objtool_file file;
+
 int check(const char *_objname, bool orc)
 {
-	struct objtool_file file;
 	int ret, warnings = 0;
 
 	objname = _objname;


^ permalink raw reply related	[flat|nested] 29+ messages in thread
* [GIT pull] core updates for 5.1
@ 2019-03-31 10:39 Thomas Gleixner
  2019-03-31 10:39 ` [GIT pull] perf " Thomas Gleixner
  0 siblings, 1 reply; 29+ messages in thread
From: Thomas Gleixner @ 2019-03-31 10:39 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: linux-kernel, x86

Linus,

please pull the latest core-urgent-for-linus git tree from:

   git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git core-urgent-for-linus

up to:  7dd476171149 ("watchdog: Respect watchdog cpumask on CPU hotplug")

A small set of core updates:

 - Make the watchdog respect the selected CPU mask again. That was broken
   by the rework of the watchdog thread management and caused inconsistent
   state and NMI watchdog being unstoppable.

 - Ensure that the objtool build can find the libelf location.

 - Remove dead kcore stub code

Thanks,

	tglx

------------------>
Bhupesh Sharma (1):
      proc/kcore: Remove unused kclist_add_remap()

Rolf Eike Beer (1):
      objtool: Query pkg-config for libelf location

Thomas Gleixner (1):
      watchdog: Respect watchdog cpumask on CPU hotplug


 Makefile               |  4 +++-
 include/linux/kcore.h  | 11 -----------
 kernel/watchdog.c      |  6 ++++--
 tools/objtool/Makefile |  7 +++++--
 4 files changed, 12 insertions(+), 16 deletions(-)

diff --git a/Makefile b/Makefile
index c0a34064c574..eef3d3f87c3b 100644
--- a/Makefile
+++ b/Makefile
@@ -950,9 +950,11 @@ mod_sign_cmd = true
 endif
 export mod_sign_cmd
 
+HOST_LIBELF_LIBS = $(shell pkg-config libelf --libs 2>/dev/null || echo -lelf)
+
 ifdef CONFIG_STACK_VALIDATION
   has_libelf := $(call try-run,\
-		echo "int main() {}" | $(HOSTCC) -xc -o /dev/null -lelf -,1,0)
+		echo "int main() {}" | $(HOSTCC) -xc -o /dev/null $(HOST_LIBELF_LIBS) -,1,0)
   ifeq ($(has_libelf),1)
     objtool_target := tools/objtool FORCE
   else
diff --git a/include/linux/kcore.h b/include/linux/kcore.h
index c843f4a9c512..da676cdbd727 100644
--- a/include/linux/kcore.h
+++ b/include/linux/kcore.h
@@ -38,12 +38,6 @@ struct vmcoredd_node {
 
 #ifdef CONFIG_PROC_KCORE
 void __init kclist_add(struct kcore_list *, void *, size_t, int type);
-static inline
-void kclist_add_remap(struct kcore_list *m, void *addr, void *vaddr, size_t sz)
-{
-	m->vaddr = (unsigned long)vaddr;
-	kclist_add(m, addr, sz, KCORE_REMAP);
-}
 
 extern int __init register_mem_pfn_is_ram(int (*fn)(unsigned long pfn));
 #else
@@ -51,11 +45,6 @@ static inline
 void kclist_add(struct kcore_list *new, void *addr, size_t size, int type)
 {
 }
-
-static inline
-void kclist_add_remap(struct kcore_list *m, void *addr, void *vaddr, size_t sz)
-{
-}
 #endif
 
 #endif /* _LINUX_KCORE_H */
diff --git a/kernel/watchdog.c b/kernel/watchdog.c
index 403c9bd90413..6a5787233113 100644
--- a/kernel/watchdog.c
+++ b/kernel/watchdog.c
@@ -554,13 +554,15 @@ static void softlockup_start_all(void)
 
 int lockup_detector_online_cpu(unsigned int cpu)
 {
-	watchdog_enable(cpu);
+	if (cpumask_test_cpu(cpu, &watchdog_allowed_mask))
+		watchdog_enable(cpu);
 	return 0;
 }
 
 int lockup_detector_offline_cpu(unsigned int cpu)
 {
-	watchdog_disable(cpu);
+	if (cpumask_test_cpu(cpu, &watchdog_allowed_mask))
+		watchdog_disable(cpu);
 	return 0;
 }
 
diff --git a/tools/objtool/Makefile b/tools/objtool/Makefile
index c9d038f91af6..53f8be0f4a1f 100644
--- a/tools/objtool/Makefile
+++ b/tools/objtool/Makefile
@@ -25,14 +25,17 @@ LIBSUBCMD		= $(LIBSUBCMD_OUTPUT)libsubcmd.a
 OBJTOOL    := $(OUTPUT)objtool
 OBJTOOL_IN := $(OBJTOOL)-in.o
 
+LIBELF_FLAGS := $(shell pkg-config libelf --cflags 2>/dev/null)
+LIBELF_LIBS  := $(shell pkg-config libelf --libs 2>/dev/null || echo -lelf)
+
 all: $(OBJTOOL)
 
 INCLUDES := -I$(srctree)/tools/include \
 	    -I$(srctree)/tools/arch/$(HOSTARCH)/include/uapi \
 	    -I$(srctree)/tools/objtool/arch/$(ARCH)/include
 WARNINGS := $(EXTRA_WARNINGS) -Wno-switch-default -Wno-switch-enum -Wno-packed
-CFLAGS   += -Werror $(WARNINGS) $(KBUILD_HOSTCFLAGS) -g $(INCLUDES)
-LDFLAGS  += -lelf $(LIBSUBCMD) $(KBUILD_HOSTLDFLAGS)
+CFLAGS   += -Werror $(WARNINGS) $(KBUILD_HOSTCFLAGS) -g $(INCLUDES) $(LIBELF_FLAGS)
+LDFLAGS  += $(LIBELF_LIBS) $(LIBSUBCMD) $(KBUILD_HOSTLDFLAGS)
 
 # Allow old libelf to be used:
 elfshdr := $(shell echo '$(pound)include <libelf.h>' | $(CC) $(CFLAGS) -x c -E - | grep elf_getshdr)


^ permalink raw reply related	[flat|nested] 29+ messages in thread

end of thread, other threads:[~2019-03-31 16:00 UTC | newest]

Thread overview: 29+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-03-10 11:33 [GIT pull] core udpate for 5.1 Thomas Gleixner
2019-03-10 11:33 ` [GIT pull] locking fixes " Thomas Gleixner
2019-03-10 22:30   ` pr-tracker-bot
2019-03-10 11:33 ` [GIT pull] perf updates " Thomas Gleixner
2019-03-10 22:30   ` pr-tracker-bot
2019-03-10 11:33 ` [GIT pull] scheduler " Thomas Gleixner
2019-03-10 20:56   ` Linus Torvalds
2019-03-11  9:09     ` Ingo Molnar
2019-03-11 14:16     ` Thomas Gleixner
2019-03-10 11:33 ` [GIT pull] timer fix " Thomas Gleixner
2019-03-10 22:30   ` pr-tracker-bot
2019-03-10 11:33 ` [GIT pull] x86/asm " Thomas Gleixner
2019-03-10 21:43   ` Linus Torvalds
2019-03-11 14:22     ` Thomas Gleixner
2019-03-11 15:39       ` Linus Torvalds
2019-03-11 16:55         ` Kees Cook
2019-03-11 17:41           ` Linus Torvalds
2019-03-11 19:14             ` Kees Cook
     [not found]               ` <CAHk-=whQYG7iHO8Gv2Ka2_2tXNJkX1LdsyqKUZ=EO0aP6uS+2g@mail.gmail.com>
2019-03-11 20:36                 ` Kees Cook
2019-03-11 21:04                   ` Linus Torvalds
2019-03-10 11:33 ` [GIT pull] x86/boot fix " Thomas Gleixner
2019-03-10 22:30   ` pr-tracker-bot
2019-03-10 11:33 ` [GIT pull] x86 fixes " Thomas Gleixner
2019-03-10 22:30   ` pr-tracker-bot
2019-03-10 22:30 ` [GIT pull] core udpate " pr-tracker-bot
2019-03-24 14:12 [GIT pull] core updates " Thomas Gleixner
2019-03-24 14:12 ` [GIT pull] perf " Thomas Gleixner
2019-03-24 18:40   ` pr-tracker-bot
2019-03-31 10:39 [GIT pull] core " Thomas Gleixner
2019-03-31 10:39 ` [GIT pull] perf " Thomas Gleixner
2019-03-31 16:00   ` pr-tracker-bot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).