Currently we are using a custom list format. We should use the correct standard list construct. Also lists require a newline before and after the list items. Use correct RST list construct. Signed-off-by: Tobin C. Harding <me@xxxxxxxx> --- Documentation/networking/filter.rst | 30 ++++++++++++++++------------- 1 file changed, 17 insertions(+), 13 deletions(-) diff --git a/Documentation/networking/filter.rst b/Documentation/networking/filter.rst index 1ed6972c3544..99dfa74fc4f7 100644 --- a/Documentation/networking/filter.rst +++ b/Documentation/networking/filter.rst @@ -1162,18 +1162,21 @@ arithmetic), and this is tracked in two parts: the 'fixed offset' and 'variable offset'. The former is used when an exactly-known value (e.g. an immediate operand) is added to a pointer, while the latter is used for values which are not exactly known. The variable offset is also used in SCALAR_VALUEs, to track -the range of possible values in the register. -The verifier's knowledge about the variable offset consists of: +the range of possible values in the register. The verifier's knowledge +about the variable offset consists of: + * minimum and maximum values as unsigned * minimum and maximum values as signed * knowledge of the values of individual bits, in the form of a 'tnum': a u64 -'mask' and a u64 'value'. 1s in the mask represent bits whose value is unknown; -1s in the value represent bits known to be 1. Bits known to be 0 have 0 in both -mask and value; no bit should ever be 1 in both. For example, if a byte is read -into a register from memory, the register's top 56 bits are known zero, while -the low 8 are unknown - which is represented as the tnum (0x0; 0xff). If we -then OR this with 0x40, we get (0x40; 0xbf), then if we add 1 we get (0x0; -0x1ff), because of potential carries. + 'mask' and a u64 'value' + +1s in the mask represent bits whose value is unknown; 1s in the value +represent bits known to be 1. Bits known to be 0 have 0 in both mask and +value; no bit should ever be 1 in both. For example, if a byte is read +into a register from memory, the register's top 56 bits are known zero, +while the low 8 are unknown - which is represented as the tnum (0x0; 0xff). +If we then OR this with 0x40, we get (0x40; 0xbf), then if we add 1 we get +(0x0; 0x1ff), because of potential carries. Besides arithmetic, the register state can also be updated by conditional branches. For instance, if a SCALAR_VALUE is compared > 8, in the 'true' branch @@ -1329,10 +1332,11 @@ are concurrently updating. maps can have different types: hash, array, bloom filter, radix-tree, etc. The map is defined by: - . type - . max number of elements - . key size in bytes - . value size in bytes + +- type +- max number of elements +- key size in bytes +- value size in bytes Pruning ======= -- 2.17.1 -- To unsubscribe from this list: send the line "unsubscribe linux-doc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html