<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/net/sched/act_api.c, branch linux-4.16.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.16.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-4.16.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2018-03-27T14:59:12Z</updated>
<entry>
<title>net sched actions: fix dumping which requires several messages to user space</title>
<updated>2018-03-27T14:59:12Z</updated>
<author>
<name>Craig Dillabaugh</name>
</author>
<published>2018-03-26T18:58:32Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=734549eb550c0c720bc89e50501f1b1e98cdd841'/>
<id>urn:sha1:734549eb550c0c720bc89e50501f1b1e98cdd841</id>
<content type='text'>
Fixes a bug in the tcf_dump_walker function that can cause some actions
to not be reported when dumping a large number of actions. This issue
became more aggrevated when cookies feature was added. In particular
this issue is manifest when large cookie values are assigned to the
actions and when enough actions are created that the resulting table
must be dumped in multiple batches.

The number of actions returned in each batch is limited by the total
number of actions and the memory buffer size.  With small cookies
the numeric limit is reached before the buffer size limit, which avoids
the code path triggering this bug. When large cookies are used buffer
fills before the numeric limit, and the erroneous code path is hit.

For example after creating 32 csum actions with the cookie
aaaabbbbccccdddd

$ tc actions ls action csum
total acts 26

    action order 0: csum (tcp) action continue
    index 1 ref 1 bind 0
    cookie aaaabbbbccccdddd

    .....

    action order 25: csum (tcp) action continue
    index 26 ref 1 bind 0
    cookie aaaabbbbccccdddd
total acts 6

    action order 0: csum (tcp) action continue
    index 28 ref 1 bind 0
    cookie aaaabbbbccccdddd

    ......

    action order 5: csum (tcp) action continue
    index 32 ref 1 bind 0
    cookie aaaabbbbccccdddd

Note that the action with index 27 is omitted from the report.

Fixes: 4b3550ef530c ("[NET_SCHED]: Use nla_nest_start/nla_nest_end")"
Signed-off-by: Craig Dillabaugh &lt;cdillaba@mojatatu.com&gt;
Acked-by: Jamal Hadi Salim &lt;jhs@mojatatu.com&gt;
Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>idr: Rename idr_for_each_entry_ext</title>
<updated>2018-02-06T21:41:28Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2017-11-28T20:39:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=7a4575778f4db109b8b78e6dba03271096793f88'/>
<id>urn:sha1:7a4575778f4db109b8b78e6dba03271096793f88</id>
<content type='text'>
Most places in the kernel that we need to distinguish functions by the
type of their arguments, we use '_ul' as a suffix for the unsigned long
variant, not '_ext'.  Also add kernel-doc.

Signed-off-by: Matthew Wilcox &lt;mawilcox@microsoft.com&gt;
</content>
</entry>
<entry>
<title>net sched actions: Convert to use idr_alloc_u32</title>
<updated>2018-02-06T21:40:33Z</updated>
<author>
<name>Matthew Wilcox</name>
</author>
<published>2017-11-28T15:28:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=339913a8be8a98fca5c72f5552f0316ff6d5e701'/>
<id>urn:sha1:339913a8be8a98fca5c72f5552f0316ff6d5e701</id>
<content type='text'>
Use the new helper.  Also untangle the error path, and in so doing
noticed that estimator generator failure would lead to us leaking an
ID.  Fix that bug.

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

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: remove unused parameter from act cleanup ops</title>
<updated>2017-12-05T23:07:58Z</updated>
<author>
<name>Cong Wang</name>
</author>
<published>2017-12-05T20:53:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9a63b255dffd6de31fe47a80d16d26d0291d3714'/>
<id>urn:sha1:9a63b255dffd6de31fe47a80d16d26d0291d3714</id>
<content type='text'>
No one actually uses it.

Cc: Jiri Pirko &lt;jiri@mellanox.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>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2017-11-10T01:00:18Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2017-11-10T01:00:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4dc6758d7824a6d25717ccceefc488cafdb07210'/>
<id>urn:sha1:4dc6758d7824a6d25717ccceefc488cafdb07210</id>
<content type='text'>
Simple cases of overlapping changes in the packet scheduler.

Must easier to resolve this time.

Which probably means that I screwed it up somehow.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
<entry>
<title>Revert "net_sched: hold netns refcnt for each action"</title>
<updated>2017-11-09T01:03:09Z</updated>
<author>
<name>Cong Wang</name>
</author>
<published>2017-11-06T21:47:18Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=c7e460ce55724d4e4e22d3126e5c47273819c53a'/>
<id>urn:sha1:c7e460ce55724d4e4e22d3126e5c47273819c53a</id>
<content type='text'>
This reverts commit ceffcc5e254b450e6159f173e4538215cebf1b59.
If we hold that refcnt, the netns can never be destroyed until
all actions are destroyed by user, this breaks our netns design
which we expect all actions are destroyed when we destroy the
whole netns.

Cc: Lucas Bates &lt;lucasb@mojatatu.com&gt;
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;
</content>
</entry>
<entry>
<title>Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net</title>
<updated>2017-11-04T00:26:51Z</updated>
<author>
<name>David S. Miller</name>
</author>
<published>2017-11-04T00:26:51Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=2a171788ba7bb61995e98e8163204fc7880f63b2'/>
<id>urn:sha1:2a171788ba7bb61995e98e8163204fc7880f63b2</id>
<content type='text'>
Files removed in 'net-next' had their license header updated
in 'net'.  We take the remove from 'net-next'.

Signed-off-by: David S. Miller &lt;davem@davemloft.net&gt;
</content>
</entry>
</feed>
