kernel: bump 6.12 to 6.12.92
Changelog: https://cdn.kernel.org/pub/linux/kernel/v6.x/ChangeLog-6.12.92 Remove upstreamed patches: - generic/backport-6.12/216-01-revert-perf-cgroup-update-metric-leader-in-evlist__e.patch[1] - generic/backport-6.12/216-02-revert-perf-tool_pmu-fix-aggregation-on-duration_tim.patch[2] - generic/backport-6.12/216-03-revert-perf-python-add-parse_events-function.patch[3] - generic/backport-6.12/216-04-revert-perf-tool_pmu-factor-tool-events-into-their-o.patch[4] - ath79/patches-6.12/301-irqchip-irq-ath79-cpu-drop-OF-init-helper.patch[5] All other patches are automatically refreshed. [1] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.92&id=546fc0fe44797e07dfb17898e019e0b543628f53 [2] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.92&id=9fdca4c4d7eb942e83c81ef0e097303730ef72a6 [3] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.92&id=94fc25a1f82aeaf7777478234ad38d90adb9d94f [4] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.92&id=709575a6ab20da63b2183ec4ac89a8e284ddbc1d [5] https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?h=v6.12.92&id=c6211c8832d542d93f4e030e6e6f79c45b219e13 Signed-off-by: Shiji Yang <yangshiji66@outlook.com> Link: https://github.com/openwrt/openwrt/pull/23621 Signed-off-by: Jonas Jelonek <jelonek.jonas@gmail.com>
This commit is contained in:
parent
94f3f9a845
commit
d0520b880d
@ -19,7 +19,7 @@ Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
|||||||
|
|
||||||
--- a/drivers/net/dsa/mt7530.c
|
--- a/drivers/net/dsa/mt7530.c
|
||||||
+++ b/drivers/net/dsa/mt7530.c
|
+++ b/drivers/net/dsa/mt7530.c
|
||||||
@@ -2588,6 +2588,11 @@ mt7531_setup_common(struct dsa_switch *d
|
@@ -2599,6 +2599,11 @@ mt7531_setup_common(struct dsa_switch *d
|
||||||
/* Allow mirroring frames received on the local port (monitor port). */
|
/* Allow mirroring frames received on the local port (monitor port). */
|
||||||
mt7530_set(priv, MT753X_AGC, LOCAL_EN);
|
mt7530_set(priv, MT753X_AGC, LOCAL_EN);
|
||||||
|
|
||||||
|
|||||||
@ -31,7 +31,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
{ /* sentinel */ },
|
{ /* sentinel */ },
|
||||||
--- a/drivers/net/dsa/mt7530.c
|
--- a/drivers/net/dsa/mt7530.c
|
||||||
+++ b/drivers/net/dsa/mt7530.c
|
+++ b/drivers/net/dsa/mt7530.c
|
||||||
@@ -1153,7 +1153,7 @@ mt753x_cpu_port_enable(struct dsa_switch
|
@@ -1160,7 +1160,7 @@ mt753x_cpu_port_enable(struct dsa_switch
|
||||||
* is affine to the inbound user port.
|
* is affine to the inbound user port.
|
||||||
*/
|
*/
|
||||||
if (priv->id == ID_MT7531 || priv->id == ID_MT7988 ||
|
if (priv->id == ID_MT7531 || priv->id == ID_MT7988 ||
|
||||||
@ -40,7 +40,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
mt7530_set(priv, MT7531_CFC, MT7531_CPU_PMAP(BIT(port)));
|
mt7530_set(priv, MT7531_CFC, MT7531_CPU_PMAP(BIT(port)));
|
||||||
|
|
||||||
/* CPU port gets connected to all user ports of
|
/* CPU port gets connected to all user ports of
|
||||||
@@ -2589,7 +2589,7 @@ mt7531_setup_common(struct dsa_switch *d
|
@@ -2600,7 +2600,7 @@ mt7531_setup_common(struct dsa_switch *d
|
||||||
mt7530_set(priv, MT753X_AGC, LOCAL_EN);
|
mt7530_set(priv, MT753X_AGC, LOCAL_EN);
|
||||||
|
|
||||||
/* Enable Special Tag for rx frames */
|
/* Enable Special Tag for rx frames */
|
||||||
@ -49,7 +49,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
mt7530_write(priv, MT753X_CPORT_SPTAG_CFG,
|
mt7530_write(priv, MT753X_CPORT_SPTAG_CFG,
|
||||||
CPORT_SW2FE_STAG_EN | CPORT_FE2SW_STAG_EN);
|
CPORT_SW2FE_STAG_EN | CPORT_FE2SW_STAG_EN);
|
||||||
|
|
||||||
@@ -3157,6 +3157,16 @@ static int mt7988_setup(struct dsa_switc
|
@@ -3168,6 +3168,16 @@ static int mt7988_setup(struct dsa_switc
|
||||||
reset_control_deassert(priv->rstc);
|
reset_control_deassert(priv->rstc);
|
||||||
usleep_range(20, 50);
|
usleep_range(20, 50);
|
||||||
|
|
||||||
@ -66,7 +66,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
/* Reset the switch PHYs */
|
/* Reset the switch PHYs */
|
||||||
mt7530_write(priv, MT7530_SYS_CTRL, SYS_CTRL_PHY_RST);
|
mt7530_write(priv, MT7530_SYS_CTRL, SYS_CTRL_PHY_RST);
|
||||||
|
|
||||||
@@ -3253,6 +3263,16 @@ const struct mt753x_info mt753x_table[]
|
@@ -3264,6 +3274,16 @@ const struct mt753x_info mt753x_table[]
|
||||||
.pcs_ops = &mt7530_pcs_ops,
|
.pcs_ops = &mt7530_pcs_ops,
|
||||||
.sw_setup = mt7988_setup,
|
.sw_setup = mt7988_setup,
|
||||||
.phy_read_c22 = mt7531_ind_c22_phy_read,
|
.phy_read_c22 = mt7531_ind_c22_phy_read,
|
||||||
|
|||||||
@ -1,23 +0,0 @@
|
|||||||
From e029f998594f151008ecbfa024e2957edd2a5189 Mon Sep 17 00:00:00 2001
|
|
||||||
From: John Crispin <john@phrozen.org>
|
|
||||||
Date: Tue, 6 Mar 2018 09:58:19 +0100
|
|
||||||
Subject: [PATCH 08/33] irqchip/irq-ath79-cpu: drop !OF init helper
|
|
||||||
|
|
||||||
Signed-off-by: John Crispin <john@phrozen.org>
|
|
||||||
---
|
|
||||||
drivers/irqchip/irq-ath79-cpu.c | 7 -------
|
|
||||||
1 file changed, 7 deletions(-)
|
|
||||||
|
|
||||||
--- a/drivers/irqchip/irq-ath79-cpu.c
|
|
||||||
+++ b/drivers/irqchip/irq-ath79-cpu.c
|
|
||||||
@@ -85,10 +85,3 @@ static int __init ar79_cpu_intc_of_init(
|
|
||||||
}
|
|
||||||
IRQCHIP_DECLARE(ar79_cpu_intc, "qca,ar7100-cpu-intc",
|
|
||||||
ar79_cpu_intc_of_init);
|
|
||||||
-
|
|
||||||
-void __init ath79_cpu_irq_init(unsigned irq_wb_chan2, unsigned irq_wb_chan3)
|
|
||||||
-{
|
|
||||||
- irq_wb_chan[2] = irq_wb_chan2;
|
|
||||||
- irq_wb_chan[3] = irq_wb_chan3;
|
|
||||||
- mips_cpu_irq_init();
|
|
||||||
-}
|
|
||||||
@ -312,7 +312,7 @@ SVN-Revision: 35130
|
|||||||
case IPV6_2292HOPOPTS:
|
case IPV6_2292HOPOPTS:
|
||||||
--- a/net/ipv6/exthdrs.c
|
--- a/net/ipv6/exthdrs.c
|
||||||
+++ b/net/ipv6/exthdrs.c
|
+++ b/net/ipv6/exthdrs.c
|
||||||
@@ -993,7 +993,7 @@ static bool ipv6_hop_jumbo(struct sk_buf
|
@@ -1004,7 +1004,7 @@ static bool ipv6_hop_jumbo(struct sk_buf
|
||||||
goto drop;
|
goto drop;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -18,7 +18,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
--- a/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||||
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
+++ b/drivers/net/ethernet/broadcom/genet/bcmgenet.c
|
||||||
@@ -2675,7 +2675,7 @@ static void bcmgenet_init_tx_ring(struct
|
@@ -2674,7 +2674,7 @@ static void bcmgenet_init_tx_ring(struct
|
||||||
|
|
||||||
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_PROD_INDEX);
|
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_PROD_INDEX);
|
||||||
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_INDEX);
|
bcmgenet_tdma_ring_writel(priv, index, 0, TDMA_CONS_INDEX);
|
||||||
@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
/* Disable rate control for now */
|
/* Disable rate control for now */
|
||||||
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
|
bcmgenet_tdma_ring_writel(priv, index, flow_period_val,
|
||||||
TDMA_FLOW_PERIOD);
|
TDMA_FLOW_PERIOD);
|
||||||
@@ -4074,8 +4074,10 @@ static int bcmgenet_probe(struct platfor
|
@@ -4073,8 +4073,10 @@ static int bcmgenet_probe(struct platfor
|
||||||
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
|
netif_set_real_num_rx_queues(priv->dev, priv->hw_params->rx_queues + 1);
|
||||||
|
|
||||||
/* Set default coalescing parameters */
|
/* Set default coalescing parameters */
|
||||||
|
|||||||
@ -37,7 +37,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
|
|||||||
|
|
||||||
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
|
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
|
||||||
{
|
{
|
||||||
@@ -2513,6 +2516,11 @@ static void reset_umac(struct bcmgenet_p
|
@@ -2512,6 +2515,11 @@ static void reset_umac(struct bcmgenet_p
|
||||||
bcmgenet_rbuf_ctrl_set(priv, 0);
|
bcmgenet_rbuf_ctrl_set(priv, 0);
|
||||||
udelay(10);
|
udelay(10);
|
||||||
|
|
||||||
|
|||||||
@ -26,7 +26,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.com>
|
|||||||
|
|
||||||
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
|
static inline void bcmgenet_writel(u32 value, void __iomem *offset)
|
||||||
{
|
{
|
||||||
@@ -3360,6 +3363,17 @@ static int bcmgenet_open(struct net_devi
|
@@ -3359,6 +3362,17 @@ static int bcmgenet_open(struct net_devi
|
||||||
|
|
||||||
bcmgenet_phy_pause_set(dev, priv->rx_pause, priv->tx_pause);
|
bcmgenet_phy_pause_set(dev, priv->rx_pause, priv->tx_pause);
|
||||||
|
|
||||||
|
|||||||
@ -1,74 +0,0 @@
|
|||||||
From 5c9ceee75a90cd5db0d38d9dbfde6659194a9b5b Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sasha Levin <sashal@kernel.org>
|
|
||||||
Date: Sun, 24 May 2026 10:29:50 -0400
|
|
||||||
Subject: Revert "perf cgroup: Update metric leader in evlist__expand_cgroup"
|
|
||||||
|
|
||||||
This reverts commit d26e31446c0fa96feca0b7701243b42447225d33.
|
|
||||||
|
|
||||||
Signed-off-by: Sasha Levin <sashal@kernel.org>
|
|
||||||
---
|
|
||||||
tools/perf/util/cgroup.c | 30 +++++++-----------------------
|
|
||||||
1 file changed, 7 insertions(+), 23 deletions(-)
|
|
||||||
|
|
||||||
--- a/tools/perf/util/cgroup.c
|
|
||||||
+++ b/tools/perf/util/cgroup.c
|
|
||||||
@@ -417,6 +417,7 @@ int evlist__expand_cgroup(struct evlist
|
|
||||||
struct rblist *metric_events, bool open_cgroup)
|
|
||||||
{
|
|
||||||
struct evlist *orig_list, *tmp_list;
|
|
||||||
+ struct evsel *pos, *evsel, *leader;
|
|
||||||
struct rblist orig_metric_events;
|
|
||||||
struct cgroup *cgrp = NULL;
|
|
||||||
struct cgroup_name *cn;
|
|
||||||
@@ -455,7 +456,6 @@ int evlist__expand_cgroup(struct evlist
|
|
||||||
goto out_err;
|
|
||||||
|
|
||||||
list_for_each_entry(cn, &cgroup_list, list) {
|
|
||||||
- struct evsel *pos;
|
|
||||||
char *name;
|
|
||||||
|
|
||||||
if (!cn->used)
|
|
||||||
@@ -471,37 +471,21 @@ int evlist__expand_cgroup(struct evlist
|
|
||||||
if (cgrp == NULL)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
- /* copy the list and set to the new cgroup. */
|
|
||||||
+ leader = NULL;
|
|
||||||
evlist__for_each_entry(orig_list, pos) {
|
|
||||||
- struct evsel *evsel = evsel__clone(/*dest=*/NULL, pos);
|
|
||||||
-
|
|
||||||
+ evsel = evsel__clone(/*dest=*/NULL, pos);
|
|
||||||
if (evsel == NULL)
|
|
||||||
goto out_err;
|
|
||||||
|
|
||||||
- /* stash the copy during the copying. */
|
|
||||||
- pos->priv = evsel;
|
|
||||||
cgroup__put(evsel->cgrp);
|
|
||||||
evsel->cgrp = cgroup__get(cgrp);
|
|
||||||
|
|
||||||
- evlist__add(tmp_list, evsel);
|
|
||||||
- }
|
|
||||||
- /* update leader information using stashed pointer to copy. */
|
|
||||||
- evlist__for_each_entry(orig_list, pos) {
|
|
||||||
- struct evsel *evsel = pos->priv;
|
|
||||||
-
|
|
||||||
- if (evsel__leader(pos))
|
|
||||||
- evsel__set_leader(evsel, evsel__leader(pos)->priv);
|
|
||||||
-
|
|
||||||
- if (pos->metric_leader)
|
|
||||||
- evsel->metric_leader = pos->metric_leader->priv;
|
|
||||||
+ if (evsel__is_group_leader(pos))
|
|
||||||
+ leader = evsel;
|
|
||||||
+ evsel__set_leader(evsel, leader);
|
|
||||||
|
|
||||||
- if (pos->first_wildcard_match)
|
|
||||||
- evsel->first_wildcard_match = pos->first_wildcard_match->priv;
|
|
||||||
+ evlist__add(tmp_list, evsel);
|
|
||||||
}
|
|
||||||
- /* the stashed copy is no longer used. */
|
|
||||||
- evlist__for_each_entry(orig_list, pos)
|
|
||||||
- pos->priv = NULL;
|
|
||||||
-
|
|
||||||
/* cgroup__new() has a refcount, release it here */
|
|
||||||
cgroup__put(cgrp);
|
|
||||||
nr_cgroups++;
|
|
||||||
@ -1,30 +0,0 @@
|
|||||||
From f126428e706b7c6eb9aa1c79ced284b195d4e392 Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sasha Levin <sashal@kernel.org>
|
|
||||||
Date: Sun, 24 May 2026 10:36:48 -0400
|
|
||||||
Subject: Revert "perf tool_pmu: Fix aggregation on duration_time"
|
|
||||||
|
|
||||||
This reverts commit 310be445ab1028315627b326516f193511cb1c97.
|
|
||||||
|
|
||||||
Signed-off-by: Sasha Levin <sashal@kernel.org>
|
|
||||||
---
|
|
||||||
tools/perf/util/tool_pmu.c | 8 +-------
|
|
||||||
1 file changed, 1 insertion(+), 7 deletions(-)
|
|
||||||
|
|
||||||
--- a/tools/perf/util/tool_pmu.c
|
|
||||||
+++ b/tools/perf/util/tool_pmu.c
|
|
||||||
@@ -392,14 +392,8 @@ int evsel__read_tool(struct evsel *evsel
|
|
||||||
delta_start *= 1000000000 / ticks_per_sec;
|
|
||||||
}
|
|
||||||
count->val = delta_start;
|
|
||||||
+ count->ena = count->run = delta_start;
|
|
||||||
count->lost = 0;
|
|
||||||
- /*
|
|
||||||
- * The values of enabled and running must make a ratio of 100%. The
|
|
||||||
- * exact values don't matter as long as they are non-zero to avoid
|
|
||||||
- * issues with evsel__count_has_error.
|
|
||||||
- */
|
|
||||||
- count->ena++;
|
|
||||||
- count->run++;
|
|
||||||
return 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
@ -1,163 +0,0 @@
|
|||||||
From 8a11c59a5aab9423777ee1ead5e66174896c7adb Mon Sep 17 00:00:00 2001
|
|
||||||
From: Sasha Levin <sashal@kernel.org>
|
|
||||||
Date: Sun, 24 May 2026 10:36:48 -0400
|
|
||||||
Subject: Revert "perf python: Add parse_events function"
|
|
||||||
|
|
||||||
This reverts commit 9cd264079fab9867dbc9fbc8a1e521996e3d7212.
|
|
||||||
|
|
||||||
Signed-off-by: Sasha Levin <sashal@kernel.org>
|
|
||||||
---
|
|
||||||
tools/perf/util/cgroup.c | 2 +-
|
|
||||||
tools/perf/util/evsel.c | 19 +++++--------
|
|
||||||
tools/perf/util/evsel.h | 2 +-
|
|
||||||
tools/perf/util/python.c | 61 ----------------------------------------
|
|
||||||
4 files changed, 9 insertions(+), 75 deletions(-)
|
|
||||||
|
|
||||||
--- a/tools/perf/util/cgroup.c
|
|
||||||
+++ b/tools/perf/util/cgroup.c
|
|
||||||
@@ -473,7 +473,7 @@ int evlist__expand_cgroup(struct evlist
|
|
||||||
|
|
||||||
leader = NULL;
|
|
||||||
evlist__for_each_entry(orig_list, pos) {
|
|
||||||
- evsel = evsel__clone(/*dest=*/NULL, pos);
|
|
||||||
+ evsel = evsel__clone(pos);
|
|
||||||
if (evsel == NULL)
|
|
||||||
goto out_err;
|
|
||||||
|
|
||||||
--- a/tools/perf/util/evsel.c
|
|
||||||
+++ b/tools/perf/util/evsel.c
|
|
||||||
@@ -332,7 +332,7 @@ static int evsel__copy_config_terms(stru
|
|
||||||
* The assumption is that @orig is not configured nor opened yet.
|
|
||||||
* So we only care about the attributes that can be set while it's parsed.
|
|
||||||
*/
|
|
||||||
-struct evsel *evsel__clone(struct evsel *dest, struct evsel *orig)
|
|
||||||
+struct evsel *evsel__clone(struct evsel *orig)
|
|
||||||
{
|
|
||||||
struct evsel *evsel;
|
|
||||||
|
|
||||||
@@ -345,11 +345,7 @@ struct evsel *evsel__clone(struct evsel
|
|
||||||
if (orig->bpf_obj)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
- if (dest)
|
|
||||||
- evsel = dest;
|
|
||||||
- else
|
|
||||||
- evsel = evsel__new(&orig->core.attr);
|
|
||||||
-
|
|
||||||
+ evsel = evsel__new(&orig->core.attr);
|
|
||||||
if (evsel == NULL)
|
|
||||||
return NULL;
|
|
||||||
|
|
||||||
@@ -399,12 +395,11 @@ struct evsel *evsel__clone(struct evsel
|
|
||||||
evsel->core.leader = orig->core.leader;
|
|
||||||
|
|
||||||
evsel->max_events = orig->max_events;
|
|
||||||
- zfree(&evsel->unit);
|
|
||||||
- if (orig->unit) {
|
|
||||||
- evsel->unit = strdup(orig->unit);
|
|
||||||
- if (evsel->unit == NULL)
|
|
||||||
- goto out_err;
|
|
||||||
- }
|
|
||||||
+ free((char *)evsel->unit);
|
|
||||||
+ evsel->unit = strdup(orig->unit);
|
|
||||||
+ if (evsel->unit == NULL)
|
|
||||||
+ goto out_err;
|
|
||||||
+
|
|
||||||
evsel->scale = orig->scale;
|
|
||||||
evsel->snapshot = orig->snapshot;
|
|
||||||
evsel->per_pkg = orig->per_pkg;
|
|
||||||
--- a/tools/perf/util/evsel.h
|
|
||||||
+++ b/tools/perf/util/evsel.h
|
|
||||||
@@ -241,7 +241,7 @@ static inline struct evsel *evsel__new(s
|
|
||||||
return evsel__new_idx(attr, 0);
|
|
||||||
}
|
|
||||||
|
|
||||||
-struct evsel *evsel__clone(struct evsel *dest, struct evsel *orig);
|
|
||||||
+struct evsel *evsel__clone(struct evsel *orig);
|
|
||||||
|
|
||||||
int copy_config_terms(struct list_head *dst, struct list_head *src);
|
|
||||||
void free_config_terms(struct list_head *config_terms);
|
|
||||||
--- a/tools/perf/util/python.c
|
|
||||||
+++ b/tools/perf/util/python.c
|
|
||||||
@@ -13,7 +13,6 @@
|
|
||||||
#include "evsel.h"
|
|
||||||
#include "event.h"
|
|
||||||
#include "print_binary.h"
|
|
||||||
-#include "strbuf.h"
|
|
||||||
#include "thread_map.h"
|
|
||||||
#include "trace-event.h"
|
|
||||||
#include "mmap.h"
|
|
||||||
@@ -1248,60 +1247,6 @@ static PyObject *pyrf__tracepoint(struct
|
|
||||||
#endif // HAVE_LIBTRACEEVENT
|
|
||||||
}
|
|
||||||
|
|
||||||
-static PyObject *pyrf_evsel__from_evsel(struct evsel *evsel)
|
|
||||||
-{
|
|
||||||
- struct pyrf_evsel *pevsel = PyObject_New(struct pyrf_evsel, &pyrf_evsel__type);
|
|
||||||
-
|
|
||||||
- if (!pevsel)
|
|
||||||
- return NULL;
|
|
||||||
-
|
|
||||||
- memset(&pevsel->evsel, 0, sizeof(pevsel->evsel));
|
|
||||||
- evsel__init(&pevsel->evsel, &evsel->core.attr, evsel->core.idx);
|
|
||||||
-
|
|
||||||
- evsel__clone(&pevsel->evsel, evsel);
|
|
||||||
- return (PyObject *)pevsel;
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
-static PyObject *pyrf_evlist__from_evlist(struct evlist *evlist)
|
|
||||||
-{
|
|
||||||
- struct pyrf_evlist *pevlist = PyObject_New(struct pyrf_evlist, &pyrf_evlist__type);
|
|
||||||
- struct evsel *pos;
|
|
||||||
-
|
|
||||||
- if (!pevlist)
|
|
||||||
- return NULL;
|
|
||||||
-
|
|
||||||
- memset(&pevlist->evlist, 0, sizeof(pevlist->evlist));
|
|
||||||
- evlist__init(&pevlist->evlist, evlist->core.all_cpus, evlist->core.threads);
|
|
||||||
- evlist__for_each_entry(evlist, pos) {
|
|
||||||
- struct pyrf_evsel *pevsel = (void *)pyrf_evsel__from_evsel(pos);
|
|
||||||
-
|
|
||||||
- evlist__add(&pevlist->evlist, &pevsel->evsel);
|
|
||||||
- }
|
|
||||||
- return (PyObject *)pevlist;
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
-static PyObject *pyrf__parse_events(PyObject *self, PyObject *args)
|
|
||||||
-{
|
|
||||||
- const char *input;
|
|
||||||
- struct evlist evlist = {};
|
|
||||||
- struct parse_events_error err;
|
|
||||||
- PyObject *result;
|
|
||||||
-
|
|
||||||
- if (!PyArg_ParseTuple(args, "s", &input))
|
|
||||||
- return NULL;
|
|
||||||
-
|
|
||||||
- parse_events_error__init(&err);
|
|
||||||
- evlist__init(&evlist, NULL, NULL);
|
|
||||||
- if (parse_events(&evlist, input, &err)) {
|
|
||||||
- parse_events_error__print(&err, input);
|
|
||||||
- PyErr_SetFromErrno(PyExc_OSError);
|
|
||||||
- return NULL;
|
|
||||||
- }
|
|
||||||
- result = pyrf_evlist__from_evlist(&evlist);
|
|
||||||
- evlist__exit(&evlist);
|
|
||||||
- return result;
|
|
||||||
-}
|
|
||||||
-
|
|
||||||
static PyMethodDef perf__methods[] = {
|
|
||||||
{
|
|
||||||
.ml_name = "tracepoint",
|
|
||||||
@@ -1309,12 +1254,6 @@ static PyMethodDef perf__methods[] = {
|
|
||||||
.ml_flags = METH_VARARGS | METH_KEYWORDS,
|
|
||||||
.ml_doc = PyDoc_STR("Get tracepoint config.")
|
|
||||||
},
|
|
||||||
- {
|
|
||||||
- .ml_name = "parse_events",
|
|
||||||
- .ml_meth = (PyCFunction) pyrf__parse_events,
|
|
||||||
- .ml_flags = METH_VARARGS,
|
|
||||||
- .ml_doc = PyDoc_STR("Parse a string of events and return an evlist.")
|
|
||||||
- },
|
|
||||||
{ .ml_name = NULL, }
|
|
||||||
};
|
|
||||||
|
|
||||||
File diff suppressed because it is too large
Load Diff
@ -304,7 +304,7 @@ Signed-off-by: Jakub Kicinski <kuba@kernel.org>
|
|||||||
{ }
|
{ }
|
||||||
--- a/drivers/net/phy/dp83tc811.c
|
--- a/drivers/net/phy/dp83tc811.c
|
||||||
+++ b/drivers/net/phy/dp83tc811.c
|
+++ b/drivers/net/phy/dp83tc811.c
|
||||||
@@ -403,7 +403,7 @@ static struct phy_driver dp83811_driver[
|
@@ -404,7 +404,7 @@ static struct phy_driver dp83811_driver[
|
||||||
};
|
};
|
||||||
module_phy_driver(dp83811_driver);
|
module_phy_driver(dp83811_driver);
|
||||||
|
|
||||||
|
|||||||
@ -1,2 +1,2 @@
|
|||||||
LINUX_VERSION-6.12 = .91
|
LINUX_VERSION-6.12 = .92
|
||||||
LINUX_KERNEL_HASH-6.12.91 = 0ff2ab9e169f9f1948557471fbb450d3018f8c5b77caf288e1a3982582597969
|
LINUX_KERNEL_HASH-6.12.92 = 0fe376b7db3cac4456b38291bee4faa7091cb8befaa6f9870314f5d1282f9e3e
|
||||||
|
|||||||
@ -132,7 +132,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Define if arch has non-standard setup. This is a _PCI_ standard
|
* Define if arch has non-standard setup. This is a _PCI_ standard
|
||||||
@@ -937,6 +940,10 @@ struct ata_port {
|
@@ -938,6 +941,10 @@ struct ata_port {
|
||||||
#ifdef CONFIG_ATA_ACPI
|
#ifdef CONFIG_ATA_ACPI
|
||||||
struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */
|
struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user