Commit d2461edd authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab Committed by David S. Miller

docs: networking: convert tc-actions-env-rules.txt to ReST

- add SPDX header;
- add a document title;
- use the right numbered list markup;
- adjust identation, whitespaces and blank lines where needed;
- add to networking/index.rst.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab+huawei@kernel.org>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 32c0f0be
...@@ -106,6 +106,7 @@ Contents: ...@@ -106,6 +106,7 @@ Contents:
skfp skfp
strparser strparser
switchdev switchdev
tc-actions-env-rules
.. only:: subproject and html .. only:: subproject and html
......
.. SPDX-License-Identifier: GPL-2.0
================================
TC Actions - Environmental Rules
================================
The "environmental" rules for authors of any new tc actions are: The "environmental" rules for authors of any new tc actions are:
1) If you stealeth or borroweth any packet thou shalt be branching 1) If you stealeth or borroweth any packet thou shalt be branching
from the righteous path and thou shalt cloneth. from the righteous path and thou shalt cloneth.
For example if your action queues a packet to be processed later, For example if your action queues a packet to be processed later,
or intentionally branches by redirecting a packet, then you need to or intentionally branches by redirecting a packet, then you need to
clone the packet. clone the packet.
2) If you munge any packet thou shalt call pskb_expand_head in the case 2) If you munge any packet thou shalt call pskb_expand_head in the case
someone else is referencing the skb. After that you "own" the skb. someone else is referencing the skb. After that you "own" the skb.
3) Dropping packets you don't own is a no-no. You simply return 3) Dropping packets you don't own is a no-no. You simply return
TC_ACT_SHOT to the caller and they will drop it. TC_ACT_SHOT to the caller and they will drop it.
The "environmental" rules for callers of actions (qdiscs etc) are: The "environmental" rules for callers of actions (qdiscs etc) are:
*) Thou art responsible for freeing anything returned as being #) Thou art responsible for freeing anything returned as being
TC_ACT_SHOT/STOLEN/QUEUED. If none of TC_ACT_SHOT/STOLEN/QUEUED is TC_ACT_SHOT/STOLEN/QUEUED. If none of TC_ACT_SHOT/STOLEN/QUEUED is
returned, then all is great and you don't need to do anything. returned, then all is great and you don't need to do anything.
Post on netdev if something is unclear. Post on netdev if something is unclear.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment