<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/sched/cls_basic.c, branch linux-4.19.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.19.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.19.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2020-02-01T09:37:06Z</updated>
<entry>
<title>net_sched: fix ops-&gt;bind_class() implementations</title>
<updated>2020-02-01T09:37:06Z</updated>
<author>
<name>Cong Wang</name>
</author>
<published>2020-01-24T00:26:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9f7a32834b624bdfc94a21f3035463310faf7259'/>
<id>urn:sha1:9f7a32834b624bdfc94a21f3035463310faf7259</id>
<content type='text'>
[ Upstream commit 2e24cd755552350b94a7617617c6877b8cbcb701 ]

The current implementations of ops-&gt;bind_class() are merely
searching for classid and updating class in the struct tcf_result,
without invoking either of cl_ops-&gt;bind_tcf() or
cl_ops-&gt;unbind_tcf(). This breaks the design of them as qdisc's
like cbq use them to count filters too. This is why syzbot triggered
the warning in cbq_destroy_class().

In order to fix this, we have to call cl_ops-&gt;bind_tcf() and
cl_ops-&gt;unbind_tcf() like the filter binding path. This patch does
so by refactoring out two helper functions __tcf_bind_filter()
and __tcf_unbind_filter(), which are lockless and accept a Qdisc
pointer, then teaching each implementation to call them correctly.

Note, we merely pass the Qdisc pointer as an opaque pointer to
each filter, they only need to pass it down to the helper
functions without understanding it at all.

Fixes: 07d79fc7d94e ("net_sched: add reverse binding for tc class")
Reported-and-tested-by: syzbot+0a0596220218fcb603a8@syzkaller.appspotmail.com
Reported-and-tested-by: syzbot+63bdb6006961d8c917c6@syzkaller.appspotmail.com
Cc: Jamal Hadi Salim &lt;jhs@mojatatu.com&gt;
Cc: Jiri Pirko &lt;jiri@resnulli.us&gt;
Signed-off-by: Cong Wang &lt;xiyou.wangcong@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
Signed-off-by: Greg Kroah-Hartman &lt;gregkh@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>sched: fix trailing whitespace</title>
<updated>2018-07-24T21:10:42Z</updated>
<author>
<name>Stephen Hemminger</name>
</author>
<published>2018-07-24T19:29:01Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=50f699b1f8462959482251a6cd1b7bc6bbd20796'/>
<id>urn:sha1:50f699b1f8462959482251a6cd1b7bc6bbd20796</id>
<content type='text'>
Remove trailing whitespace and blank lines at EOF

Signed-off-by: Stephen Hemminger &lt;stephen@networkplumber.org&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net_sched: switch to rcu_work</title>
<updated>2018-05-25T02:56:15Z</updated>
<author>
<name>Cong Wang</name>
</author>
<published>2018-05-23T22:26:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=aaa908ffbee18a65529b716efb346a626e81559a'/>
<id>urn:sha1:aaa908ffbee18a65529b716efb346a626e81559a</id>
<content type='text'>
Commit 05f0fe6b74db ("RCU, workqueue: Implement rcu_work") introduces
new API's for dispatching work in a RCU callback. Now we can just
switch to the new API's for tc filters. This could get rid of a lot
of code.

Cc: Tejun Heo &lt;tj@kernel.org&gt;
Cc: "Paul E. McKenney" &lt;paulmck@linux.vnet.ibm.com&gt;
Cc: Jamal Hadi Salim &lt;jhs@mojatatu.com&gt;
Signed-off-by: Cong Wang &lt;xiyou.wangcong@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>cls_basic: Convert to use idr_alloc_u32</title>
<updated>2018-02-06T21:41:26Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2017-11-28T15:36:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=05af0ebb0810ba3f9669649134b4b4ad42540eba'/>
<id>urn:sha1:05af0ebb0810ba3f9669649134b4b4ad42540eba</id>
<content type='text'>
Use the new helper which saves a temporary variable and a few lines of
code.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>idr: Delete idr_replace_ext function</title>
<updated>2018-02-06T21:40:31Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2017-11-28T14:56:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=234a4624efe5629a777b4c00dbdf41dd8b7332db'/>
<id>urn:sha1:234a4624efe5629a777b4c00dbdf41dd8b7332db</id>
<content type='text'>
Changing idr_replace's 'id' argument to 'unsigned long' works for all
callers.  Callers which passed a negative ID now get -ENOENT instead of
-EINVAL.  No callers relied on this error value.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>idr: Delete idr_remove_ext function</title>
<updated>2018-02-06T21:40:31Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2017-11-28T14:48:43Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9c160941403ba833c8e67981806ccae73ff7aca7'/>
<id>urn:sha1:9c160941403ba833c8e67981806ccae73ff7aca7</id>
<content type='text'>
Simply changing idr_remove's 'id' argument to 'unsigned long' suffices
for all callers.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>net: sched: propagate extack to cls-&gt;destroy callbacks</title>
<updated>2018-01-24T21:01:09Z</updated>
<author>
<name>Jakub Kicinski</name>
</author>
<published>2018-01-24T20:54:13Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=715df5ecab0f22685930cb8bb0cc70ed8fb9279e'/>
<id>urn:sha1:715df5ecab0f22685930cb8bb0cc70ed8fb9279e</id>
<content type='text'>
Propagate extack to cls-&gt;destroy callbacks when called from
non-error paths.  On error paths pass NULL to avoid overwriting
the failure message.

Signed-off-by: Jakub Kicinski &lt;jakub.kicinski@netronome.com&gt;
Reviewed-by: Simon Horman &lt;simon.horman@netronome.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: sched: cls: add extack support for delete callback</title>
<updated>2018-01-19T20:52:51Z</updated>
<author>
<name>Alexander Aring</name>
</author>
<published>2018-01-18T16:20:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=571acf2106963d6c1c0ce1ed13e711bd296b2d25'/>
<id>urn:sha1:571acf2106963d6c1c0ce1ed13e711bd296b2d25</id>
<content type='text'>
This patch adds extack support for classifier delete callback api. This
prepares to handle extack support inside each specific classifier
implementation.

Cc: David Ahern &lt;dsahern@gmail.com&gt;
Signed-off-by: Alexander Aring &lt;aring@mojatatu.com&gt;
Acked-by: Jiri Pirko &lt;jiri@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: sched: cls: add extack support for tcf_exts_validate</title>
<updated>2018-01-19T20:52:51Z</updated>
<author>
<name>Alexander Aring</name>
</author>
<published>2018-01-18T16:20:52Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=50a561900e66a03f5127edac57487079bc0b8201'/>
<id>urn:sha1:50a561900e66a03f5127edac57487079bc0b8201</id>
<content type='text'>
The tcf_exts_validate function calls the act api change callback. For
preparing extack support for act api, this patch adds the extack as
parameter for this function which is common used in cls implementations.

Furthermore the tcf_exts_validate will call action init callback which
prepares the TC action subsystem for extack support.

Cc: David Ahern &lt;dsahern@gmail.com&gt;
Signed-off-by: Alexander Aring &lt;aring@mojatatu.com&gt;
Acked-by: Jiri Pirko &lt;jiri@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: sched: cls: add extack support for change callback</title>
<updated>2018-01-19T20:52:51Z</updated>
<author>
<name>Alexander Aring</name>
</author>
<published>2018-01-18T16:20:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7306db38a67cf6b8e1ca354b1d0c0117b7b880d5'/>
<id>urn:sha1:7306db38a67cf6b8e1ca354b1d0c0117b7b880d5</id>
<content type='text'>
This patch adds extack support for classifier change callback api. This
prepares to handle extack support inside each specific classifier
implementation.

Cc: David Ahern &lt;dsahern@gmail.com&gt;
Signed-off-by: Alexander Aring &lt;aring@mojatatu.com&gt;
Acked-by: Jiri Pirko &lt;jiri@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
