From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: stable@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
patches@lists.linux.dev,
Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>,
Hangbin Liu <liuhangbin@gmail.com>,
Jakub Kicinski <kuba@kernel.org>,
Jamal Hadi Salim <jhs@mojatatu.com>,
Paolo Abeni <pabeni@redhat.com>, Sasha Levin <sashal@kernel.org>
Subject: [PATCH 6.1 139/166] sched: add new attr TCA_EXT_WARN_MSG to report tc extact message
Date: Mon, 19 Jun 2023 12:30:16 +0200 [thread overview]
Message-ID: <20230619102201.503152562@linuxfoundation.org> (raw)
In-Reply-To: <20230619102154.568541872@linuxfoundation.org>
From: Hangbin Liu <liuhangbin@gmail.com>
[ Upstream commit 0349b8779cc949ad9e6aced32672ee48cf79b497 ]
We will report extack message if there is an error via netlink_ack(). But
if the rule is not to be exclusively executed by the hardware, extack is not
passed along and offloading failures don't get logged.
In commit 81c7288b170a ("sched: cls: enable verbose logging") Marcelo
made cls could log verbose info for offloading failures, which helps
improving Open vSwitch debuggability when using flower offloading.
It would also be helpful if userspace monitor tools, like "tc monitor",
could log this kind of message, as it doesn't require vswitchd log level
adjusment. Let's add a new tc attributes to report the extack message so
the monitor program could receive the failures. e.g.
# tc monitor
added chain dev enp3s0f1np1 parent ffff: chain 0
added filter dev enp3s0f1np1 ingress protocol all pref 49152 flower chain 0 handle 0x1
ct_state +trk+new
not_in_hw
action order 1: gact action drop
random type none pass val 0
index 1 ref 1 bind 1
Warning: mlx5_core: matching on ct_state +new isn't supported.
In this patch I only report the extack message on add/del operations.
It doesn't look like we need to report the extack message on get/dump
operations.
Note this message not only reporte to multicast groups, it could also
be reported unicast, which may affect the current usersapce tool's behaivor.
Suggested-by: Marcelo Ricardo Leitner <marcelo.leitner@gmail.com>
Signed-off-by: Hangbin Liu <liuhangbin@gmail.com>
Acked-by: Jakub Kicinski <kuba@kernel.org>
Acked-by: Jamal Hadi Salim <jhs@mojatatu.com>
Link: https://lore.kernel.org/r/20230113034353.2766735-1-liuhangbin@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Stable-dep-of: 84ad0af0bccd ("net/sched: qdisc_destroy() old ingress and clsact Qdiscs before grafting")
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
include/uapi/linux/rtnetlink.h | 1 +
net/sched/act_api.c | 15 +++++---
net/sched/cls_api.c | 62 +++++++++++++++++++++-------------
net/sched/sch_api.c | 55 ++++++++++++++++++------------
4 files changed, 84 insertions(+), 49 deletions(-)
diff --git a/include/uapi/linux/rtnetlink.h b/include/uapi/linux/rtnetlink.h
index eb2747d58a813..25a0af57dd5ed 100644
--- a/include/uapi/linux/rtnetlink.h
+++ b/include/uapi/linux/rtnetlink.h
@@ -635,6 +635,7 @@ enum {
TCA_INGRESS_BLOCK,
TCA_EGRESS_BLOCK,
TCA_DUMP_FLAGS,
+ TCA_EXT_WARN_MSG,
__TCA_MAX
};
diff --git a/net/sched/act_api.c b/net/sched/act_api.c
index 9b31a10cc6399..cc6628a42e839 100644
--- a/net/sched/act_api.c
+++ b/net/sched/act_api.c
@@ -1581,7 +1581,7 @@ int tcf_action_copy_stats(struct sk_buff *skb, struct tc_action *p,
static int tca_get_fill(struct sk_buff *skb, struct tc_action *actions[],
u32 portid, u32 seq, u16 flags, int event, int bind,
- int ref)
+ int ref, struct netlink_ext_ack *extack)
{
struct tcamsg *t;
struct nlmsghdr *nlh;
@@ -1605,7 +1605,12 @@ static int tca_get_fill(struct sk_buff *skb, struct tc_action *actions[],
nla_nest_end(skb, nest);
+ if (extack && extack->_msg &&
+ nla_put_string(skb, TCA_EXT_WARN_MSG, extack->_msg))
+ goto out_nlmsg_trim;
+
nlh->nlmsg_len = skb_tail_pointer(skb) - b;
+
return skb->len;
out_nlmsg_trim:
@@ -1624,7 +1629,7 @@ tcf_get_notify(struct net *net, u32 portid, struct nlmsghdr *n,
if (!skb)
return -ENOBUFS;
if (tca_get_fill(skb, actions, portid, n->nlmsg_seq, 0, event,
- 0, 1) <= 0) {
+ 0, 1, NULL) <= 0) {
NL_SET_ERR_MSG(extack, "Failed to fill netlink attributes while adding TC action");
kfree_skb(skb);
return -EINVAL;
@@ -1798,7 +1803,7 @@ tcf_reoffload_del_notify(struct net *net, struct tc_action *action)
if (!skb)
return -ENOBUFS;
- if (tca_get_fill(skb, actions, 0, 0, 0, RTM_DELACTION, 0, 1) <= 0) {
+ if (tca_get_fill(skb, actions, 0, 0, 0, RTM_DELACTION, 0, 1, NULL) <= 0) {
kfree_skb(skb);
return -EINVAL;
}
@@ -1885,7 +1890,7 @@ tcf_del_notify(struct net *net, struct nlmsghdr *n, struct tc_action *actions[],
return -ENOBUFS;
if (tca_get_fill(skb, actions, portid, n->nlmsg_seq, 0, RTM_DELACTION,
- 0, 2) <= 0) {
+ 0, 2, extack) <= 0) {
NL_SET_ERR_MSG(extack, "Failed to fill netlink TC action attributes");
kfree_skb(skb);
return -EINVAL;
@@ -1964,7 +1969,7 @@ tcf_add_notify(struct net *net, struct nlmsghdr *n, struct tc_action *actions[],
return -ENOBUFS;
if (tca_get_fill(skb, actions, portid, n->nlmsg_seq, n->nlmsg_flags,
- RTM_NEWACTION, 0, 0) <= 0) {
+ RTM_NEWACTION, 0, 0, extack) <= 0) {
NL_SET_ERR_MSG(extack, "Failed to fill netlink attributes while adding TC action");
kfree_skb(skb);
return -EINVAL;
diff --git a/net/sched/cls_api.c b/net/sched/cls_api.c
index abaf75300497d..0dbfc37d97991 100644
--- a/net/sched/cls_api.c
+++ b/net/sched/cls_api.c
@@ -485,7 +485,8 @@ static struct tcf_chain *tcf_chain_lookup_rcu(const struct tcf_block *block,
#endif
static int tc_chain_notify(struct tcf_chain *chain, struct sk_buff *oskb,
- u32 seq, u16 flags, int event, bool unicast);
+ u32 seq, u16 flags, int event, bool unicast,
+ struct netlink_ext_ack *extack);
static struct tcf_chain *__tcf_chain_get(struct tcf_block *block,
u32 chain_index, bool create,
@@ -518,7 +519,7 @@ static struct tcf_chain *__tcf_chain_get(struct tcf_block *block,
*/
if (is_first_reference && !by_act)
tc_chain_notify(chain, NULL, 0, NLM_F_CREATE | NLM_F_EXCL,
- RTM_NEWCHAIN, false);
+ RTM_NEWCHAIN, false, NULL);
return chain;
@@ -1815,7 +1816,8 @@ static int tcf_fill_node(struct net *net, struct sk_buff *skb,
struct tcf_proto *tp, struct tcf_block *block,
struct Qdisc *q, u32 parent, void *fh,
u32 portid, u32 seq, u16 flags, int event,
- bool terse_dump, bool rtnl_held)
+ bool terse_dump, bool rtnl_held,
+ struct netlink_ext_ack *extack)
{
struct tcmsg *tcm;
struct nlmsghdr *nlh;
@@ -1855,7 +1857,13 @@ static int tcf_fill_node(struct net *net, struct sk_buff *skb,
tp->ops->dump(net, tp, fh, skb, tcm, rtnl_held) < 0)
goto nla_put_failure;
}
+
+ if (extack && extack->_msg &&
+ nla_put_string(skb, TCA_EXT_WARN_MSG, extack->_msg))
+ goto nla_put_failure;
+
nlh->nlmsg_len = skb_tail_pointer(skb) - b;
+
return skb->len;
out_nlmsg_trim:
@@ -1869,7 +1877,7 @@ static int tfilter_notify(struct net *net, struct sk_buff *oskb,
struct nlmsghdr *n, struct tcf_proto *tp,
struct tcf_block *block, struct Qdisc *q,
u32 parent, void *fh, int event, bool unicast,
- bool rtnl_held)
+ bool rtnl_held, struct netlink_ext_ack *extack)
{
struct sk_buff *skb;
u32 portid = oskb ? NETLINK_CB(oskb).portid : 0;
@@ -1881,7 +1889,7 @@ static int tfilter_notify(struct net *net, struct sk_buff *oskb,
if (tcf_fill_node(net, skb, tp, block, q, parent, fh, portid,
n->nlmsg_seq, n->nlmsg_flags, event,
- false, rtnl_held) <= 0) {
+ false, rtnl_held, extack) <= 0) {
kfree_skb(skb);
return -EINVAL;
}
@@ -1910,7 +1918,7 @@ static int tfilter_del_notify(struct net *net, struct sk_buff *oskb,
if (tcf_fill_node(net, skb, tp, block, q, parent, fh, portid,
n->nlmsg_seq, n->nlmsg_flags, RTM_DELTFILTER,
- false, rtnl_held) <= 0) {
+ false, rtnl_held, extack) <= 0) {
NL_SET_ERR_MSG(extack, "Failed to build del event notification");
kfree_skb(skb);
return -EINVAL;
@@ -1936,14 +1944,15 @@ static int tfilter_del_notify(struct net *net, struct sk_buff *oskb,
static void tfilter_notify_chain(struct net *net, struct sk_buff *oskb,
struct tcf_block *block, struct Qdisc *q,
u32 parent, struct nlmsghdr *n,
- struct tcf_chain *chain, int event)
+ struct tcf_chain *chain, int event,
+ struct netlink_ext_ack *extack)
{
struct tcf_proto *tp;
for (tp = tcf_get_next_proto(chain, NULL);
tp; tp = tcf_get_next_proto(chain, tp))
- tfilter_notify(net, oskb, n, tp, block,
- q, parent, NULL, event, false, true);
+ tfilter_notify(net, oskb, n, tp, block, q, parent, NULL,
+ event, false, true, extack);
}
static void tfilter_put(struct tcf_proto *tp, void *fh)
@@ -2147,7 +2156,7 @@ static int tc_new_tfilter(struct sk_buff *skb, struct nlmsghdr *n,
flags, extack);
if (err == 0) {
tfilter_notify(net, skb, n, tp, block, q, parent, fh,
- RTM_NEWTFILTER, false, rtnl_held);
+ RTM_NEWTFILTER, false, rtnl_held, extack);
tfilter_put(tp, fh);
/* q pointer is NULL for shared blocks */
if (q)
@@ -2275,7 +2284,7 @@ static int tc_del_tfilter(struct sk_buff *skb, struct nlmsghdr *n,
if (prio == 0) {
tfilter_notify_chain(net, skb, block, q, parent, n,
- chain, RTM_DELTFILTER);
+ chain, RTM_DELTFILTER, extack);
tcf_chain_flush(chain, rtnl_held);
err = 0;
goto errout;
@@ -2299,7 +2308,7 @@ static int tc_del_tfilter(struct sk_buff *skb, struct nlmsghdr *n,
tcf_proto_put(tp, rtnl_held, NULL);
tfilter_notify(net, skb, n, tp, block, q, parent, fh,
- RTM_DELTFILTER, false, rtnl_held);
+ RTM_DELTFILTER, false, rtnl_held, extack);
err = 0;
goto errout;
}
@@ -2443,7 +2452,7 @@ static int tc_get_tfilter(struct sk_buff *skb, struct nlmsghdr *n,
err = -ENOENT;
} else {
err = tfilter_notify(net, skb, n, tp, block, q, parent,
- fh, RTM_NEWTFILTER, true, rtnl_held);
+ fh, RTM_NEWTFILTER, true, rtnl_held, NULL);
if (err < 0)
NL_SET_ERR_MSG(extack, "Failed to send filter notify message");
}
@@ -2481,7 +2490,7 @@ static int tcf_node_dump(struct tcf_proto *tp, void *n, struct tcf_walker *arg)
return tcf_fill_node(net, a->skb, tp, a->block, a->q, a->parent,
n, NETLINK_CB(a->cb->skb).portid,
a->cb->nlh->nlmsg_seq, NLM_F_MULTI,
- RTM_NEWTFILTER, a->terse_dump, true);
+ RTM_NEWTFILTER, a->terse_dump, true, NULL);
}
static bool tcf_chain_dump(struct tcf_chain *chain, struct Qdisc *q, u32 parent,
@@ -2515,7 +2524,7 @@ static bool tcf_chain_dump(struct tcf_chain *chain, struct Qdisc *q, u32 parent,
if (tcf_fill_node(net, skb, tp, block, q, parent, NULL,
NETLINK_CB(cb->skb).portid,
cb->nlh->nlmsg_seq, NLM_F_MULTI,
- RTM_NEWTFILTER, false, true) <= 0)
+ RTM_NEWTFILTER, false, true, NULL) <= 0)
goto errout;
cb->args[1] = 1;
}
@@ -2658,7 +2667,8 @@ static int tc_chain_fill_node(const struct tcf_proto_ops *tmplt_ops,
void *tmplt_priv, u32 chain_index,
struct net *net, struct sk_buff *skb,
struct tcf_block *block,
- u32 portid, u32 seq, u16 flags, int event)
+ u32 portid, u32 seq, u16 flags, int event,
+ struct netlink_ext_ack *extack)
{
unsigned char *b = skb_tail_pointer(skb);
const struct tcf_proto_ops *ops;
@@ -2695,7 +2705,12 @@ static int tc_chain_fill_node(const struct tcf_proto_ops *tmplt_ops,
goto nla_put_failure;
}
+ if (extack && extack->_msg &&
+ nla_put_string(skb, TCA_EXT_WARN_MSG, extack->_msg))
+ goto out_nlmsg_trim;
+
nlh->nlmsg_len = skb_tail_pointer(skb) - b;
+
return skb->len;
out_nlmsg_trim:
@@ -2705,7 +2720,8 @@ static int tc_chain_fill_node(const struct tcf_proto_ops *tmplt_ops,
}
static int tc_chain_notify(struct tcf_chain *chain, struct sk_buff *oskb,
- u32 seq, u16 flags, int event, bool unicast)
+ u32 seq, u16 flags, int event, bool unicast,
+ struct netlink_ext_ack *extack)
{
u32 portid = oskb ? NETLINK_CB(oskb).portid : 0;
struct tcf_block *block = chain->block;
@@ -2719,7 +2735,7 @@ static int tc_chain_notify(struct tcf_chain *chain, struct sk_buff *oskb,
if (tc_chain_fill_node(chain->tmplt_ops, chain->tmplt_priv,
chain->index, net, skb, block, portid,
- seq, flags, event) <= 0) {
+ seq, flags, event, extack) <= 0) {
kfree_skb(skb);
return -EINVAL;
}
@@ -2747,7 +2763,7 @@ static int tc_chain_notify_delete(const struct tcf_proto_ops *tmplt_ops,
return -ENOBUFS;
if (tc_chain_fill_node(tmplt_ops, tmplt_priv, chain_index, net, skb,
- block, portid, seq, flags, RTM_DELCHAIN) <= 0) {
+ block, portid, seq, flags, RTM_DELCHAIN, NULL) <= 0) {
kfree_skb(skb);
return -EINVAL;
}
@@ -2900,11 +2916,11 @@ static int tc_ctl_chain(struct sk_buff *skb, struct nlmsghdr *n,
}
tc_chain_notify(chain, NULL, 0, NLM_F_CREATE | NLM_F_EXCL,
- RTM_NEWCHAIN, false);
+ RTM_NEWCHAIN, false, extack);
break;
case RTM_DELCHAIN:
tfilter_notify_chain(net, skb, block, q, parent, n,
- chain, RTM_DELTFILTER);
+ chain, RTM_DELTFILTER, extack);
/* Flush the chain first as the user requested chain removal. */
tcf_chain_flush(chain, true);
/* In case the chain was successfully deleted, put a reference
@@ -2914,7 +2930,7 @@ static int tc_ctl_chain(struct sk_buff *skb, struct nlmsghdr *n,
break;
case RTM_GETCHAIN:
err = tc_chain_notify(chain, skb, n->nlmsg_seq,
- n->nlmsg_flags, n->nlmsg_type, true);
+ n->nlmsg_flags, n->nlmsg_type, true, extack);
if (err < 0)
NL_SET_ERR_MSG(extack, "Failed to send chain notify message");
break;
@@ -3014,7 +3030,7 @@ static int tc_dump_chain(struct sk_buff *skb, struct netlink_callback *cb)
chain->index, net, skb, block,
NETLINK_CB(cb->skb).portid,
cb->nlh->nlmsg_seq, NLM_F_MULTI,
- RTM_NEWCHAIN);
+ RTM_NEWCHAIN, NULL);
if (err <= 0)
break;
index++;
diff --git a/net/sched/sch_api.c b/net/sched/sch_api.c
index 6fb345ec22641..3907483dae624 100644
--- a/net/sched/sch_api.c
+++ b/net/sched/sch_api.c
@@ -907,7 +907,8 @@ static void qdisc_offload_graft_root(struct net_device *dev,
}
static int tc_fill_qdisc(struct sk_buff *skb, struct Qdisc *q, u32 clid,
- u32 portid, u32 seq, u16 flags, int event)
+ u32 portid, u32 seq, u16 flags, int event,
+ struct netlink_ext_ack *extack)
{
struct gnet_stats_basic_sync __percpu *cpu_bstats = NULL;
struct gnet_stats_queue __percpu *cpu_qstats = NULL;
@@ -975,7 +976,12 @@ static int tc_fill_qdisc(struct sk_buff *skb, struct Qdisc *q, u32 clid,
if (gnet_stats_finish_copy(&d) < 0)
goto nla_put_failure;
+ if (extack && extack->_msg &&
+ nla_put_string(skb, TCA_EXT_WARN_MSG, extack->_msg))
+ goto out_nlmsg_trim;
+
nlh->nlmsg_len = skb_tail_pointer(skb) - b;
+
return skb->len;
out_nlmsg_trim:
@@ -996,7 +1002,8 @@ static bool tc_qdisc_dump_ignore(struct Qdisc *q, bool dump_invisible)
static int qdisc_notify(struct net *net, struct sk_buff *oskb,
struct nlmsghdr *n, u32 clid,
- struct Qdisc *old, struct Qdisc *new)
+ struct Qdisc *old, struct Qdisc *new,
+ struct netlink_ext_ack *extack)
{
struct sk_buff *skb;
u32 portid = oskb ? NETLINK_CB(oskb).portid : 0;
@@ -1007,12 +1014,12 @@ static int qdisc_notify(struct net *net, struct sk_buff *oskb,
if (old && !tc_qdisc_dump_ignore(old, false)) {
if (tc_fill_qdisc(skb, old, clid, portid, n->nlmsg_seq,
- 0, RTM_DELQDISC) < 0)
+ 0, RTM_DELQDISC, extack) < 0)
goto err_out;
}
if (new && !tc_qdisc_dump_ignore(new, false)) {
if (tc_fill_qdisc(skb, new, clid, portid, n->nlmsg_seq,
- old ? NLM_F_REPLACE : 0, RTM_NEWQDISC) < 0)
+ old ? NLM_F_REPLACE : 0, RTM_NEWQDISC, extack) < 0)
goto err_out;
}
@@ -1027,10 +1034,11 @@ static int qdisc_notify(struct net *net, struct sk_buff *oskb,
static void notify_and_destroy(struct net *net, struct sk_buff *skb,
struct nlmsghdr *n, u32 clid,
- struct Qdisc *old, struct Qdisc *new)
+ struct Qdisc *old, struct Qdisc *new,
+ struct netlink_ext_ack *extack)
{
if (new || old)
- qdisc_notify(net, skb, n, clid, old, new);
+ qdisc_notify(net, skb, n, clid, old, new, extack);
if (old)
qdisc_put(old);
@@ -1110,12 +1118,12 @@ static int qdisc_graft(struct net_device *dev, struct Qdisc *parent,
qdisc_refcount_inc(new);
rcu_assign_pointer(dev->qdisc, new ? : &noop_qdisc);
- notify_and_destroy(net, skb, n, classid, old, new);
+ notify_and_destroy(net, skb, n, classid, old, new, extack);
if (new && new->ops->attach)
new->ops->attach(new);
} else {
- notify_and_destroy(net, skb, n, classid, old, new);
+ notify_and_destroy(net, skb, n, classid, old, new, extack);
}
if (dev->flags & IFF_UP)
@@ -1146,7 +1154,7 @@ static int qdisc_graft(struct net_device *dev, struct Qdisc *parent,
err = cops->graft(parent, cl, new, &old, extack);
if (err)
return err;
- notify_and_destroy(net, skb, n, classid, old, new);
+ notify_and_destroy(net, skb, n, classid, old, new, extack);
}
return 0;
}
@@ -1519,7 +1527,7 @@ static int tc_get_qdisc(struct sk_buff *skb, struct nlmsghdr *n,
if (err != 0)
return err;
} else {
- qdisc_notify(net, skb, n, clid, NULL, q);
+ qdisc_notify(net, skb, n, clid, NULL, q, NULL);
}
return 0;
}
@@ -1667,7 +1675,7 @@ static int tc_modify_qdisc(struct sk_buff *skb, struct nlmsghdr *n,
}
err = qdisc_change(q, tca, extack);
if (err == 0)
- qdisc_notify(net, skb, n, clid, NULL, q);
+ qdisc_notify(net, skb, n, clid, NULL, q, extack);
return err;
create_n_graft:
@@ -1734,7 +1742,7 @@ static int tc_dump_qdisc_root(struct Qdisc *root, struct sk_buff *skb,
if (!tc_qdisc_dump_ignore(q, dump_invisible) &&
tc_fill_qdisc(skb, q, q->parent, NETLINK_CB(cb->skb).portid,
cb->nlh->nlmsg_seq, NLM_F_MULTI,
- RTM_NEWQDISC) <= 0)
+ RTM_NEWQDISC, NULL) <= 0)
goto done;
q_idx++;
}
@@ -1756,7 +1764,7 @@ static int tc_dump_qdisc_root(struct Qdisc *root, struct sk_buff *skb,
if (!tc_qdisc_dump_ignore(q, dump_invisible) &&
tc_fill_qdisc(skb, q, q->parent, NETLINK_CB(cb->skb).portid,
cb->nlh->nlmsg_seq, NLM_F_MULTI,
- RTM_NEWQDISC) <= 0)
+ RTM_NEWQDISC, NULL) <= 0)
goto done;
q_idx++;
}
@@ -1829,8 +1837,8 @@ static int tc_dump_qdisc(struct sk_buff *skb, struct netlink_callback *cb)
************************************************/
static int tc_fill_tclass(struct sk_buff *skb, struct Qdisc *q,
- unsigned long cl,
- u32 portid, u32 seq, u16 flags, int event)
+ unsigned long cl, u32 portid, u32 seq, u16 flags,
+ int event, struct netlink_ext_ack *extack)
{
struct tcmsg *tcm;
struct nlmsghdr *nlh;
@@ -1865,7 +1873,12 @@ static int tc_fill_tclass(struct sk_buff *skb, struct Qdisc *q,
if (gnet_stats_finish_copy(&d) < 0)
goto nla_put_failure;
+ if (extack && extack->_msg &&
+ nla_put_string(skb, TCA_EXT_WARN_MSG, extack->_msg))
+ goto out_nlmsg_trim;
+
nlh->nlmsg_len = skb_tail_pointer(skb) - b;
+
return skb->len;
out_nlmsg_trim:
@@ -1876,7 +1889,7 @@ static int tc_fill_tclass(struct sk_buff *skb, struct Qdisc *q,
static int tclass_notify(struct net *net, struct sk_buff *oskb,
struct nlmsghdr *n, struct Qdisc *q,
- unsigned long cl, int event)
+ unsigned long cl, int event, struct netlink_ext_ack *extack)
{
struct sk_buff *skb;
u32 portid = oskb ? NETLINK_CB(oskb).portid : 0;
@@ -1885,7 +1898,7 @@ static int tclass_notify(struct net *net, struct sk_buff *oskb,
if (!skb)
return -ENOBUFS;
- if (tc_fill_tclass(skb, q, cl, portid, n->nlmsg_seq, 0, event) < 0) {
+ if (tc_fill_tclass(skb, q, cl, portid, n->nlmsg_seq, 0, event, extack) < 0) {
kfree_skb(skb);
return -EINVAL;
}
@@ -1912,7 +1925,7 @@ static int tclass_del_notify(struct net *net,
return -ENOBUFS;
if (tc_fill_tclass(skb, q, cl, portid, n->nlmsg_seq, 0,
- RTM_DELTCLASS) < 0) {
+ RTM_DELTCLASS, extack) < 0) {
kfree_skb(skb);
return -EINVAL;
}
@@ -2119,7 +2132,7 @@ static int tc_ctl_tclass(struct sk_buff *skb, struct nlmsghdr *n,
tc_bind_tclass(q, portid, clid, 0);
goto out;
case RTM_GETTCLASS:
- err = tclass_notify(net, skb, n, q, cl, RTM_NEWTCLASS);
+ err = tclass_notify(net, skb, n, q, cl, RTM_NEWTCLASS, extack);
goto out;
default:
err = -EINVAL;
@@ -2137,7 +2150,7 @@ static int tc_ctl_tclass(struct sk_buff *skb, struct nlmsghdr *n,
if (cops->change)
err = cops->change(q, clid, portid, tca, &new_cl, extack);
if (err == 0) {
- tclass_notify(net, skb, n, q, new_cl, RTM_NEWTCLASS);
+ tclass_notify(net, skb, n, q, new_cl, RTM_NEWTCLASS, extack);
/* We just create a new class, need to do reverse binding. */
if (cl != new_cl)
tc_bind_tclass(q, portid, clid, new_cl);
@@ -2159,7 +2172,7 @@ static int qdisc_class_dump(struct Qdisc *q, unsigned long cl,
return tc_fill_tclass(a->skb, q, cl, NETLINK_CB(a->cb->skb).portid,
a->cb->nlh->nlmsg_seq, NLM_F_MULTI,
- RTM_NEWTCLASS);
+ RTM_NEWTCLASS, NULL);
}
static int tc_dump_tclass_qdisc(struct Qdisc *q, struct sk_buff *skb,
--
2.39.2
next prev parent reply other threads:[~2023-06-19 10:51 UTC|newest]
Thread overview: 179+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-06-19 10:27 [PATCH 6.1 000/166] 6.1.35-rc1 review Greg Kroah-Hartman
2023-06-19 10:27 ` [PATCH 6.1 001/166] x86/head/64: Switch to KERNEL_CS as soon as new GDT is installed Greg Kroah-Hartman
2023-06-19 10:27 ` [PATCH 6.1 002/166] test_firmware: Use kstrtobool() instead of strtobool() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 003/166] test_firmware: prevent race conditions by a correct implementation of locking Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 004/166] cgroup: bpf: use cgroup_lock()/cgroup_unlock() wrappers Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 005/166] cgroup: always put cset in cgroup_css_set_put_fork Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 006/166] cgroup: fix missing cpus_read_{lock,unlock}() in cgroup_transfer_tasks() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 007/166] qcom: llcc/edac: Fix the base address used for accessing LLCC banks Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 008/166] EDAC/qcom: Get rid of hardcoded register offsets Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 009/166] ksmbd: validate smb request protocol id Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 010/166] of: overlay: Fix missing of_node_put() in error case of init_overlay_changeset() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 011/166] power: supply: ab8500: Fix external_power_changed race Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 012/166] power: supply: sc27xx: " Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 013/166] power: supply: bq27xxx: Use mod_delayed_work() instead of cancel() + schedule() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 014/166] ARM: dts: vexpress: add missing cache properties Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 015/166] tools: gpio: fix debounce_period_us output of lsgpio Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 016/166] selftests: gpio: gpio-sim: Fix BUG: test FAILED due to recent change Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 017/166] power: supply: Ratelimit no data debug output Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 018/166] PCI/DPC: Quirk PIO log size for Intel Ice Lake Root Ports Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 019/166] platform/x86: asus-wmi: Ignore WMI events with codes 0x7B, 0xC0 Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 020/166] regulator: Fix error checking for debugfs_create_dir Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 021/166] irqchip/gic-v3: Disable pseudo NMIs on Mediatek devices w/ firmware issues Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 022/166] irqchip/meson-gpio: Mark OF related data as maybe unused Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 023/166] power: supply: Fix logic checking if system is running from battery Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 024/166] drm: panel-orientation-quirks: Change Airs quirk to support Air Plus Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 025/166] btrfs: scrub: try harder to mark RAID56 block groups read-only Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 026/166] btrfs: handle memory allocation failure in btrfs_csum_one_bio Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 027/166] ASoC: soc-pcm: test if a BE can be prepared Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 028/166] ASoC: Intel: avs: Account for UID of ACPI device Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 029/166] ASoC: Intel: avs: Add missing checks on FE startup Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 030/166] parisc: Improve cache flushing for PCXL in arch_sync_dma_for_cpu() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 031/166] parisc: Flush gatt writes and adjust gatt mask in parisc_agp_mask_memory() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 032/166] MIPS: unhide PATA_PLATFORM Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 033/166] MIPS: Restore Au1300 support Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 034/166] MIPS: Alchemy: fix dbdma2 Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 035/166] mips: Move initrd_start check after initrd address sanitisation Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 036/166] ASoC: cs35l41: Fix default regmap values for some registers Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 037/166] ASoC: dwc: move DMA init to snd_soc_dai_driver probe() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 038/166] xen/blkfront: Only check REQ_FUA for writes Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 039/166] drm:amd:amdgpu: Fix missing buffer object unlock in failure path Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 040/166] io_uring: unlock sqd->lock before sq thread release CPU Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 041/166] NVMe: Add MAXIO 1602 to bogus nid list Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 042/166] irqchip/gic: Correctly validate OF quirk descriptors Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 043/166] wifi: cfg80211: fix locking in regulatory disconnect Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 044/166] wifi: cfg80211: fix double lock bug in reg_wdev_chan_valid() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 045/166] epoll: ep_autoremove_wake_function should use list_del_init_careful Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 046/166] ocfs2: fix use-after-free when unmounting read-only filesystem Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 047/166] ocfs2: check new file size on fallocate call Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 048/166] zswap: do not shrink if cgroup may not zswap Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 049/166] nios2: dts: Fix tse_mac "max-frame-size" property Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 050/166] nilfs2: fix incomplete buffer cleanup in nilfs_btnode_abort_change_key() Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 051/166] nilfs2: fix possible out-of-bounds segment allocation in resize ioctl Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 052/166] nilfs2: reject devices with insufficient block count Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 053/166] LoongArch: Fix perf event id calculation Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 054/166] io_uring/net: save msghdr->msg_control for retries Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 055/166] kexec: support purgatories with .text.hot sections Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 056/166] x86/purgatory: remove PGO flags Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 057/166] riscv/purgatory: " Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 058/166] powerpc/purgatory: " Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 059/166] btrfs: do not ASSERT() on duplicated global roots Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 060/166] btrfs: fix iomap_begin length for nocow writes Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 061/166] btrfs: can_nocow_file_extent should pass down args->strict from callers Greg Kroah-Hartman
2023-06-19 10:28 ` [PATCH 6.1 062/166] ALSA: usb-audio: Fix broken resume due to UAC3 power state Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 063/166] ALSA: usb-audio: Add quirk flag for HEM devices to enable native DSD playback Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 064/166] dm thin metadata: check fail_io before using data_sm Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 065/166] dm thin: fix issue_discard to pass GFP_NOIO to __blkdev_issue_discard Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 066/166] net: ethernet: stmicro: stmmac: fix possible memory leak in __stmmac_open Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 067/166] nouveau: fix client work fence deletion race Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 068/166] RDMA/uverbs: Restrict usage of privileged QKEYs Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 069/166] drm/amdgpu: vcn_4_0 set instance 0 init sched score to 1 Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 070/166] net: usb: qmi_wwan: add support for Compal RXM-G1 Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 071/166] drm/amd/display: edp do not add non-edid timings Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 072/166] drm/amd: Make sure image is written to trigger VBIOS image update flow Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 073/166] drm/amd: Tighten permissions on VBIOS flashing attributes Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 074/166] drm/amd/pm: workaround for compute workload type on some skus Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 075/166] drm/amdgpu: add missing radeon secondary PCI ID Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 076/166] ALSA: hda/realtek: Add a quirk for Compaq N14JP6 Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 077/166] thunderbolt: Do not touch CL state configuration during discovery Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 078/166] thunderbolt: dma_test: Use correct value for absent rings when creating paths Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 079/166] thunderbolt: Mask ring interrupt on Intel hardware as well Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 080/166] clk: pxa: fix NULL pointer dereference in pxa3xx_clk_update_accr Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 081/166] USB: serial: option: add Quectel EM061KGL series Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 082/166] serial: lantiq: add missing interrupt ack Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 083/166] usb: typec: ucsi: Fix command cancellation Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 084/166] usb: typec: Fix fast_role_swap_current show function Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 085/166] usb: gadget: udc: core: Offload usb_udc_vbus_handler processing Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 086/166] usb: gadget: udc: core: Prevent soft_connect_store() race Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 087/166] USB: dwc3: qcom: fix NULL-deref on suspend Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 088/166] USB: dwc3: fix use-after-free on core driver unbind Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 089/166] usb: dwc3: gadget: Reset num TRBs before giving back the request Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 090/166] RDMA/rtrs: Fix the last iu->buf leak in err path Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 091/166] RDMA/rtrs: Fix rxe_dealloc_pd warning Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 092/166] RDMA/rxe: Fix packet length checks Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 093/166] RDMA/rxe: Fix ref count error in check_rkey() Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 094/166] spi: cadence-quadspi: Add missing check for dma_set_mask Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 095/166] spi: fsl-dspi: avoid SCK glitches with continuous transfers Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 096/166] netfilter: nf_tables: integrate pipapo into commit protocol Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 097/166] netfilter: nfnetlink: skip error delivery on batch in case of ENOMEM Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 098/166] ice: Fix XDP memory leak when NIC is brought up and down Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 099/166] netfilter: nf_tables: incorrect error path handling with NFT_MSG_NEWRULE Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 100/166] net: enetc: correct the indexes of highest and 2nd highest TCs Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 101/166] ping6: Fix send to link-local addresses with VRF Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 102/166] igb: Fix extts capture value format for 82580/i354/i350 Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 103/166] net/sched: simplify tcf_pedit_act Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 104/166] net/sched: act_pedit: remove extra check for key type Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 105/166] net/sched: act_pedit: Parse L3 Header for L4 offset Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 106/166] octeontx2-af: Fix promiscuous mode Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 107/166] net/sched: cls_u32: Fix reference counter leak leading to overflow Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 108/166] wifi: mac80211: fix link activation settings order Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 109/166] wifi: cfg80211: fix link del callback to call correct handler Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 110/166] wifi: mac80211: take lock before setting vif links Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 111/166] RDMA/rxe: Removed unused name from rxe_task struct Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 112/166] RDMA/rxe: Fix the use-before-initialization error of resp_pkts Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 113/166] iavf: remove mask from iavf_irq_enable_queues() Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 114/166] octeontx2-af: fixed resource availability check Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 115/166] octeontx2-af: fix lbk link credits on cn10k Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 116/166] RDMA/mlx5: Initiate dropless RQ for RAW Ethernet functions Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 117/166] RDMA/mlx5: Create an indirect flow table for steering anchor Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 118/166] RDMA/cma: Always set static rate to 0 for RoCE Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 119/166] IB/uverbs: Fix to consider event queue closing also upon non-blocking mode Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 120/166] RDMA/mlx5: Fix affinity assignment Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 121/166] IB/isert: Fix dead lock in ib_isert Greg Kroah-Hartman
2023-06-19 10:29 ` [PATCH 6.1 122/166] IB/isert: Fix possible list corruption in CMA handler Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 123/166] IB/isert: Fix incorrect release of isert connection Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 124/166] net: ethtool: correct MAX attribute value for stats Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 125/166] ipvlan: fix bound dev checking for IPv6 l3s mode Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 126/166] sctp: fix an error code in sctp_sf_eat_auth() Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 127/166] igc: Clean the TX buffer and TX descriptor ring Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 128/166] igc: Fix possible system crash when loading module Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 129/166] igb: fix nvm.ops.read() error handling Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 130/166] net: phylink: report correct max speed for QUSGMII Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 131/166] net: phylink: use a dedicated helper to parse usgmii control word Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 132/166] drm/nouveau: dont detect DSM for non-NVIDIA device Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 133/166] drm/bridge: ti-sn65dsi86: Avoid possible buffer overflow Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 134/166] drm/nouveau/dp: check for NULL nv_connector->native_mode Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 135/166] drm/nouveau: add nv_encoder pointer check for NULL Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 136/166] selftests/tc-testing: Fix Error: Specified qdisc kind is unknown Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 137/166] selftests/tc-testing: Fix Error: failed to find target LOG Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 138/166] selftests/tc-testing: Fix SFB db test Greg Kroah-Hartman
2023-06-19 10:30 ` Greg Kroah-Hartman [this message]
2023-06-19 10:30 ` [PATCH 6.1 140/166] net/sched: Refactor qdisc_graft() for ingress and clsact Qdiscs Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 141/166] net/sched: qdisc_destroy() old ingress and clsact Qdiscs before grafting Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 142/166] selftests: forwarding: hw_stats_l3: Set addrgenmode in a separate step Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 143/166] cifs: fix lease break oops in xfstest generic/098 Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 144/166] ext4: drop the call to ext4_error() from ext4_get_group_info() Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 145/166] net/sched: cls_api: Fix lockup on flushing explicitly created chain Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 146/166] net: dsa: felix: fix taprio guard band overflow at 10Mbps with jumbo frames Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 147/166] net: lapbether: only support ethernet devices Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 148/166] net: macsec: fix double free of percpu stats Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 149/166] sfc: fix XDP queues mode with legacy IRQ Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 150/166] dm: dont lock fs when the map is NULL during suspend or resume Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 151/166] net: tipc: resize nlattr array to correct size Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 152/166] selftests/ptp: Fix timestamp printf format for PTP_SYS_OFFSET Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 153/166] octeon_ep: Add missing check for ioremap Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 154/166] afs: Fix vlserver probe RTT handling Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 155/166] parisc: Delete redundant register definitions in <asm/assembly.h> Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 156/166] rcu/kvfree: Avoid freeing new kfree_rcu() memory after old grace period Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 157/166] drm/amdgpu: Dont set struct drm_driver.output_poll_changed Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 158/166] net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 159/166] Revert "net/sched: act_api: move TCA_EXT_WARN_MSG to the correct hierarchy" Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 160/166] net/sched: act_api: add specific EXT_WARN_MSG for tc action Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 161/166] neighbour: delete neigh_lookup_nodev as not used Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 162/166] scsi: target: core: Fix error path in target_setup_session() Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 163/166] x86/boot/compressed: prefer cc-option for CFLAGS additions Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 164/166] MIPS: Move -Wa,-msoft-float check from as-option to cc-option Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 165/166] MIPS: Prefer cc-option for additions to cflags Greg Kroah-Hartman
2023-06-19 10:30 ` [PATCH 6.1 166/166] kbuild: Update assembler calls to use proper flags and language target Greg Kroah-Hartman
2023-06-19 15:32 ` [PATCH 6.1 000/166] 6.1.35-rc1 review Florian Fainelli
2023-06-19 19:09 ` Markus Reichelt
2023-06-20 9:12 ` Naresh Kamboju
2023-06-20 9:15 ` Chris Paterson
2023-06-20 10:21 ` Jon Hunter
2023-06-20 10:30 ` Ron Economos
2023-06-20 11:23 ` Conor Dooley
2023-06-20 11:49 ` Sudip Mukherjee (Codethink)
2023-06-20 12:44 ` ogasawara takeshi
2023-06-20 17:10 ` Allen Pais
2023-06-20 20:20 ` Shuah Khan
2023-06-21 0:39 ` Guenter Roeck
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=20230619102201.503152562@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=jhs@mojatatu.com \
--cc=kuba@kernel.org \
--cc=liuhangbin@gmail.com \
--cc=marcelo.leitner@gmail.com \
--cc=pabeni@redhat.com \
--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).