mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [GIT pull] sched/urgent for 5.3-rc2
@ 2019-07-22 16:23 Thomas Gleixner
  2019-07-22 16:40 ` pr-tracker-bot
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Gleixner @ 2019-07-22 16:23 UTC (permalink / raw)
  To: Linus Torvalds; +Cc: LKML

Linus,

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

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

up to:  b8d3349803ba: sched/rt, Kconfig: Unbreak def/oldconfig with CONFIG_PREEMPT=y

The PREEMPT_RT stub config renamed PREEMPT to PREEMPT_LL and defined
PREEMPT outside of the menu and made it selectable by both PREEMPT_LL and
PREEMPT_RT.

Stupid me missed that 114 defconfigs select CONFIG_PREEMPT which obviously
can't work anymore. oldconfig builds are affected as well, but it's more
obvious as the user gets asked. [old]defconfig silently fixes it up and
selects PREEMPT_NONE. Unbreak it by undoing the rename and adding a
intermediate config symbol which is selected by both PREEMPT and
PREEMPT_RT. That requires to chase down a few #ifdefs, but it's better than
tweaking 114 defconfigs and annoying users.

Sorry for the inconveniance.

Thanks,

	tglx

------------------>
Thomas Gleixner (1):
      sched/rt, Kconfig: Unbreak def/oldconfig with CONFIG_PREEMPT=y


 kernel/Kconfig.preempt | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/kernel/Kconfig.preempt b/kernel/Kconfig.preempt
index fc020c09b7e8..deff97217496 100644
--- a/kernel/Kconfig.preempt
+++ b/kernel/Kconfig.preempt
@@ -35,10 +35,10 @@ config PREEMPT_VOLUNTARY
 
 	  Select this if you are building a kernel for a desktop system.
 
-config PREEMPT_LL
+config PREEMPT
 	bool "Preemptible Kernel (Low-Latency Desktop)"
 	depends on !ARCH_NO_PREEMPT
-	select PREEMPT
+	select PREEMPTION
 	select UNINLINE_SPIN_UNLOCK if !ARCH_INLINE_SPIN_UNLOCK
 	help
 	  This option reduces the latency of the kernel by making
@@ -58,7 +58,7 @@ config PREEMPT_LL
 config PREEMPT_RT
 	bool "Fully Preemptible Kernel (Real-Time)"
 	depends on EXPERT && ARCH_SUPPORTS_RT
-	select PREEMPT
+	select PREEMPTION
 	help
 	  This option turns the kernel into a real-time kernel by replacing
 	  various locking primitives (spinlocks, rwlocks, etc.) with
@@ -77,6 +77,6 @@ endchoice
 config PREEMPT_COUNT
        bool
 
-config PREEMPT
+config PREEMPTION
        bool
        select PREEMPT_COUNT

^ permalink raw reply	[flat|nested] 4+ messages in thread
* [GIT pull] core/urgent for 5.3-rc2
@ 2019-07-27 23:26 Thomas Gleixner
  2019-07-27 23:26 ` [GIT pull] sched/urgent " Thomas Gleixner
  0 siblings, 1 reply; 4+ messages in thread
From: Thomas Gleixner @ 2019-07-27 23:26 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:  882a0db9d143: objtool: Improve UACCESS coverage

A single robustness fix for objtool to handle unbalanced CLAC invocations
under all circumstances.

Thanks,

	tglx

------------------>
Peter Zijlstra (1):
      objtool: Improve UACCESS coverage


 tools/objtool/check.c | 7 ++++---
 tools/objtool/check.h | 3 ++-
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/tools/objtool/check.c b/tools/objtool/check.c
index 5f26620f13f5..176f2f084060 100644
--- a/tools/objtool/check.c
+++ b/tools/objtool/check.c
@@ -1946,6 +1946,7 @@ static int validate_branch(struct objtool_file *file, struct symbol *func,
 	struct alternative *alt;
 	struct instruction *insn, *next_insn;
 	struct section *sec;
+	u8 visited;
 	int ret;
 
 	insn = first;
@@ -1972,12 +1973,12 @@ static int validate_branch(struct objtool_file *file, struct symbol *func,
 			return 1;
 		}
 
+		visited = 1 << state.uaccess;
 		if (insn->visited) {
 			if (!insn->hint && !insn_state_match(insn, &state))
 				return 1;
 
-			/* If we were here with AC=0, but now have AC=1, go again */
-			if (insn->state.uaccess || !state.uaccess)
+			if (insn->visited & visited)
 				return 0;
 		}
 
@@ -2024,7 +2025,7 @@ static int validate_branch(struct objtool_file *file, struct symbol *func,
 		} else
 			insn->state = state;
 
-		insn->visited = true;
+		insn->visited |= visited;
 
 		if (!insn->ignore_alts) {
 			bool skip_orig = false;
diff --git a/tools/objtool/check.h b/tools/objtool/check.h
index b881fafcf55d..6d875ca6fce0 100644
--- a/tools/objtool/check.h
+++ b/tools/objtool/check.h
@@ -33,8 +33,9 @@ struct instruction {
 	unsigned int len;
 	enum insn_type type;
 	unsigned long immediate;
-	bool alt_group, visited, dead_end, ignore, hint, save, restore, ignore_alts;
+	bool alt_group, dead_end, ignore, hint, save, restore, ignore_alts;
 	bool retpoline_safe;
+	u8 visited;
 	struct symbol *call_dest;
 	struct instruction *jump_dest;
 	struct instruction *first_jump_src;


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

end of thread, other threads:[~2019-07-28  5:00 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-22 16:23 [GIT pull] sched/urgent for 5.3-rc2 Thomas Gleixner
2019-07-22 16:40 ` pr-tracker-bot
2019-07-27 23:26 [GIT pull] core/urgent " Thomas Gleixner
2019-07-27 23:26 ` [GIT pull] sched/urgent " Thomas Gleixner
2019-07-28  5: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

all inboxes | Powered by JetHome®