<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/sched/cls_api.c, branch linux-4.18.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.18.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.18.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2018-11-04T13:51:54Z</updated>
<entry>
<title>net/sched: cls_api: add missing validation of netlink attributes</title>
<updated>2018-11-04T13:51:54Z</updated>
<author>
<name>Davide Caratti</name>
</author>
<published>2018-10-10T20:00:58Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c5038b492cb1656d61a2983adbe794af7c3a4389'/>
<id>urn:sha1:c5038b492cb1656d61a2983adbe794af7c3a4389</id>
<content type='text'>
[ Upstream commit e331473fee3d500bb0d2582a1fe598df3326d8cd ]

Similarly to what has been done in 8b4c3cdd9dd8 ("net: sched: Add policy
validation for tc attributes"), fix classifier code to add validation of
TCA_CHAIN and TCA_KIND netlink attributes.

tested with:
 # ./tdc.py -c filter

v2: Let sch_api and cls_api share nla_policy they have in common, thanks
    to David Ahern.
v3: Avoid EXPORT_SYMBOL(), as validation of those attributes is not done
    by TC modules, thanks to Cong Wang.
    While at it, restore the 'Delete / get qdisc' comment to its orginal
    position, just above tc_get_qdisc() function prototype.

Fixes: 5bc1701881e39 ("net: sched: introduce multichain support for filters")
Signed-off-by: Davide Caratti &lt;dcaratti@redhat.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>net: sched: Using NULL instead of plain integer</title>
<updated>2018-07-18T20:44:07Z</updated>
<author>
<name>YueHaibing</name>
</author>
<published>2018-07-17T12:58:14Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=53189183909f392c2aff1177565eabbfc48b8524'/>
<id>urn:sha1:53189183909f392c2aff1177565eabbfc48b8524</id>
<content type='text'>
Fixes the following sparse warnings:

net/sched/cls_api.c:1101:43: warning: Using plain integer as NULL pointer
net/sched/cls_api.c:1492:75: warning: Using plain integer as NULL pointer

Signed-off-by: YueHaibing &lt;yuehaibing@huawei.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Revert "net: sched: cls: Fix offloading when ingress dev is vxlan"</title>
<updated>2018-06-06T17:55:47Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2018-06-06T17:55:47Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9a99dc1c41772e0b24348f089a7a7edb91fc7723'/>
<id>urn:sha1:9a99dc1c41772e0b24348f089a7a7edb91fc7723</id>
<content type='text'>
This reverts commit d96a43c66464cdf0b249fdf47b6dcd65b83af8c0.

This potentially breaks things, so reverting as per
request by Jakub Kicinski.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: sched: cls: Fix offloading when ingress dev is vxlan</title>
<updated>2018-06-05T14:29:58Z</updated>
<author>
<name>Paul Blakey</name>
</author>
<published>2018-06-05T08:04:03Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d96a43c66464cdf0b249fdf47b6dcd65b83af8c0'/>
<id>urn:sha1:d96a43c66464cdf0b249fdf47b6dcd65b83af8c0</id>
<content type='text'>
When using a vxlan device as the ingress dev, we count it as a
"no offload dev", so when such a rule comes and err stop is true,
we fail early and don't try the egdev route which can offload it
through the egress device.

Fix that by not calling the block offload if one of the devices
attached to it is not offload capable, but make sure egress on such case
is capable instead.

Fixes: caa7260156eb ("net: sched: keep track of offloaded filters [..]")
Reviewed-by: Roi Dayan &lt;roid@mellanox.com&gt;
Acked-by: Jiri Pirko &lt;jiri@mellanox.com&gt;
Signed-off-by: Paul Blakey &lt;paulb@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: sched: return error code when tcf proto is not found</title>
<updated>2018-06-04T21:31:44Z</updated>
<author>
<name>Vlad Buslov</name>
</author>
<published>2018-06-04T15:32:23Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0e3990356d2518691e17c1ecbf7868833b6e6704'/>
<id>urn:sha1:0e3990356d2518691e17c1ecbf7868833b6e6704</id>
<content type='text'>
If requested tcf proto is not found, get and del filter netlink protocol
handlers output error message to extack, but do not return actual error
code. Add check to return ENOENT when result of tp find function is NULL
pointer.

Fixes: c431f89b18a2 ("net: sched: split tc_ctl_tfilter into three handlers")
Reported-by: Dan Carpenter &lt;dan.carpenter@oracle.com&gt;
Signed-off-by: Vlad Buslov &lt;vladbu@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: sched: split tc_ctl_tfilter into three handlers</title>
<updated>2018-06-01T15:13:50Z</updated>
<author>
<name>Vlad Buslov</name>
</author>
<published>2018-05-31T06:52:53Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c431f89b18a2bd62f74174829565e6433fc0c109'/>
<id>urn:sha1:c431f89b18a2bd62f74174829565e6433fc0c109</id>
<content type='text'>
tc_ctl_tfilter handles three netlink message types: RTM_NEWTFILTER,
RTM_DELTFILTER, RTM_GETTFILTER. However, implementation of this function
involves a lot of branching on specific message type because most of the
code is message-specific. This significantly complicates adding new
functionality and doesn't provide much benefit of code reuse.

Split tc_ctl_tfilter to three standalone functions that handle filter new,
delete and get requests.

The only truly protocol independent part of tc_ctl_tfilter is code that
looks up queue, class, and block. Refactor this code to standalone
tcf_block_find function that is used by all three new handlers.

Signed-off-by: Vlad Buslov &lt;vladbu@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2018-05-26T23:46:15Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2018-05-26T23:46:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5b79c2af667c0e2684f2a6dbf6439074b78f490c'/>
<id>urn:sha1:5b79c2af667c0e2684f2a6dbf6439074b78f490c</id>
<content type='text'>
Lots of easy overlapping changes in the confict
resolutions here.

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>net : sched: cls_api: deal with egdev path only if needed</title>
<updated>2018-05-25T02:12:22Z</updated>
<author>
<name>Or Gerlitz</name>
</author>
<published>2018-05-23T16:24:48Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=f8f4bef322e4600c5856911c7a632c0e3da920d6'/>
<id>urn:sha1:f8f4bef322e4600c5856911c7a632c0e3da920d6</id>
<content type='text'>
When dealing with ingress rule on a netdev, if we did fine through the
conventional path, there's no need to continue into the egdev route,
and we can stop right there.

Not doing so may cause a 2nd rule to be added by the cls api layer
with the ingress being the egdev.

For example, under sriov switchdev scheme, a user rule of VFR A --&gt; VFR B
will end up with two HW rules (1) VF A --&gt; VF B and (2) uplink --&gt; VF B

Fixes: 208c0f4b5237 ('net: sched: use tc_setup_cb_call to call per-block callbacks')
Signed-off-by: Or Gerlitz &lt;ogerlitz@mellanox.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>net: sched: fix error path in tcf_proto_create() when modules are not configured</title>
<updated>2018-05-11T20:34:38Z</updated>
<author>
<name>Jiri Pirko</name>
</author>
<published>2018-05-11T15:45:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=d68d75fdc34b0253c2bded7ed18cd60eb5a9599b'/>
<id>urn:sha1:d68d75fdc34b0253c2bded7ed18cd60eb5a9599b</id>
<content type='text'>
In case modules are not configured, error out when tp-&gt;ops is null
and prevent later null pointer dereference.

Fixes: 33a48927c193 ("sched: push TC filter protocol creation into a separate function")
Signed-off-by: Jiri Pirko &lt;jiri@mellanox.com&gt;
Acked-by: Cong Wang &lt;xiyou.wangcong@gmail.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
