From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev, Ian Rogers <irogers@google.com>,
Adrian Hunter <adrian.hunter@intel.com>,
Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>,
Arnaldo Carvalho de Melo <acme@redhat.com>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.5 083/285] perf dlfilter: Add al_cleanup()
Date: Sun, 17 Sep 2023 21:11:23 +0200 [thread overview]
Message-ID: <20230917191054.580662538@linuxfoundation.org> (raw)
In-Reply-To: <20230917191051.639202302@linuxfoundation.org>
6.5-stable review patch. If anyone has any objections, please let me know.
------------------
From: Adrian Hunter <adrian.hunter@intel.com>
[ Upstream commit 82b0a10390e5f198a4e23c9cc6a7307d2cf099f3 ]
Add perf_dlfilter_fns.al_cleanup() to do addr_location__exit() on data
passed via perf_dlfilter_fns.resolve_address().
Add dlfilter-test-api-v2 to the "dlfilter C API" test to test it.
Update documentation, clarifying that data returned by APIs should not
be dereferenced after filter_event() and filter_event_early() return.
Fixes: 0dd5041c9a0eaf8c ("perf addr_location: Add init/exit/copy functions")
Reviewed-by: Ian Rogers <irogers@google.com>
Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: https://lore.kernel.org/r/20230731091857.10681-3-adrian.hunter@intel.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
tools/perf/Documentation/perf-dlfilter.txt | 22 +-
tools/perf/Makefile.perf | 2 +-
tools/perf/dlfilters/dlfilter-test-api-v2.c | 377 ++++++++++++++++++++
tools/perf/include/perf/perf_dlfilter.h | 11 +-
tools/perf/tests/dlfilter-test.c | 38 +-
tools/perf/util/dlfilter.c | 29 ++
6 files changed, 464 insertions(+), 15 deletions(-)
create mode 100644 tools/perf/dlfilters/dlfilter-test-api-v2.c
diff --git a/tools/perf/Documentation/perf-dlfilter.txt b/tools/perf/Documentation/perf-dlfilter.txt
index fb22e3b31dc5c..8887cc20a809e 100644
--- a/tools/perf/Documentation/perf-dlfilter.txt
+++ b/tools/perf/Documentation/perf-dlfilter.txt
@@ -64,6 +64,12 @@ internal filtering.
If implemented, 'filter_description' should return a one-line description
of the filter, and optionally a longer description.
+Do not assume the 'sample' argument is valid (dereferenceable)
+after 'filter_event' and 'filter_event_early' return.
+
+Do not assume data referenced by pointers in struct perf_dlfilter_sample
+is valid (dereferenceable) after 'filter_event' and 'filter_event_early' return.
+
The perf_dlfilter_sample structure
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -150,7 +156,8 @@ struct perf_dlfilter_fns {
const char *(*srcline)(void *ctx, __u32 *line_number);
struct perf_event_attr *(*attr)(void *ctx);
__s32 (*object_code)(void *ctx, __u64 ip, void *buf, __u32 len);
- void *(*reserved[120])(void *);
+ void (*al_cleanup)(void *ctx, struct perf_dlfilter_al *al);
+ void *(*reserved[119])(void *);
};
----
@@ -161,7 +168,8 @@ struct perf_dlfilter_fns {
'args' returns arguments from --dlarg options.
'resolve_address' provides information about 'address'. al->size must be set
-before calling. Returns 0 on success, -1 otherwise.
+before calling. Returns 0 on success, -1 otherwise. Call al_cleanup() (if present,
+see below) when 'al' data is no longer needed.
'insn' returns instruction bytes and length.
@@ -171,6 +179,12 @@ before calling. Returns 0 on success, -1 otherwise.
'object_code' reads object code and returns the number of bytes read.
+'al_cleanup' must be called (if present, so check perf_dlfilter_fns.al_cleanup != NULL)
+after resolve_address() to free any associated resources.
+
+Do not assume pointers obtained via perf_dlfilter_fns are valid (dereferenceable)
+after 'filter_event' and 'filter_event_early' return.
+
The perf_dlfilter_al structure
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -197,9 +211,13 @@ struct perf_dlfilter_al {
/* Below members are only populated by resolve_ip() */
__u8 filtered; /* true if this sample event will be filtered out */
const char *comm;
+ void *priv; /* Private data. Do not change */
};
----
+Do not assume data referenced by pointers in struct perf_dlfilter_al
+is valid (dereferenceable) after 'filter_event' and 'filter_event_early' return.
+
perf_dlfilter_sample flags
~~~~~~~~~~~~~~~~~~~~~~~~~~
diff --git a/tools/perf/Makefile.perf b/tools/perf/Makefile.perf
index 097316ef38e6a..f178b36c69402 100644
--- a/tools/perf/Makefile.perf
+++ b/tools/perf/Makefile.perf
@@ -381,7 +381,7 @@ ifndef NO_JVMTI
PROGRAMS += $(OUTPUT)$(LIBJVMTI)
endif
-DLFILTERS := dlfilter-test-api-v0.so dlfilter-show-cycles.so
+DLFILTERS := dlfilter-test-api-v0.so dlfilter-test-api-v2.so dlfilter-show-cycles.so
DLFILTERS := $(patsubst %,$(OUTPUT)dlfilters/%,$(DLFILTERS))
# what 'all' will build and 'install' will install, in perfexecdir
diff --git a/tools/perf/dlfilters/dlfilter-test-api-v2.c b/tools/perf/dlfilters/dlfilter-test-api-v2.c
new file mode 100644
index 0000000000000..38e593d92920c
--- /dev/null
+++ b/tools/perf/dlfilters/dlfilter-test-api-v2.c
@@ -0,0 +1,377 @@
+// SPDX-License-Identifier: GPL-2.0
+/*
+ * Test v2 API for perf --dlfilter shared object
+ * Copyright (c) 2023, Intel Corporation.
+ */
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdbool.h>
+
+/*
+ * Copy v2 API instead of including current API
+ */
+#include <linux/perf_event.h>
+#include <linux/types.h>
+
+/*
+ * The following macro can be used to determine if this header defines
+ * perf_dlfilter_sample machine_pid and vcpu.
+ */
+#define PERF_DLFILTER_HAS_MACHINE_PID
+
+/* Definitions for perf_dlfilter_sample flags */
+enum {
+ PERF_DLFILTER_FLAG_BRANCH = 1ULL << 0,
+ PERF_DLFILTER_FLAG_CALL = 1ULL << 1,
+ PERF_DLFILTER_FLAG_RETURN = 1ULL << 2,
+ PERF_DLFILTER_FLAG_CONDITIONAL = 1ULL << 3,
+ PERF_DLFILTER_FLAG_SYSCALLRET = 1ULL << 4,
+ PERF_DLFILTER_FLAG_ASYNC = 1ULL << 5,
+ PERF_DLFILTER_FLAG_INTERRUPT = 1ULL << 6,
+ PERF_DLFILTER_FLAG_TX_ABORT = 1ULL << 7,
+ PERF_DLFILTER_FLAG_TRACE_BEGIN = 1ULL << 8,
+ PERF_DLFILTER_FLAG_TRACE_END = 1ULL << 9,
+ PERF_DLFILTER_FLAG_IN_TX = 1ULL << 10,
+ PERF_DLFILTER_FLAG_VMENTRY = 1ULL << 11,
+ PERF_DLFILTER_FLAG_VMEXIT = 1ULL << 12,
+};
+
+/*
+ * perf sample event information (as per perf script and <linux/perf_event.h>)
+ */
+struct perf_dlfilter_sample {
+ __u32 size; /* Size of this structure (for compatibility checking) */
+ __u16 ins_lat; /* Refer PERF_SAMPLE_WEIGHT_TYPE in <linux/perf_event.h> */
+ __u16 p_stage_cyc; /* Refer PERF_SAMPLE_WEIGHT_TYPE in <linux/perf_event.h> */
+ __u64 ip;
+ __s32 pid;
+ __s32 tid;
+ __u64 time;
+ __u64 addr;
+ __u64 id;
+ __u64 stream_id;
+ __u64 period;
+ __u64 weight; /* Refer PERF_SAMPLE_WEIGHT_TYPE in <linux/perf_event.h> */
+ __u64 transaction; /* Refer PERF_SAMPLE_TRANSACTION in <linux/perf_event.h> */
+ __u64 insn_cnt; /* For instructions-per-cycle (IPC) */
+ __u64 cyc_cnt; /* For instructions-per-cycle (IPC) */
+ __s32 cpu;
+ __u32 flags; /* Refer PERF_DLFILTER_FLAG_* above */
+ __u64 data_src; /* Refer PERF_SAMPLE_DATA_SRC in <linux/perf_event.h> */
+ __u64 phys_addr; /* Refer PERF_SAMPLE_PHYS_ADDR in <linux/perf_event.h> */
+ __u64 data_page_size; /* Refer PERF_SAMPLE_DATA_PAGE_SIZE in <linux/perf_event.h> */
+ __u64 code_page_size; /* Refer PERF_SAMPLE_CODE_PAGE_SIZE in <linux/perf_event.h> */
+ __u64 cgroup; /* Refer PERF_SAMPLE_CGROUP in <linux/perf_event.h> */
+ __u8 cpumode; /* Refer CPUMODE_MASK etc in <linux/perf_event.h> */
+ __u8 addr_correlates_sym; /* True => resolve_addr() can be called */
+ __u16 misc; /* Refer perf_event_header in <linux/perf_event.h> */
+ __u32 raw_size; /* Refer PERF_SAMPLE_RAW in <linux/perf_event.h> */
+ const void *raw_data; /* Refer PERF_SAMPLE_RAW in <linux/perf_event.h> */
+ __u64 brstack_nr; /* Number of brstack entries */
+ const struct perf_branch_entry *brstack; /* Refer <linux/perf_event.h> */
+ __u64 raw_callchain_nr; /* Number of raw_callchain entries */
+ const __u64 *raw_callchain; /* Refer <linux/perf_event.h> */
+ const char *event;
+ __s32 machine_pid;
+ __s32 vcpu;
+};
+
+/*
+ * Address location (as per perf script)
+ */
+struct perf_dlfilter_al {
+ __u32 size; /* Size of this structure (for compatibility checking) */
+ __u32 symoff;
+ const char *sym;
+ __u64 addr; /* Mapped address (from dso) */
+ __u64 sym_start;
+ __u64 sym_end;
+ const char *dso;
+ __u8 sym_binding; /* STB_LOCAL, STB_GLOBAL or STB_WEAK, refer <elf.h> */
+ __u8 is_64_bit; /* Only valid if dso is not NULL */
+ __u8 is_kernel_ip; /* True if in kernel space */
+ __u32 buildid_size;
+ __u8 *buildid;
+ /* Below members are only populated by resolve_ip() */
+ __u8 filtered; /* True if this sample event will be filtered out */
+ const char *comm;
+ void *priv; /* Private data (v2 API) */
+};
+
+struct perf_dlfilter_fns {
+ /* Return information about ip */
+ const struct perf_dlfilter_al *(*resolve_ip)(void *ctx);
+ /* Return information about addr (if addr_correlates_sym) */
+ const struct perf_dlfilter_al *(*resolve_addr)(void *ctx);
+ /* Return arguments from --dlarg option */
+ char **(*args)(void *ctx, int *dlargc);
+ /*
+ * Return information about address (al->size must be set before
+ * calling). Returns 0 on success, -1 otherwise. Call al_cleanup()
+ * when 'al' data is no longer needed.
+ */
+ __s32 (*resolve_address)(void *ctx, __u64 address, struct perf_dlfilter_al *al);
+ /* Return instruction bytes and length */
+ const __u8 *(*insn)(void *ctx, __u32 *length);
+ /* Return source file name and line number */
+ const char *(*srcline)(void *ctx, __u32 *line_number);
+ /* Return perf_event_attr, refer <linux/perf_event.h> */
+ struct perf_event_attr *(*attr)(void *ctx);
+ /* Read object code, return numbers of bytes read */
+ __s32 (*object_code)(void *ctx, __u64 ip, void *buf, __u32 len);
+ /*
+ * If present (i.e. must check al_cleanup != NULL), call after
+ * resolve_address() to free any associated resources. (v2 API)
+ */
+ void (*al_cleanup)(void *ctx, struct perf_dlfilter_al *al);
+ /* Reserved */
+ void *(*reserved[119])(void *);
+};
+
+struct perf_dlfilter_fns perf_dlfilter_fns;
+
+static int verbose;
+
+#define pr_debug(fmt, ...) do { \
+ if (verbose > 0) \
+ fprintf(stderr, fmt, ##__VA_ARGS__); \
+ } while (0)
+
+static int test_fail(const char *msg)
+{
+ pr_debug("%s\n", msg);
+ return -1;
+}
+
+#define CHECK(x) do { \
+ if (!(x)) \
+ return test_fail("Check '" #x "' failed\n"); \
+ } while (0)
+
+struct filter_data {
+ __u64 ip;
+ __u64 addr;
+ int do_early;
+ int early_filter_cnt;
+ int filter_cnt;
+};
+
+static struct filter_data *filt_dat;
+
+int start(void **data, void *ctx)
+{
+ int dlargc;
+ char **dlargv;
+ struct filter_data *d;
+ static bool called;
+
+ verbose = 1;
+
+ CHECK(!filt_dat && !called);
+ called = true;
+
+ d = calloc(1, sizeof(*d));
+ if (!d)
+ test_fail("Failed to allocate memory");
+ filt_dat = d;
+ *data = d;
+
+ dlargv = perf_dlfilter_fns.args(ctx, &dlargc);
+
+ CHECK(dlargc == 6);
+ CHECK(!strcmp(dlargv[0], "first"));
+ verbose = strtol(dlargv[1], NULL, 0);
+ d->ip = strtoull(dlargv[2], NULL, 0);
+ d->addr = strtoull(dlargv[3], NULL, 0);
+ d->do_early = strtol(dlargv[4], NULL, 0);
+ CHECK(!strcmp(dlargv[5], "last"));
+
+ pr_debug("%s API\n", __func__);
+
+ return 0;
+}
+
+#define CHECK_SAMPLE(x) do { \
+ if (sample->x != expected.x) \
+ return test_fail("'" #x "' not expected value\n"); \
+ } while (0)
+
+static int check_sample(struct filter_data *d, const struct perf_dlfilter_sample *sample)
+{
+ struct perf_dlfilter_sample expected = {
+ .ip = d->ip,
+ .pid = 12345,
+ .tid = 12346,
+ .time = 1234567890,
+ .addr = d->addr,
+ .id = 99,
+ .stream_id = 101,
+ .period = 543212345,
+ .cpu = 31,
+ .cpumode = PERF_RECORD_MISC_USER,
+ .addr_correlates_sym = 1,
+ .misc = PERF_RECORD_MISC_USER,
+ };
+
+ CHECK(sample->size >= sizeof(struct perf_dlfilter_sample));
+
+ CHECK_SAMPLE(ip);
+ CHECK_SAMPLE(pid);
+ CHECK_SAMPLE(tid);
+ CHECK_SAMPLE(time);
+ CHECK_SAMPLE(addr);
+ CHECK_SAMPLE(id);
+ CHECK_SAMPLE(stream_id);
+ CHECK_SAMPLE(period);
+ CHECK_SAMPLE(cpu);
+ CHECK_SAMPLE(cpumode);
+ CHECK_SAMPLE(addr_correlates_sym);
+ CHECK_SAMPLE(misc);
+
+ CHECK(!sample->raw_data);
+ CHECK_SAMPLE(brstack_nr);
+ CHECK(!sample->brstack);
+ CHECK_SAMPLE(raw_callchain_nr);
+ CHECK(!sample->raw_callchain);
+
+#define EVENT_NAME "branches:"
+ CHECK(!strncmp(sample->event, EVENT_NAME, strlen(EVENT_NAME)));
+
+ return 0;
+}
+
+static int check_al(void *ctx)
+{
+ const struct perf_dlfilter_al *al;
+
+ al = perf_dlfilter_fns.resolve_ip(ctx);
+ if (!al)
+ return test_fail("resolve_ip() failed");
+
+ CHECK(al->sym && !strcmp("foo", al->sym));
+ CHECK(!al->symoff);
+
+ return 0;
+}
+
+static int check_addr_al(void *ctx)
+{
+ const struct perf_dlfilter_al *addr_al;
+
+ addr_al = perf_dlfilter_fns.resolve_addr(ctx);
+ if (!addr_al)
+ return test_fail("resolve_addr() failed");
+
+ CHECK(addr_al->sym && !strcmp("bar", addr_al->sym));
+ CHECK(!addr_al->symoff);
+
+ return 0;
+}
+
+static int check_address_al(void *ctx, const struct perf_dlfilter_sample *sample)
+{
+ struct perf_dlfilter_al address_al;
+ const struct perf_dlfilter_al *al;
+
+ al = perf_dlfilter_fns.resolve_ip(ctx);
+ if (!al)
+ return test_fail("resolve_ip() failed");
+
+ address_al.size = sizeof(address_al);
+ if (perf_dlfilter_fns.resolve_address(ctx, sample->ip, &address_al))
+ return test_fail("resolve_address() failed");
+
+ CHECK(address_al.sym && al->sym);
+ CHECK(!strcmp(address_al.sym, al->sym));
+ CHECK(address_al.addr == al->addr);
+ CHECK(address_al.sym_start == al->sym_start);
+ CHECK(address_al.sym_end == al->sym_end);
+ CHECK(address_al.dso && al->dso);
+ CHECK(!strcmp(address_al.dso, al->dso));
+
+ /* al_cleanup() is v2 API so may not be present */
+ if (perf_dlfilter_fns.al_cleanup)
+ perf_dlfilter_fns.al_cleanup(ctx, &address_al);
+
+ return 0;
+}
+
+static int check_attr(void *ctx)
+{
+ struct perf_event_attr *attr = perf_dlfilter_fns.attr(ctx);
+
+ CHECK(attr);
+ CHECK(attr->type == PERF_TYPE_HARDWARE);
+ CHECK(attr->config == PERF_COUNT_HW_BRANCH_INSTRUCTIONS);
+
+ return 0;
+}
+
+static int do_checks(void *data, const struct perf_dlfilter_sample *sample, void *ctx, bool early)
+{
+ struct filter_data *d = data;
+
+ CHECK(data && filt_dat == data);
+
+ if (early) {
+ CHECK(!d->early_filter_cnt);
+ d->early_filter_cnt += 1;
+ } else {
+ CHECK(!d->filter_cnt);
+ CHECK(d->early_filter_cnt);
+ CHECK(d->do_early != 2);
+ d->filter_cnt += 1;
+ }
+
+ if (check_sample(data, sample))
+ return -1;
+
+ if (check_attr(ctx))
+ return -1;
+
+ if (early && !d->do_early)
+ return 0;
+
+ if (check_al(ctx) || check_addr_al(ctx) || check_address_al(ctx, sample))
+ return -1;
+
+ if (early)
+ return d->do_early == 2;
+
+ return 1;
+}
+
+int filter_event_early(void *data, const struct perf_dlfilter_sample *sample, void *ctx)
+{
+ pr_debug("%s API\n", __func__);
+
+ return do_checks(data, sample, ctx, true);
+}
+
+int filter_event(void *data, const struct perf_dlfilter_sample *sample, void *ctx)
+{
+ pr_debug("%s API\n", __func__);
+
+ return do_checks(data, sample, ctx, false);
+}
+
+int stop(void *data, void *ctx)
+{
+ static bool called;
+
+ pr_debug("%s API\n", __func__);
+
+ CHECK(data && filt_dat == data && !called);
+ called = true;
+
+ free(data);
+ filt_dat = NULL;
+ return 0;
+}
+
+const char *filter_description(const char **long_description)
+{
+ *long_description = "Filter used by the 'dlfilter C API' perf test";
+ return "dlfilter to test v2 C API";
+}
diff --git a/tools/perf/include/perf/perf_dlfilter.h b/tools/perf/include/perf/perf_dlfilter.h
index a26e2f129f83e..16fc4568ac53b 100644
--- a/tools/perf/include/perf/perf_dlfilter.h
+++ b/tools/perf/include/perf/perf_dlfilter.h
@@ -91,6 +91,7 @@ struct perf_dlfilter_al {
/* Below members are only populated by resolve_ip() */
__u8 filtered; /* True if this sample event will be filtered out */
const char *comm;
+ void *priv; /* Private data. Do not change */
};
struct perf_dlfilter_fns {
@@ -102,7 +103,8 @@ struct perf_dlfilter_fns {
char **(*args)(void *ctx, int *dlargc);
/*
* Return information about address (al->size must be set before
- * calling). Returns 0 on success, -1 otherwise.
+ * calling). Returns 0 on success, -1 otherwise. Call al_cleanup()
+ * when 'al' data is no longer needed.
*/
__s32 (*resolve_address)(void *ctx, __u64 address, struct perf_dlfilter_al *al);
/* Return instruction bytes and length */
@@ -113,8 +115,13 @@ struct perf_dlfilter_fns {
struct perf_event_attr *(*attr)(void *ctx);
/* Read object code, return numbers of bytes read */
__s32 (*object_code)(void *ctx, __u64 ip, void *buf, __u32 len);
+ /*
+ * If present (i.e. must check al_cleanup != NULL), call after
+ * resolve_address() to free any associated resources.
+ */
+ void (*al_cleanup)(void *ctx, struct perf_dlfilter_al *al);
/* Reserved */
- void *(*reserved[120])(void *);
+ void *(*reserved[119])(void *);
};
/*
diff --git a/tools/perf/tests/dlfilter-test.c b/tools/perf/tests/dlfilter-test.c
index 086fd2179e41f..da3a9b50b1b1f 100644
--- a/tools/perf/tests/dlfilter-test.c
+++ b/tools/perf/tests/dlfilter-test.c
@@ -1,7 +1,7 @@
// SPDX-License-Identifier: GPL-2.0
/*
* Test dlfilter C API. A perf.data file is synthesized and then processed
- * by perf script with a dlfilter named dlfilter-test-api-v0.so. Also a C file
+ * by perf script with dlfilters named dlfilter-test-api-v*.so. Also a C file
* is compiled to provide a dso to match the synthesized perf.data file.
*/
@@ -37,6 +37,8 @@
#define MAP_START 0x400000
+#define DLFILTER_TEST_NAME_MAX 128
+
struct test_data {
struct perf_tool tool;
struct machine *machine;
@@ -45,6 +47,8 @@ struct test_data {
u64 bar;
u64 ip;
u64 addr;
+ char name[DLFILTER_TEST_NAME_MAX];
+ char desc[DLFILTER_TEST_NAME_MAX];
char perf[PATH_MAX];
char perf_data_file_name[PATH_MAX];
char c_file_name[PATH_MAX];
@@ -215,7 +219,7 @@ static int write_prog(char *file_name)
return err ? -1 : 0;
}
-static int get_dlfilters_path(char *buf, size_t sz)
+static int get_dlfilters_path(const char *name, char *buf, size_t sz)
{
char perf[PATH_MAX];
char path[PATH_MAX];
@@ -224,12 +228,12 @@ static int get_dlfilters_path(char *buf, size_t sz)
perf_exe(perf, sizeof(perf));
perf_path = dirname(perf);
- snprintf(path, sizeof(path), "%s/dlfilters/dlfilter-test-api-v0.so", perf_path);
+ snprintf(path, sizeof(path), "%s/dlfilters/%s", perf_path, name);
if (access(path, R_OK)) {
exec_path = get_argv_exec_path();
if (!exec_path)
return -1;
- snprintf(path, sizeof(path), "%s/dlfilters/dlfilter-test-api-v0.so", exec_path);
+ snprintf(path, sizeof(path), "%s/dlfilters/%s", exec_path, name);
free(exec_path);
if (access(path, R_OK))
return -1;
@@ -244,9 +248,9 @@ static int check_filter_desc(struct test_data *td)
char *desc = NULL;
int ret;
- if (get_filter_desc(td->dlfilters, "dlfilter-test-api-v0.so", &desc, &long_desc) &&
+ if (get_filter_desc(td->dlfilters, td->name, &desc, &long_desc) &&
long_desc && !strcmp(long_desc, "Filter used by the 'dlfilter C API' perf test") &&
- desc && !strcmp(desc, "dlfilter to test v0 C API"))
+ desc && !strcmp(desc, td->desc))
ret = 0;
else
ret = -1;
@@ -284,7 +288,7 @@ static int get_ip_addr(struct test_data *td)
static int do_run_perf_script(struct test_data *td, int do_early)
{
return system_cmd("%s script -i %s "
- "--dlfilter %s/dlfilter-test-api-v0.so "
+ "--dlfilter %s/%s "
"--dlarg first "
"--dlarg %d "
"--dlarg %" PRIu64 " "
@@ -292,7 +296,7 @@ static int do_run_perf_script(struct test_data *td, int do_early)
"--dlarg %d "
"--dlarg last",
td->perf, td->perf_data_file_name, td->dlfilters,
- verbose, td->ip, td->addr, do_early);
+ td->name, verbose, td->ip, td->addr, do_early);
}
static int run_perf_script(struct test_data *td)
@@ -321,7 +325,7 @@ static int test__dlfilter_test(struct test_data *td)
u64 id = 99;
int err;
- if (get_dlfilters_path(td->dlfilters, PATH_MAX))
+ if (get_dlfilters_path(td->name, td->dlfilters, PATH_MAX))
return test_result("dlfilters not found", TEST_SKIP);
if (check_filter_desc(td))
@@ -399,14 +403,18 @@ static void test_data__free(struct test_data *td)
}
}
-static int test__dlfilter(struct test_suite *test __maybe_unused, int subtest __maybe_unused)
+static int test__dlfilter_ver(int ver)
{
struct test_data td = {.fd = -1};
int pid = getpid();
int err;
+ pr_debug("\n-- Testing version %d API --\n", ver);
+
perf_exe(td.perf, sizeof(td.perf));
+ snprintf(td.name, sizeof(td.name), "dlfilter-test-api-v%d.so", ver);
+ snprintf(td.desc, sizeof(td.desc), "dlfilter to test v%d C API", ver);
snprintf(td.perf_data_file_name, PATH_MAX, "/tmp/dlfilter-test-%u-perf-data", pid);
snprintf(td.c_file_name, PATH_MAX, "/tmp/dlfilter-test-%u-prog.c", pid);
snprintf(td.prog_file_name, PATH_MAX, "/tmp/dlfilter-test-%u-prog", pid);
@@ -416,4 +424,14 @@ static int test__dlfilter(struct test_suite *test __maybe_unused, int subtest __
return err;
}
+static int test__dlfilter(struct test_suite *test __maybe_unused, int subtest __maybe_unused)
+{
+ int err = test__dlfilter_ver(0);
+
+ if (err)
+ return err;
+ /* No test for version 1 */
+ return test__dlfilter_ver(2);
+}
+
DEFINE_SUITE("dlfilter C API", dlfilter);
diff --git a/tools/perf/util/dlfilter.c b/tools/perf/util/dlfilter.c
index 798a53d7e6c9d..e0f822ebb9b97 100644
--- a/tools/perf/util/dlfilter.c
+++ b/tools/perf/util/dlfilter.c
@@ -10,6 +10,8 @@
#include <subcmd/exec-cmd.h>
#include <linux/zalloc.h>
#include <linux/build_bug.h>
+#include <linux/kernel.h>
+#include <linux/string.h>
#include "debug.h"
#include "event.h"
@@ -63,6 +65,7 @@ static void al_to_d_al(struct addr_location *al, struct perf_dlfilter_al *d_al)
d_al->addr = al->addr;
d_al->comm = NULL;
d_al->filtered = 0;
+ d_al->priv = NULL;
}
static struct addr_location *get_al(struct dlfilter *d)
@@ -151,6 +154,11 @@ static char **dlfilter__args(void *ctx, int *dlargc)
return d->dlargv;
}
+static bool has_priv(struct perf_dlfilter_al *d_al_p)
+{
+ return d_al_p->size >= offsetof(struct perf_dlfilter_al, priv) + sizeof(d_al_p->priv);
+}
+
static __s32 dlfilter__resolve_address(void *ctx, __u64 address, struct perf_dlfilter_al *d_al_p)
{
struct dlfilter *d = (struct dlfilter *)ctx;
@@ -177,9 +185,29 @@ static __s32 dlfilter__resolve_address(void *ctx, __u64 address, struct perf_dlf
memcpy(d_al_p, &d_al, min((size_t)sz, sizeof(d_al)));
d_al_p->size = sz;
+ if (has_priv(d_al_p))
+ d_al_p->priv = memdup(&al, sizeof(al));
+
return 0;
}
+static void dlfilter__al_cleanup(void *ctx __maybe_unused, struct perf_dlfilter_al *d_al_p)
+{
+ struct addr_location *al;
+
+ /* Ensure backward compatibility */
+ if (!has_priv(d_al_p) || !d_al_p->priv)
+ return;
+
+ al = d_al_p->priv;
+
+ d_al_p->priv = NULL;
+
+ addr_location__exit(al);
+
+ free(al);
+}
+
static const __u8 *dlfilter__insn(void *ctx, __u32 *len)
{
struct dlfilter *d = (struct dlfilter *)ctx;
@@ -297,6 +325,7 @@ static const struct perf_dlfilter_fns perf_dlfilter_fns = {
.resolve_addr = dlfilter__resolve_addr,
.args = dlfilter__args,
.resolve_address = dlfilter__resolve_address,
+ .al_cleanup = dlfilter__al_cleanup,
.insn = dlfilter__insn,
.srcline = dlfilter__srcline,
.attr = dlfilter__attr,
--
2.40.1
next prev parent reply other threads:[~2023-09-17 19:48 UTC|newest]
Thread overview: 319+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-17 19:10 [PATCH 6.5 000/285] 6.5.4-rc1 review Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 001/285] net/ipv6: SKB symmetric hash should incorporate transport ports Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 002/285] drm/virtio: Conditionally allocate virtio_gpu_fence Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 003/285] scsi: ufs: core: Add advanced RPMB support where UFSHCI 4.0 does not support EHS length in UTRD Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 004/285] scsi: qla2xxx: Adjust IOCB resource on qpair create Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 005/285] scsi: qla2xxx: Limit TMF to 8 per function Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 006/285] scsi: qla2xxx: Fix deletion race condition Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 007/285] scsi: qla2xxx: fix inconsistent TMF timeout Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 008/285] scsi: qla2xxx: Fix command flush during TMF Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 009/285] scsi: qla2xxx: Fix erroneous link up failure Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 010/285] scsi: qla2xxx: Turn off noisy message log Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 011/285] scsi: qla2xxx: Fix session hang in gnl Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 012/285] scsi: qla2xxx: Fix TMF leak through Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 013/285] scsi: qla2xxx: Remove unsupported ql2xenabledif option Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 014/285] scsi: qla2xxx: Flush mailbox commands on chip reset Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 015/285] scsi: qla2xxx: Fix smatch warn for qla_init_iocb_limit() Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 016/285] scsi: qla2xxx: Error code did not return to upper layer Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 017/285] scsi: qla2xxx: Fix firmware resource tracking Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 018/285] null_blk: fix poll request timeout handling Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 019/285] kernfs: fix missing kernfs_iattr_rwsem locking Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 020/285] fbdev/ep93xx-fb: Do not assign to struct fb_info.dev Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 021/285] clk: qcom: camcc-sc7180: fix async resume during probe Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 022/285] drm/ast: Fix DRAM init on AST2200 Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 023/285] ASoC: tegra: Fix SFC conversion for few rates Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 024/285] ARM: dts: samsung: exynos4210-i9100: Fix LCD screens physical size Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 025/285] arm64: tegra: Update AHUB clock parent and rate on Tegra234 Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 026/285] arm64: tegra: Update AHUB clock parent and rate Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 027/285] clk: qcom: turingcc-qcs404: fix missing resume during probe Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 028/285] ARM: dts: qcom: msm8974pro-castor: correct inverted X of touchscreen Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 029/285] arm64: dts: qcom: msm8953-vince: drop duplicated touschreen parent interrupt Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 030/285] ARM: dts: qcom: msm8974pro-castor: correct touchscreen function names Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 031/285] ARM: dts: qcom: msm8974pro-castor: correct touchscreen syna,nosleep-mode Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 032/285] arm64: dts: renesas: rzg2l: Fix txdv-skew-psec typos Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 033/285] ARM: dts: BCM5301X: Extend RAM to full 256MB for Linksys EA6500 V2 Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 034/285] [SMB3] send channel sequence number in SMB3 requests after reconnects Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 035/285] memcg: drop kmem.limit_in_bytes Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 036/285] mm: hugetlb_vmemmap: fix a race between vmemmap pmd split Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 037/285] lib/test_meminit: allocate pages up to order MAX_ORDER Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 038/285] Multi-gen LRU: avoid race in inc_min_seq() Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 039/285] parisc: led: Fix LAN receive and transmit LEDs Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 040/285] parisc: led: Reduce CPU overhead for disk & lan LED computation Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 041/285] cifs: update desired access while requesting for directory lease Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 042/285] pinctrl: cherryview: fix address_space_handler() argument Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 043/285] dt-bindings: clock: xlnx,versal-clk: drop select:false Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 044/285] clk: imx: pll14xx: dynamically configure PLL for 393216000/361267200Hz Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 045/285] clk: imx: pll14xx: align pdiv with reference manual Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 046/285] clk: qcom: gcc-mdm9615: use proper parent for pll0_vote clock Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 047/285] soc: qcom: qmi_encdec: Restrict string length in decode Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 048/285] clk: qcom: dispcc-sm8450: fix runtime PM imbalance on probe errors Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 049/285] clk: qcom: dispcc-sm8550: " Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 050/285] clk: qcom: lpasscc-sc7280: fix missing resume during probe Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 051/285] clk: qcom: q6sstop-qcs404: " Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 052/285] clk: qcom: mss-sc7180: " Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 053/285] NFS: Fix a potential data corruption Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 054/285] NFSv4/pnfs: minor fix for cleanup path in nfs4_get_device_info Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 055/285] bus: mhi: host: Skip MHI reset if device is in RDDM Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 056/285] kbuild: rpm-pkg: define _arch conditionally Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 057/285] kbuild: do not run depmod for make modules_sign Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 058/285] kbuild: dummy-tools: make MPROFILE_KERNEL checks work on BE Greg Kroah-Hartman
2023-09-17 19:10 ` [PATCH 6.5 059/285] tpm_crb: Fix an error handling path in crb_acpi_add() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 060/285] gfs2: Switch to wait_event in gfs2_logd Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 061/285] gfs2: low-memory forced flush fixes Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 062/285] mailbox: qcom-ipcc: fix incorrect num_chans counting Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 063/285] kconfig: fix possible buffer overflow Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 064/285] tools/mm: fix undefined reference to pthread_once Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 065/285] Input: iqs7222 - configure power mode before triggering ATI Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 066/285] perf trace: Really free the evsel->priv area Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 067/285] pwm: atmel-tcb: Harmonize resource allocation order Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 068/285] pwm: atmel-tcb: Fix resource freeing in error path and remove Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 069/285] backlight: lp855x: Initialize PWM state on first brightness change Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 070/285] backlight: gpio_backlight: Drop output GPIO direction check for initial power state Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 071/285] perf parse-events: Separate YYABORT and YYNOMEM cases Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 072/285] perf parse-events: Move instances of YYABORT to YYNOMEM Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 073/285] perf parse-events: Separate ENOMEM memory handling Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 074/285] perf parse-events: Additional error reporting Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 075/285] KVM: SVM: Dont defer NMI unblocking until next exit for SEV-ES guests Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 076/285] Input: tca6416-keypad - always expect proper IRQ number in i2c client Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 077/285] Input: tca6416-keypad - fix interrupt enable disbalance Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 078/285] perf annotate bpf: Dont enclose non-debug code with an assert() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 079/285] x86/virt: Drop unnecessary check on extended CPUID level in cpu_has_svm() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 080/285] perf script: Print "cgroup" field on the same line as "comm" Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 081/285] perf bpf-filter: Fix sample flag check with || Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 082/285] perf dlfilter: Initialize addr_location before passing it to thread__find_symbol_fb() Greg Kroah-Hartman
2023-09-17 19:11 ` Greg Kroah-Hartman [this message]
2023-09-17 19:11 ` [PATCH 6.5 084/285] perf vendor events: Update the JSON/events descriptions for power10 platform Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 085/285] perf vendor events: Drop some of the JSON/events " Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 086/285] perf vendor events: Drop STORES_PER_INST metric event " Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 087/285] perf vendor events: Move JSON/events to appropriate files " Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 088/285] perf vendor events: Update metric event names " Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 089/285] perf top: Dont pass an ERR_PTR() directly to perf_session__delete() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 090/285] perf lock: " Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 091/285] watchdog: intel-mid_wdt: add MODULE_ALIAS() to allow auto-load Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 092/285] perf vendor events arm64: Remove L1D_CACHE_LMISS from AmpereOne list Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 093/285] pwm: lpc32xx: Remove handling of PWM channels Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 094/285] accel/ivpu: refactor deprecated strncpy Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 095/285] perf header: Fix missing PMU caps Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 096/285] i3c: master: svc: Describe member saved_regs Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 097/285] perf test stat_bpf_counters_cgrp: Fix shellcheck issue about logical operators Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 098/285] perf test stat_bpf_counters_cgrp: Enhance perf stat cgroup BPF counter test Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 099/285] regulator: tps6287x: Fix n_voltages Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 100/285] selftests/bpf: Fix flaky cgroup_iter_sleepable subtest Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 101/285] drm/i915: mark requests for GuC virtual engines to avoid use-after-free Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 102/285] blk-throttle: use calculate_io/bytes_allowed() for throtl_trim_slice() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 103/285] blk-throttle: consider carryover_ios/bytes in throtl_trim_slice() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 104/285] netfilter: nf_tables: Audit log setelem reset Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 105/285] netfilter: nf_tables: Audit log rule reset Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 106/285] smb: propagate error code of extract_sharename() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 107/285] net/sched: fq_pie: avoid stalls in fq_pie_timer() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 108/285] sctp: annotate data-races around sk->sk_wmem_queued Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 109/285] ipv4: annotate data-races around fi->fib_dead Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 110/285] net: read sk->sk_family once in sk_mc_loop() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 111/285] net: fib: avoid warn splat in flow dissector Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 112/285] xsk: Fix xsk_diag use-after-free error during socket cleanup Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 113/285] ceph: make members in struct ceph_mds_request_args_ext a union Greg Kroah-Hartman
2023-09-18 8:04 ` Ilya Dryomov
2023-09-18 8:19 ` Xiubo Li
2023-09-18 8:43 ` Ilya Dryomov
2023-09-18 9:23 ` Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 114/285] drm/i915/gvt: Verify pfn is "valid" before dereferencing "struct page" Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 115/285] drm/i915/gvt: Put the page reference obtained by KVMs gfn_to_pfn() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 116/285] drm/i915/gvt: Drop unused helper intel_vgpu_reset_gtt() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 117/285] drm/amd/display: fix mode scaling (RMX_.*) Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 118/285] net/handshake: fix null-ptr-deref in handshake_nl_done_doit() Greg Kroah-Hartman
2023-09-17 19:11 ` [PATCH 6.5 119/285] net: use sk_forward_alloc_get() in sk_get_meminfo() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 120/285] net: annotate data-races around sk->sk_forward_alloc Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 121/285] mptcp: annotate data-races around msk->rmem_fwd_alloc Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 122/285] net: annotate data-races around sk->sk_tsflags Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 123/285] net: annotate data-races around sk->sk_bind_phc Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 124/285] ipv4: ignore dst hint for multipath routes Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 125/285] ipv6: " Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 126/285] selftests/bpf: Fix a CI failure caused by vsock write Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 127/285] igb: disable virtualization features on 82580 Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 128/285] gve: fix frag_list chaining Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 129/285] veth: Fixing transmit return status for dropped packets Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 130/285] net: ipv6/addrconf: avoid integer underflow in ipv6_create_tempaddr Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 131/285] net: phy: micrel: Correct bit assignments for phy_device flags Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 132/285] bpf, sockmap: Fix skb refcnt race after locking changes Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 133/285] af_unix: Fix msg_controllen test in scm_pidfd_recv() for MSG_CMSG_COMPAT Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 134/285] af_unix: Fix data-races around user->unix_inflight Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 135/285] af_unix: Fix data-race around unix_tot_inflight Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 136/285] af_unix: Fix data-races around sk->sk_shutdown Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 137/285] af_unix: Fix data race around sk->sk_err Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 138/285] net: sched: sch_qfq: Fix UAF in qfq_dequeue() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 139/285] kcm: Destroy mutex in kcm_exit_net() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 140/285] octeontx2-af: Fix truncation of smq in CN10K NIX AQ enqueue mbox handler Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 141/285] igc: Change IGC_MIN to allow set rx/tx value between 64 and 80 Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 142/285] igbvf: Change IGBVF_MIN " Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 143/285] igb: Change IGB_MIN " Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 144/285] s390/zcrypt: dont leak memory if dev_set_name() fails Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 145/285] regulator: tps6594-regulator: Fix random kernel crash Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 146/285] idr: fix param name in idr_alloc_cyclic() doc Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 147/285] ip_tunnels: use DEV_STATS_INC() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 148/285] net/mlx5e: Clear mirred devices array if the rule is split Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 149/285] net/mlx5: Give esw_offloads_load/unload_rep() "mlx5_" prefix Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 150/285] net/mlx5: Rework devlink port alloc/free into init/cleanup Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 151/285] net/mlx5: Push devlink port PF/VF init/cleanup calls out of devlink_port_register/unregister() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 152/285] mlx5/core: E-Switch, Create ACL FT for eswitch manager in switchdev mode Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 153/285] net: dsa: sja1105: fix bandwidth discrepancy between tc-cbs software and offload Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 154/285] net: dsa: sja1105: fix -ENOSPC when replacing the same tc-cbs too many times Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 155/285] net: dsa: sja1105: complete tc-cbs offload support on SJA1110 Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 156/285] net: phylink: fix sphinx complaint about invalid literal Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 157/285] bpf: Invoke __bpf_prog_exit_sleepable_recur() on recursion in kern_sys_bpf() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 158/285] bpf: Assign bpf_tramp_run_ctx::saved_run_ctx before recursion check Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 159/285] s390/bpf: Pass through tail call counter in trampolines Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 160/285] bpf: bpf_sk_storage: Fix invalid wait context lockdep report Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 161/285] bpf: bpf_sk_storage: Fix the missing uncharge in sk_omem_alloc Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 162/285] netfilter: nftables: exthdr: fix 4-byte stack OOB write Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 163/285] netfilter: nfnetlink_osf: avoid OOB read Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 164/285] netfilter: nft_set_rbtree: skip sync GC for new elements in this transaction Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 165/285] netfilter: nf_tables: Unbreak audit log reset Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 166/285] net: phy: Provide Module 4 KSZ9477 errata (DS80000754C) Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 167/285] net: hns3: fix tx timeout issue Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 168/285] net: hns3: fix byte order conversion issue in hclge_dbg_fd_tcam_read() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 169/285] net: hns3: fix debugfs concurrency issue between kfree buffer and read Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 170/285] net: hns3: fix invalid mutex between tc qdisc and dcb ets command issue Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 171/285] net: hns3: fix the port information display when sfp is absent Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 172/285] net: hns3: remove GSO partial feature bit Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 173/285] net: enetc: distinguish error from valid pointers in enetc_fixup_clear_rss_rfs() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 174/285] sh: boards: Fix CEU buffer size passed to dma_declare_coherent_memory() Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 175/285] sh: push-switch: Reorder cleanup operations to avoid use-after-free bug Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 176/285] linux/export: fix reference to exported functions for parisc64 Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 177/285] watchdog: advantech_ec_wdt: fix Kconfig dependencies Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 178/285] drm/amd/display: Temporary Disable MST DP Colorspace Property Greg Kroah-Hartman
2023-09-17 19:12 ` [PATCH 6.5 179/285] ARC: atomics: Add compiler barrier to atomic operations Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 180/285] clocksource/drivers/arm_arch_timer: Disable timer before programming CVAL Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 181/285] dmaengine: sh: rz-dmac: Fix destination and source data size setting Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 182/285] misc: fastrpc: Fix remote heap allocation request Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 183/285] misc: fastrpc: Fix incorrect DMA mapping unmap request Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 184/285] jbd2: fix checkpoint cleanup performance regression Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 185/285] jbd2: check jh->b_transaction before removing it from checkpoint Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 186/285] jbd2: correct the end of the journal recovery scan range Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 187/285] ext4: fix slab-use-after-free in ext4_es_insert_extent() Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 188/285] ext4: add correct group descriptors and reserved GDT blocks to system zone Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 189/285] ext4: fix memory leaks in ext4_fname_{setup_filename,prepare_lookup} Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 190/285] ext4: drop dio overwrite only flag and associated warning Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 191/285] f2fs: get out of a repeat loop when getting a locked data page Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 192/285] f2fs: flush inode if atomic file is aborted Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 193/285] f2fs: avoid false alarm of circular locking Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 194/285] lib: test_scanf: Add explicit type cast to result initialization in test_number_prefix() Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 195/285] hwspinlock: qcom: add missing regmap config for SFPB MMIO implementation Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 196/285] memcontrol: ensure memcg acquired by id is properly set up Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 197/285] ata: ahci: Add Elkhart Lake AHCI controller Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 198/285] ata: pata_falcon: fix IO base selection for Q40 Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 199/285] ata: sata_gemini: Add missing MODULE_DESCRIPTION Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 200/285] ata: pata_ftide010: " Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 201/285] fuse: nlookup missing decrement in fuse_direntplus_link Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 202/285] btrfs: zoned: do not zone finish data relocation block group Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 203/285] btrfs: fix start transaction qgroup rsv double free Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 204/285] btrfs: free qgroup rsv on io failure Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 205/285] btrfs: dont start transaction when joining with TRANS_JOIN_NOSTART Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 206/285] btrfs: set page extent mapped after read_folio in relocate_one_page Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 207/285] btrfs: zoned: re-enable metadata over-commit for zoned mode Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 208/285] btrfs: use the correct superblock to compare fsid in btrfs_validate_super Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 209/285] btrfs: scrub: avoid unnecessary extent tree search preparing stripes Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 210/285] btrfs: scrub: avoid unnecessary csum " Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 211/285] btrfs: scrub: fix grouping of read IO Greg Kroah-Hartman
2023-10-26 13:31 ` Sam James
2023-10-26 14:00 ` Holger Hoffstätte
2023-10-26 21:01 ` Qu Wenruo
2023-10-26 21:12 ` Sam James
2023-10-26 21:43 ` Qu Wenruo
2023-10-27 6:55 ` Holger Hoffstätte
2023-10-27 7:00 ` Qu Wenruo
2023-10-27 7:02 ` Qu Wenruo
2023-10-27 7:52 ` Holger Hoffstätte
2023-10-27 7:57 ` Qu Wenruo
2023-09-17 19:13 ` [PATCH 6.5 212/285] drm/mxsfb: Disable overlay plane in mxsfb_plane_overlay_atomic_disable() Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 213/285] mtd: rawnand: brcmnand: Fix crash during the panic_write Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 214/285] mtd: rawnand: brcmnand: Fix potential out-of-bounds access in oob write Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 215/285] mtd: spi-nor: Correct flags for Winbond w25q128 Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 216/285] mtd: rawnand: brcmnand: Fix potential false time out warning Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 217/285] mtd: rawnand: brcmnand: Fix ECC level field setting for v7.2 controller Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 218/285] Revert "drm/amd/display: Remove v_startup workaround for dcn3+" Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 219/285] drm/amd/display: enable cursor degamma for DCN3+ DRM legacy gamma Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 220/285] drm/amd/display: limit the v_startup workaround to ASICs older than DCN3.1 Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 221/285] drm/amd/display: prevent potential division by zero errors Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 222/285] KVM: VMX: Refresh available regs and IDT vectoring info before NMI handling Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 223/285] KVM: SVM: Take and hold ir_list_lock when updating vCPUs Physical ID entry Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 224/285] KVM: SVM: Dont inject #UD if KVM attempts to skip SEV guest insn Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 225/285] KVM: SVM: Get source vCPUs from source VM for SEV-ES intrahost migration Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 226/285] KVM: nSVM: Check instead of asserting on nested TSC scaling support Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 227/285] KVM: nSVM: Load L1s TSC multiplier based on L1 state, not L2 state Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 228/285] KVM: SVM: Set target pCPU during IRTE update if target vCPU is running Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 229/285] KVM: SVM: Skip VMSA init in sev_es_init_vmcb() if pointer is NULL Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 230/285] MIPS: Only fiddle with CHECKFLAGS if `need-compiler Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 231/285] MIPS: Fix CONFIG_CPU_DADDI_WORKAROUNDS `modules_install regression Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 232/285] perf hists browser: Fix hierarchy mode header Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 233/285] perf build: Update build rule for generated files Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 234/285] perf test shell stat_bpf_counters: Fix test on Intel Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 235/285] perf tools: Handle old data in PERF_RECORD_ATTR Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 236/285] perf build: Include generated header files properly Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 237/285] perf hists browser: Fix the number of entries for e key Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 238/285] drm/amd/display: always switch off ODM before committing more streams Greg Kroah-Hartman
2023-09-17 19:13 ` [PATCH 6.5 239/285] drm/amd/display: Remove wait while locked Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 240/285] drm/amdkfd: Add missing gfx11 MQD manager callbacks Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 241/285] drm/amdgpu: register a dirty framebuffer callback for fbcon Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 242/285] bpf: fix bpf_probe_read_kernel prototype mismatch Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 243/285] regulator: raa215300: Change the scope of the variables {clkin_name, xin_name} Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 244/285] regulator: raa215300: Fix resource leak in case of error Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 245/285] parisc: sba_iommu: Fix build warning if procfs if disabled Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 246/285] kunit: Fix wild-memory-access bug in kunit_free_suite_set() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 247/285] net: ipv4: fix one memleak in __inet_del_ifa() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 248/285] kselftest/runner.sh: Propagate SIGTERM to runner child Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 249/285] selftests: Keep symlinks, when possible Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 250/285] selftests/ftrace: Fix dependencies for some of the synthetic event tests Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 251/285] net: microchip: vcap api: Fix possible memory leak for vcap_dup_rule() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 252/285] octeontx2-pf: Fix page pool cache index corruption Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 253/285] net/smc: use smc_lgr_list.lock to protect smc_lgr_list.list iterate in smcr_port_add Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 254/285] net: stmmac: fix handling of zero coalescing tx-usecs Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 255/285] net: ethernet: mvpp2_main: fix possible OOB write in mvpp2_ethtool_get_rxnfc() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 256/285] net: ethernet: mtk_eth_soc: fix possible NULL pointer dereference in mtk_hwlro_get_fdir_all() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 257/285] hsr: Fix uninit-value access in fill_frame_info() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 258/285] net: ethernet: adi: adin1110: use eth_broadcast_addr() to assign broadcast address Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 259/285] net:ethernet:adi:adin1110: Fix forwarding offload Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 260/285] net: dsa: sja1105: hide all multicast addresses from "bridge fdb show" Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 261/285] net: dsa: sja1105: propagate exact error code from sja1105_dynamic_config_poll_valid() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 262/285] net: dsa: sja1105: fix multicast forwarding working only for last added mdb entry Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 263/285] net: dsa: sja1105: serialize sja1105_port_mcast_flood() with other FDB accesses Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 264/285] net: dsa: sja1105: block FDB accesses that are concurrent with a switch reset Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 265/285] r8152: check budget for r8152_poll() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 266/285] kcm: Fix memory leak in error path of kcm_sendmsg() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 267/285] platform/mellanox: mlxbf-tmfifo: Drop the Rx packet if no more descriptors Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 268/285] platform/mellanox: mlxbf-tmfifo: Drop jumbo frames Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 269/285] platform/mellanox: mlxbf-pmc: Fix potential buffer overflows Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 270/285] platform/mellanox: mlxbf-pmc: Fix reading of unprogrammed events Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 271/285] platform/mellanox: NVSW_SN2201 should depend on ACPI Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 272/285] net/tls: do not free tls_rec on async operation in bpf_exec_tx_verdict() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 273/285] net: macb: fix sleep inside spinlock Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 274/285] veth: Update XDP feature set when bringing up device Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 275/285] ipv6: fix ip6_sock_set_addr_preferences() typo Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 276/285] tcp: Factorise sk_family-independent comparison in inet_bind2_bucket_match(_addr_any) Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 277/285] tcp: Fix bind() regression for v4-mapped-v6 wildcard address Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 278/285] tcp: Fix bind() regression for v4-mapped-v6 non-wildcard address Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 279/285] selftest: tcp: Fix address length in bind_wildcard.c Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 280/285] ixgbe: fix timestamp configuration code Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 281/285] igb: clean up in all error paths when enabling SR-IOV Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 282/285] net: renesas: rswitch: Fix unmasking irq condition Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 283/285] kcm: Fix error handling for SOCK_DGRAM in kcm_sendmsg() Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 284/285] vm: fix move_vma() memory accounting being off Greg Kroah-Hartman
2023-09-17 19:14 ` [PATCH 6.5 285/285] drm/amd/display: Fix a bug when searching for insert_above_mpcc Greg Kroah-Hartman
2023-09-17 20:48 ` [PATCH 6.5 000/285] 6.5.4-rc1 review SeongJae Park
2023-09-18 7:00 ` Bagas Sanjaya
2023-09-18 11:20 ` Ron Economos
2023-09-18 12:52 ` Jon Hunter
2023-09-18 12:56 ` Greg Kroah-Hartman
2023-09-18 14:31 ` Jon Hunter
2023-09-18 15:17 ` Guenter Roeck
2023-09-19 7:55 ` Greg Kroah-Hartman
2023-09-18 19:47 ` Pavel Machek
2023-09-18 13:04 ` Jon Hunter
2023-09-18 13:14 ` Greg Kroah-Hartman
2023-09-18 14:44 ` Jon Hunter
2023-09-19 7:54 ` Greg Kroah-Hartman
2023-09-18 15:25 ` Justin Forbes
2023-09-18 17:57 ` Naresh Kamboju
2023-09-18 18:41 ` Guenter Roeck
2023-09-18 19:13 ` Florian Fainelli
2023-09-18 22:19 ` Shuah Khan
2023-09-19 8:27 ` Conor Dooley
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=20230917191054.580662538@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=acme@redhat.com \
--cc=adrian.hunter@intel.com \
--cc=irogers@google.com \
--cc=jolsa@kernel.org \
--cc=namhyung@kernel.org \
--cc=patches@lists.linux.dev \
--cc=sashal@kernel.org \
--cc=stable@vger.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 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).