* [GIT pull] x86/urgent for v5.6
2020-03-29 16:03 [GIT pull] irq/urgent for v5.6 Thomas Gleixner
@ 2020-03-29 16:03 ` Thomas Gleixner
2020-03-29 17:34 ` Linus Torvalds
2020-03-29 16:03 ` [GIT pull] timers/urgent " Thomas Gleixner
` (2 subsequent siblings)
3 siblings, 1 reply; 9+ messages in thread
From: Thomas Gleixner @ 2020-03-29 16:03 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, x86
Linus,
please pull the latest x86/urgent branch from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-urgent-2020-03-29
up to: 870b4333a62e: x86/ioremap: Fix CONFIG_EFI=n build
A single fix to unbreak the build for CONFIG_EFI=n by adding a missing
IS_ENABLED() check.
Thanks,
tglx
------------------>
Borislav Petkov (1):
x86/ioremap: Fix CONFIG_EFI=n build
arch/x86/mm/ioremap.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/arch/x86/mm/ioremap.c b/arch/x86/mm/ioremap.c
index 935a91e1fd77..18c637c0dc6f 100644
--- a/arch/x86/mm/ioremap.c
+++ b/arch/x86/mm/ioremap.c
@@ -115,6 +115,9 @@ static void __ioremap_check_other(resource_size_t addr, struct ioremap_desc *des
if (!sev_active())
return;
+ if (!IS_ENABLED(CONFIG_EFI))
+ return;
+
if (efi_mem_type(addr) == EFI_RUNTIME_SERVICES_DATA)
desc->flags |= IORES_MAP_ENCRYPTED;
}
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [GIT pull] irq/urgent for v5.6
@ 2020-03-29 16:03 Thomas Gleixner
2020-03-29 16:03 ` [GIT pull] x86/urgent " Thomas Gleixner
` (3 more replies)
0 siblings, 4 replies; 9+ messages in thread
From: Thomas Gleixner @ 2020-03-29 16:03 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, x86
Linus,
please pull the latest irq/urgent branch from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq-urgent-2020-03-29
up to: df81dfcfd699: genirq: Fix reference leaks on irq affinity notifiers
A single bugfix to prevent reference leaks in irq affinity notifiers.
Thanks,
tglx
------------------>
Edward Cree (1):
genirq: Fix reference leaks on irq affinity notifiers
kernel/irq/manage.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
diff --git a/kernel/irq/manage.c b/kernel/irq/manage.c
index 7eee98c38f25..fe40c658f86f 100644
--- a/kernel/irq/manage.c
+++ b/kernel/irq/manage.c
@@ -323,7 +323,11 @@ int irq_set_affinity_locked(struct irq_data *data, const struct cpumask *mask,
if (desc->affinity_notify) {
kref_get(&desc->affinity_notify->kref);
- schedule_work(&desc->affinity_notify->work);
+ if (!schedule_work(&desc->affinity_notify->work)) {
+ /* Work was already scheduled, drop our extra ref */
+ kref_put(&desc->affinity_notify->kref,
+ desc->affinity_notify->release);
+ }
}
irqd_set(data, IRQD_AFFINITY_SET);
@@ -423,7 +427,10 @@ irq_set_affinity_notifier(unsigned int irq, struct irq_affinity_notify *notify)
raw_spin_unlock_irqrestore(&desc->lock, flags);
if (old_notify) {
- cancel_work_sync(&old_notify->work);
+ if (cancel_work_sync(&old_notify->work)) {
+ /* Pending work had a ref, put that one too */
+ kref_put(&old_notify->kref, old_notify->release);
+ }
kref_put(&old_notify->kref, old_notify->release);
}
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [GIT pull] perf/urgent for v5.6
2020-03-29 16:03 [GIT pull] irq/urgent for v5.6 Thomas Gleixner
2020-03-29 16:03 ` [GIT pull] x86/urgent " Thomas Gleixner
2020-03-29 16:03 ` [GIT pull] timers/urgent " Thomas Gleixner
@ 2020-03-29 16:03 ` Thomas Gleixner
2020-03-29 17:36 ` Linus Torvalds
2020-03-29 18:05 ` [GIT pull] irq/urgent " pr-tracker-bot
3 siblings, 1 reply; 9+ messages in thread
From: Thomas Gleixner @ 2020-03-29 16:03 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, x86
Linus,
please pull the latest perf/urgent branch from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git perf-urgent-2020-03-29
up to: 564200ed8e71: tools headers uapi: Update linux/in.h copy
A set of perf tooling fixes:
- perf probe:
- Fix deletion of multiple probe events.
- Fix userspace libraries handling by not depending on dwfl_module_addrsym().
- event parsing:
- Fix reading of invalid memory in event parsing.
- python bindings:
- Fix clang detection when using CC=clang-version.
- build system:
- Fix O= use with relative paths.
- Android:
- Fix off by one in strncpy() size argument when handling Android
libraries.
- Sync the tools headers
Thanks,
tglx
------------------>
Arnaldo Carvalho de Melo (1):
tools headers uapi: Update linux/in.h copy
Ian Rogers (1):
perf parse-events: Fix reading of invalid memory in event parsing
Ilie Halip (1):
perf python: Fix clang detection when using CC=clang-version
Masami Hiramatsu (3):
tools: Let O= makes handle a relative path with -C option
perf probe: Fix to delete multiple probe event
perf probe: Do not depend on dwfl_module_addrsym()
disconnect3d (1):
perf map: Fix off by one in strncpy() size argument
tools/include/uapi/linux/in.h | 2 ++
tools/perf/Makefile | 2 +-
tools/perf/util/map.c | 2 +-
tools/perf/util/parse-events.c | 46 +++++++++++++++++++++---------------------
tools/perf/util/probe-file.c | 3 +++
tools/perf/util/probe-finder.c | 11 +++++++---
tools/perf/util/setup.py | 10 +++++----
tools/scripts/Makefile.include | 4 ++--
8 files changed, 46 insertions(+), 34 deletions(-)
diff --git a/tools/include/uapi/linux/in.h b/tools/include/uapi/linux/in.h
index 1521073b6348..8533bf07450f 100644
--- a/tools/include/uapi/linux/in.h
+++ b/tools/include/uapi/linux/in.h
@@ -74,6 +74,8 @@ enum {
#define IPPROTO_UDPLITE IPPROTO_UDPLITE
IPPROTO_MPLS = 137, /* MPLS in IP (RFC 4023) */
#define IPPROTO_MPLS IPPROTO_MPLS
+ IPPROTO_ETHERNET = 143, /* Ethernet-within-IPv6 Encapsulation */
+#define IPPROTO_ETHERNET IPPROTO_ETHERNET
IPPROTO_RAW = 255, /* Raw IP packets */
#define IPPROTO_RAW IPPROTO_RAW
IPPROTO_MPTCP = 262, /* Multipath TCP connection */
diff --git a/tools/perf/Makefile b/tools/perf/Makefile
index 7902a5681fc8..b8fc7d972be9 100644
--- a/tools/perf/Makefile
+++ b/tools/perf/Makefile
@@ -35,7 +35,7 @@ endif
# Only pass canonical directory names as the output directory:
#
ifneq ($(O),)
- FULL_O := $(shell readlink -f $(O) || echo $(O))
+ FULL_O := $(shell cd $(PWD); readlink -f $(O) || echo $(O))
endif
#
diff --git a/tools/perf/util/map.c b/tools/perf/util/map.c
index 95428511300d..b342f744b1fc 100644
--- a/tools/perf/util/map.c
+++ b/tools/perf/util/map.c
@@ -89,7 +89,7 @@ static inline bool replace_android_lib(const char *filename, char *newfilename)
return true;
}
- if (!strncmp(filename, "/system/lib/", 11)) {
+ if (!strncmp(filename, "/system/lib/", 12)) {
char *ndk, *app;
const char *arch;
size_t ndk_length;
diff --git a/tools/perf/util/parse-events.c b/tools/perf/util/parse-events.c
index a14995835d85..a7dc0b096974 100644
--- a/tools/perf/util/parse-events.c
+++ b/tools/perf/util/parse-events.c
@@ -1213,7 +1213,7 @@ static int config_attr(struct perf_event_attr *attr,
static int get_config_terms(struct list_head *head_config,
struct list_head *head_terms __maybe_unused)
{
-#define ADD_CONFIG_TERM(__type) \
+#define ADD_CONFIG_TERM(__type, __weak) \
struct perf_evsel_config_term *__t; \
\
__t = zalloc(sizeof(*__t)); \
@@ -1222,18 +1222,18 @@ static int get_config_terms(struct list_head *head_config,
\
INIT_LIST_HEAD(&__t->list); \
__t->type = PERF_EVSEL__CONFIG_TERM_ ## __type; \
- __t->weak = term->weak; \
+ __t->weak = __weak; \
list_add_tail(&__t->list, head_terms)
-#define ADD_CONFIG_TERM_VAL(__type, __name, __val) \
+#define ADD_CONFIG_TERM_VAL(__type, __name, __val, __weak) \
do { \
- ADD_CONFIG_TERM(__type); \
+ ADD_CONFIG_TERM(__type, __weak); \
__t->val.__name = __val; \
} while (0)
-#define ADD_CONFIG_TERM_STR(__type, __val) \
+#define ADD_CONFIG_TERM_STR(__type, __val, __weak) \
do { \
- ADD_CONFIG_TERM(__type); \
+ ADD_CONFIG_TERM(__type, __weak); \
__t->val.str = strdup(__val); \
if (!__t->val.str) { \
zfree(&__t); \
@@ -1247,62 +1247,62 @@ do { \
list_for_each_entry(term, head_config, list) {
switch (term->type_term) {
case PARSE_EVENTS__TERM_TYPE_SAMPLE_PERIOD:
- ADD_CONFIG_TERM_VAL(PERIOD, period, term->val.num);
+ ADD_CONFIG_TERM_VAL(PERIOD, period, term->val.num, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_SAMPLE_FREQ:
- ADD_CONFIG_TERM_VAL(FREQ, freq, term->val.num);
+ ADD_CONFIG_TERM_VAL(FREQ, freq, term->val.num, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_TIME:
- ADD_CONFIG_TERM_VAL(TIME, time, term->val.num);
+ ADD_CONFIG_TERM_VAL(TIME, time, term->val.num, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_CALLGRAPH:
- ADD_CONFIG_TERM_STR(CALLGRAPH, term->val.str);
+ ADD_CONFIG_TERM_STR(CALLGRAPH, term->val.str, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_BRANCH_SAMPLE_TYPE:
- ADD_CONFIG_TERM_STR(BRANCH, term->val.str);
+ ADD_CONFIG_TERM_STR(BRANCH, term->val.str, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_STACKSIZE:
ADD_CONFIG_TERM_VAL(STACK_USER, stack_user,
- term->val.num);
+ term->val.num, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_INHERIT:
ADD_CONFIG_TERM_VAL(INHERIT, inherit,
- term->val.num ? 1 : 0);
+ term->val.num ? 1 : 0, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_NOINHERIT:
ADD_CONFIG_TERM_VAL(INHERIT, inherit,
- term->val.num ? 0 : 1);
+ term->val.num ? 0 : 1, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_MAX_STACK:
ADD_CONFIG_TERM_VAL(MAX_STACK, max_stack,
- term->val.num);
+ term->val.num, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_MAX_EVENTS:
ADD_CONFIG_TERM_VAL(MAX_EVENTS, max_events,
- term->val.num);
+ term->val.num, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_OVERWRITE:
ADD_CONFIG_TERM_VAL(OVERWRITE, overwrite,
- term->val.num ? 1 : 0);
+ term->val.num ? 1 : 0, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_NOOVERWRITE:
ADD_CONFIG_TERM_VAL(OVERWRITE, overwrite,
- term->val.num ? 0 : 1);
+ term->val.num ? 0 : 1, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_DRV_CFG:
- ADD_CONFIG_TERM_STR(DRV_CFG, term->val.str);
+ ADD_CONFIG_TERM_STR(DRV_CFG, term->val.str, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_PERCORE:
ADD_CONFIG_TERM_VAL(PERCORE, percore,
- term->val.num ? true : false);
+ term->val.num ? true : false, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_AUX_OUTPUT:
ADD_CONFIG_TERM_VAL(AUX_OUTPUT, aux_output,
- term->val.num ? 1 : 0);
+ term->val.num ? 1 : 0, term->weak);
break;
case PARSE_EVENTS__TERM_TYPE_AUX_SAMPLE_SIZE:
ADD_CONFIG_TERM_VAL(AUX_SAMPLE_SIZE, aux_sample_size,
- term->val.num);
+ term->val.num, term->weak);
break;
default:
break;
@@ -1339,7 +1339,7 @@ static int get_config_chgs(struct perf_pmu *pmu, struct list_head *head_config,
}
if (bits)
- ADD_CONFIG_TERM_VAL(CFG_CHG, cfg_chg, bits);
+ ADD_CONFIG_TERM_VAL(CFG_CHG, cfg_chg, bits, false);
#undef ADD_CONFIG_TERM
return 0;
diff --git a/tools/perf/util/probe-file.c b/tools/perf/util/probe-file.c
index 0f5fda11675f..8c852948513e 100644
--- a/tools/perf/util/probe-file.c
+++ b/tools/perf/util/probe-file.c
@@ -206,6 +206,9 @@ static struct strlist *__probe_file__get_namelist(int fd, bool include_group)
} else
ret = strlist__add(sl, tev.event);
clear_probe_trace_event(&tev);
+ /* Skip if there is same name multi-probe event in the list */
+ if (ret == -EEXIST)
+ ret = 0;
if (ret < 0)
break;
}
diff --git a/tools/perf/util/probe-finder.c b/tools/perf/util/probe-finder.c
index 1c817add6ca4..e4cff49384f4 100644
--- a/tools/perf/util/probe-finder.c
+++ b/tools/perf/util/probe-finder.c
@@ -637,14 +637,19 @@ static int convert_to_trace_point(Dwarf_Die *sp_die, Dwfl_Module *mod,
return -EINVAL;
}
- /* Try to get actual symbol name from symtab */
- symbol = dwfl_module_addrsym(mod, paddr, &sym, NULL);
+ if (dwarf_entrypc(sp_die, &eaddr) == 0) {
+ /* If the DIE has entrypc, use it. */
+ symbol = dwarf_diename(sp_die);
+ } else {
+ /* Try to get actual symbol name and address from symtab */
+ symbol = dwfl_module_addrsym(mod, paddr, &sym, NULL);
+ eaddr = sym.st_value;
+ }
if (!symbol) {
pr_warning("Failed to find symbol at 0x%lx\n",
(unsigned long)paddr);
return -ENOENT;
}
- eaddr = sym.st_value;
tp->offset = (unsigned long)(paddr - eaddr);
tp->address = (unsigned long)paddr;
diff --git a/tools/perf/util/setup.py b/tools/perf/util/setup.py
index aa344a163eaf..8a065a6f9713 100644
--- a/tools/perf/util/setup.py
+++ b/tools/perf/util/setup.py
@@ -2,11 +2,13 @@ from os import getenv
from subprocess import Popen, PIPE
from re import sub
+cc = getenv("CC")
+cc_is_clang = b"clang version" in Popen([cc, "-v"], stderr=PIPE).stderr.readline()
+
def clang_has_option(option):
- return [o for o in Popen(['clang', option], stderr=PIPE).stderr.readlines() if b"unknown argument" in o] == [ ]
+ return [o for o in Popen([cc, option], stderr=PIPE).stderr.readlines() if b"unknown argument" in o] == [ ]
-cc = getenv("CC")
-if cc == "clang":
+if cc_is_clang:
from distutils.sysconfig import get_config_vars
vars = get_config_vars()
for var in ('CFLAGS', 'OPT'):
@@ -40,7 +42,7 @@ class install_lib(_install_lib):
cflags = getenv('CFLAGS', '').split()
# switch off several checks (need to be at the end of cflags list)
cflags += ['-fno-strict-aliasing', '-Wno-write-strings', '-Wno-unused-parameter', '-Wno-redundant-decls' ]
-if cc != "clang":
+if not cc_is_clang:
cflags += ['-Wno-cast-function-type' ]
src_perf = getenv('srctree') + '/tools/perf'
diff --git a/tools/scripts/Makefile.include b/tools/scripts/Makefile.include
index ded7a950dc40..6d2f3a1b2249 100644
--- a/tools/scripts/Makefile.include
+++ b/tools/scripts/Makefile.include
@@ -1,8 +1,8 @@
# SPDX-License-Identifier: GPL-2.0
ifneq ($(O),)
ifeq ($(origin O), command line)
- dummy := $(if $(shell test -d $(O) || echo $(O)),$(error O=$(O) does not exist),)
- ABSOLUTE_O := $(shell cd $(O) ; pwd)
+ dummy := $(if $(shell cd $(PWD); test -d $(O) || echo $(O)),$(error O=$(O) does not exist),)
+ ABSOLUTE_O := $(shell cd $(PWD); cd $(O) ; pwd)
OUTPUT := $(ABSOLUTE_O)/$(if $(subdir),$(subdir)/)
COMMAND_O := O=$(ABSOLUTE_O)
ifeq ($(objtree),)
^ permalink raw reply related [flat|nested] 9+ messages in thread
* [GIT pull] timers/urgent for v5.6
2020-03-29 16:03 [GIT pull] irq/urgent for v5.6 Thomas Gleixner
2020-03-29 16:03 ` [GIT pull] x86/urgent " Thomas Gleixner
@ 2020-03-29 16:03 ` Thomas Gleixner
2020-03-29 18:05 ` pr-tracker-bot
2020-03-29 16:03 ` [GIT pull] perf/urgent " Thomas Gleixner
2020-03-29 18:05 ` [GIT pull] irq/urgent " pr-tracker-bot
3 siblings, 1 reply; 9+ messages in thread
From: Thomas Gleixner @ 2020-03-29 16:03 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, x86
Linus,
please pull the latest timers/urgent branch from:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers-urgent-2020-03-29
up to: 749da8ca978f: clocksource/drivers/hyper-v: Make sched clock return nanoseconds correctly
A single fix for the Hyper-V clocksource driver to make sched clock
actually return nanoseconds and not the virtual clock value which
increments at 10e7 HZ (100ns).
Thanks,
tglx
------------------>
Yubo Xie (1):
clocksource/drivers/hyper-v: Make sched clock return nanoseconds correctly
drivers/clocksource/hyperv_timer.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/clocksource/hyperv_timer.c b/drivers/clocksource/hyperv_timer.c
index 9d808d595ca8..eb0ba7818eb0 100644
--- a/drivers/clocksource/hyperv_timer.c
+++ b/drivers/clocksource/hyperv_timer.c
@@ -343,7 +343,8 @@ static u64 notrace read_hv_clock_tsc_cs(struct clocksource *arg)
static u64 read_hv_sched_clock_tsc(void)
{
- return read_hv_clock_tsc() - hv_sched_clock_offset;
+ return (read_hv_clock_tsc() - hv_sched_clock_offset) *
+ (NSEC_PER_SEC / HV_CLOCK_HZ);
}
static void suspend_hv_clock_tsc(struct clocksource *arg)
@@ -398,7 +399,8 @@ static u64 notrace read_hv_clock_msr_cs(struct clocksource *arg)
static u64 read_hv_sched_clock_msr(void)
{
- return read_hv_clock_msr() - hv_sched_clock_offset;
+ return (read_hv_clock_msr() - hv_sched_clock_offset) *
+ (NSEC_PER_SEC / HV_CLOCK_HZ);
}
static struct clocksource hyperv_cs_msr = {
^ permalink raw reply related [flat|nested] 9+ messages in thread
* Re: [GIT pull] x86/urgent for v5.6
2020-03-29 16:03 ` [GIT pull] x86/urgent " Thomas Gleixner
@ 2020-03-29 17:34 ` Linus Torvalds
2020-03-29 18:06 ` Thomas Gleixner
0 siblings, 1 reply; 9+ messages in thread
From: Linus Torvalds @ 2020-03-29 17:34 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: Linux Kernel Mailing List, the arch/x86 maintainers
On Sun, Mar 29, 2020 at 9:03 AM Thomas Gleixner <tglx@linutronix.de> wrote:
>
> please pull the latest x86/urgent branch from:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-urgent-2020-03-29
Heh. I already got this from Ingo, where it was "x86-urgent-for-linus"
and merged on Tuesday: commit 3f3ee43a4623 ("Merge branch
'x86-urgent-for-linus' of
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip")
Linus
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT pull] perf/urgent for v5.6
2020-03-29 16:03 ` [GIT pull] perf/urgent " Thomas Gleixner
@ 2020-03-29 17:36 ` Linus Torvalds
0 siblings, 0 replies; 9+ messages in thread
From: Linus Torvalds @ 2020-03-29 17:36 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: Linux Kernel Mailing List, the arch/x86 maintainers
On Sun, Mar 29, 2020 at 9:03 AM Thomas Gleixner <tglx@linutronix.de> wrote:
>
> please pull the latest perf/urgent branch from:
Also already sent and merged on Tuesday (commit 76ccd234269b).
Linus
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT pull] timers/urgent for v5.6
2020-03-29 16:03 ` [GIT pull] timers/urgent " Thomas Gleixner
@ 2020-03-29 18:05 ` pr-tracker-bot
0 siblings, 0 replies; 9+ messages in thread
From: pr-tracker-bot @ 2020-03-29 18:05 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: Linus Torvalds, linux-kernel, x86
The pull request you sent on Sun, 29 Mar 2020 16:03:25 -0000:
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git timers-urgent-2020-03-29
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/ab93e984dbb41578b41208cee52ce4e709951eb2
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT pull] irq/urgent for v5.6
2020-03-29 16:03 [GIT pull] irq/urgent for v5.6 Thomas Gleixner
` (2 preceding siblings ...)
2020-03-29 16:03 ` [GIT pull] perf/urgent " Thomas Gleixner
@ 2020-03-29 18:05 ` pr-tracker-bot
3 siblings, 0 replies; 9+ messages in thread
From: pr-tracker-bot @ 2020-03-29 18:05 UTC (permalink / raw)
To: Thomas Gleixner; +Cc: Linus Torvalds, linux-kernel, x86
The pull request you sent on Sun, 29 Mar 2020 16:03:25 -0000:
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git irq-urgent-2020-03-29
has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/01af08bd24edf50b2d9e06f18df13cb8d0d645b7
Thank you!
--
Deet-doot-dot, I am a bot.
https://korg.wiki.kernel.org/userdoc/prtracker
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [GIT pull] x86/urgent for v5.6
2020-03-29 17:34 ` Linus Torvalds
@ 2020-03-29 18:06 ` Thomas Gleixner
0 siblings, 0 replies; 9+ messages in thread
From: Thomas Gleixner @ 2020-03-29 18:06 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Linux Kernel Mailing List, the arch/x86 maintainers
Linus Torvalds <torvalds@linux-foundation.org> writes:
> On Sun, Mar 29, 2020 at 9:03 AM Thomas Gleixner <tglx@linutronix.de> wrote:
>>
>> please pull the latest x86/urgent branch from:
>>
>> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git x86-urgent-2020-03-29
>
> Heh. I already got this from Ingo, where it was "x86-urgent-for-linus"
> and merged on Tuesday: commit 3f3ee43a4623 ("Merge branch
> 'x86-urgent-for-linus' of
> git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip")
Stupid me forgot to update the linus branch...
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2020-03-29 18:06 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-03-29 16:03 [GIT pull] irq/urgent for v5.6 Thomas Gleixner
2020-03-29 16:03 ` [GIT pull] x86/urgent " Thomas Gleixner
2020-03-29 17:34 ` Linus Torvalds
2020-03-29 18:06 ` Thomas Gleixner
2020-03-29 16:03 ` [GIT pull] timers/urgent " Thomas Gleixner
2020-03-29 18:05 ` pr-tracker-bot
2020-03-29 16:03 ` [GIT pull] perf/urgent " Thomas Gleixner
2020-03-29 17:36 ` Linus Torvalds
2020-03-29 18:05 ` [GIT pull] irq/urgent " 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).