data
> [2] https://tools.ietf.org/html/draft-ietf-ippm-ioam-ipv6-options
> [3]
>
> https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-2
> [4] https://github.com/iurmanj/cross-layer-telemetry
>
> Justin Iurman (5):
> uapi: IPv6 IOAM head
trace type 0x80 ns 123
size 12 dev eth0
Signed-off-by: Justin Iurman
---
Documentation/networking/ioam6-sysctl.rst | 20
Documentation/networking/ip-sysctl.rst| 5 +
2 files changed, 25 insertions(+)
create mode 100644 Documentation/networking/ioam6-sysctl.rst
://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-2
Signed-off-by: Justin Iurman
---
include/linux/ioam6.h | 13 ++
include/linux/ipv6.h | 2 +
include/net/ioam6.h| 62 +++
include/net/netns/ipv6.h | 2 +
include/uapi/linux/in6.h
ip ioam namespace add ID [ DATA ]
ip ioam namespace del ID
ip ioam schema show
ip ioam schema add ID DATA
ip ioam schema del ID
ip ioam namespace set ID schema { ID | none }
Signed-off-by: Justin Iurman
---
include/linux/ioam6_genl.h | 13 +
include
2] https://tools.ietf.org/html/draft-ietf-ippm-ioam-data
Signed-off-by: Justin Iurman
---
include/uapi/linux/ioam6.h | 123 +
1 file changed, 123 insertions(+)
create mode 100644 include/uapi/linux/ioam6.h
diff --git a/include/uapi/linux/ioam6.h b/include
included in the trace (type) represented as a bitfield.
The reason why the in-transit (IPv6-in-IPv6 encapsulation) use case is not
implemented is explained on the patchset cover.
Signed-off-by: Justin Iurman
---
include/linux/ioam6_iptunnel.h | 13 ++
include/net/ioam6.h | 3
v6-parameters-2
[4] https://github.com/iurmanj/cross-layer-telemetry
Justin Iurman (5):
uapi: IPv6 IOAM headers definition
ipv6: ioam: Data plane support for Pre-allocated Trace
ipv6: ioam: IOAM Generic Netlink API
ipv6: ioam: Support for IOAM injection with lwtunnels
ipv6: ioam: Documen
> Hi Justin,
>
> Thank you for the patch! Perhaps something to improve:
>
> [auto build test WARNING on net-next/master]
>
> url:
> https://github.com/0day-ci/linux/commits/Justin-Iurman/Support-for-the-IOAM-Pre-allocated-Trace-with-IPv6/20210311-005727
> base:
2] https://tools.ietf.org/html/draft-ietf-ippm-ioam-data
Signed-off-by: Justin Iurman
---
include/uapi/linux/ioam6.h | 123 +
1 file changed, 123 insertions(+)
create mode 100644 include/uapi/linux/ioam6.h
diff --git a/include/uapi/linux/ioam6.h b/include
trace type 0x80 ns 123
size 12 dev eth0
Signed-off-by: Justin Iurman
---
Documentation/networking/ioam6-sysctl.rst | 20
Documentation/networking/ip-sysctl.rst| 5 +
2 files changed, 25 insertions(+)
create mode 100644 Documentation/networking/ioam6-sysctl.rst
ip ioam namespace add ID [ DATA ]
ip ioam namespace del ID
ip ioam schema show
ip ioam schema add ID DATA
ip ioam schema del ID
ip ioam namespace set ID schema { ID | none }
Signed-off-by: Justin Iurman
---
include/linux/ioam6_genl.h | 13 +
include
://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-2
Signed-off-by: Justin Iurman
---
include/linux/ioam6.h | 13 ++
include/linux/ipv6.h | 2 +
include/net/ioam6.h| 62 +++
include/net/netns/ipv6.h | 2 +
include/uapi/linux/in6.h
included in the trace (type) represented as a bitfield.
The reason why the in-transit (IPv6-in-IPv6 encapsulation) use case is not
implemented is explained on the patchset cover.
Signed-off-by: Justin Iurman
---
include/linux/ioam6_iptunnel.h | 13 ++
include/net/ioam6.h | 3
ppm-ioam-ipv6-options
[3]
https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-2
[4] https://github.com/iurmanj/cross-layer-telemetry
Justin Iurman (5):
uapi: IPv6 IOAM headers definition
ipv6: ioam: Data plane support for Pre-allocated Trace
ipv6: ioam: IOA
> Le 25 janv. 2021 à 20:32, Jakub Kicinski a écrit :
>
>> On Sun, 24 Jan 2021 11:57:03 -0700 David Ahern wrote:
>> On 1/24/21 2:57 AM, Justin Iurman wrote:
>>>> De: "Jakub Kicinski"
>>>> À: "Justin Iurman"
>>>> Cc: ne
> De: "Jakub Kicinski"
> À: "Justin Iurman"
> Cc: netdev@vger.kernel.org, da...@davemloft.net, "alex aring"
>
> Envoyé: Dimanche 24 Janvier 2021 05:54:44
> Objet: Re: [PATCH net 1/1] uapi: fix big endian definition of ipv6_rpl_sr_hdr
> On
|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
| CmprI | CmprE | Pad | Reserved|
+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
This patch reorders fields so that big endian definition is now correct.
[1] https://tools.ietf.org/html/rfc6554#section-3
Justin
-off-by: Justin Iurman
---
include/uapi/linux/rpl.h | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/include/uapi/linux/rpl.h b/include/uapi/linux/rpl.h
index 1dccb55cf8c6..708adddf9f13 100644
--- a/include/uapi/linux/rpl.h
+++ b/include/uapi/linux/rpl.h
@@ -28,10 +28,10
s been fixed.
>>
>> Reported-by: kernel test robot
>> Reported-by: Dan Carpenter
>> Signed-off-by: Justin Iurman
>
> My bot says this doesn't apply to net-next, could you double-check?
Z | Z | Z |
>> >> >> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> >> >>
>> >> >> Example 2:
>> >> >>
>> >> >> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> >> >> | Next header | Hdr Ext Len |
If rhashtable_remove_fast returns an error, a rollback is applied. In
that case, an unchecked dereference has been fixed.
Reported-by: kernel test robot
Reported-by: Dan Carpenter
Signed-off-by: Justin Iurman
---
net/ipv6/ioam6.c | 6 --
1 file changed, 4 insertions(+), 2 deletions
ess interface). But, for a more generic case, I agree for the sysctl
solution.
> enable this and probably could default to on. Of course, if we do this
> the next question is should we also implement anonymous decapsulation
> for 44,64,46 tunnels.
Interesting question. I'd say that w
| Z | Z |
>> >> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> >>
>> >> Result 2: assuming a 4-octet boundary WOULD NOT WORK. Indeed, option Z
>> >> would not be 8n-aligned and the Hop-by-Hop siz
t; Justin
>>
>> >> Another per-interface sysctl ioam6_id is provided to define the IOAM
>> >> (unique) identifier of the interface.
>> >>
>> >> A per-namespace sysctl ioam6_id is provided to define the IOAM (unique)
>> >> identifi
for
>> IOAM schemas. A namespace can only have a single active schema and a
>> schema can only be attached to a single namespace (1:1 relationship).
>>
>> [1] https://tools.ietf.org/html/draft-ietf-ippm-ioam-ipv6-options-01
>> [2] https://tools.ietf.org/ht
se, will do that ASAP!
Justin
>> Signed-off-by: Justin Iurman
>> ---
>> Documentation/networking/ioam6-sysctl.rst | 20
>> Documentation/networking/ip-sysctl.rst| 5 +
>> 2 files changed, 25 insertions(+)
>> create mode 1
> an egress node of the IOAM domain. The fact that it's IOAM isn't
> germaine, this IP in IP is done in a variety of ways. We should be
> using the normal protocol handler for NEXTHDR_IPV6 instead of special
> case code.
Agree. The reason for this special case code is that I was
;> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> | Y | Y | Y | Y |
>> +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
>> | Z | Z | Z | Z |
&
e,
another IOAM domain border which is also the tunnel destination, must
decapsulate the packet.
Signed-off-by: Justin Iurman
---
include/linux/ipv6.h | 1 +
net/ipv6/ip6_input.c | 22 ++
2 files changed, 23 insertions(+)
diff --git a/include/linux/ipv6.h b/include/lin
-parameters-2
Signed-off-by: Justin Iurman
---
include/linux/ipv6.h | 2 +
include/net/ioam6.h| 98 +++
include/net/netns/ipv6.h | 2 +
include/uapi/linux/in6.h | 1 +
include/uapi/linux/ipv6.h | 2 +
net/ipv6/Makefile | 2 +-
net/ipv6/addrconf.c
Add documentation for new IOAM sysctls:
- ioam6_id: a namespace sysctl
- ioam6_enabled and ioam6_id: two per-interface sysctls
Signed-off-by: Justin Iurman
---
Documentation/networking/ioam6-sysctl.rst | 20
Documentation/networking/ip-sysctl.rst| 5 +
2 files
ntees good alignment.
Signed-off-by: Justin Iurman
---
net/ipv6/exthdrs.c | 134 -
1 file changed, 108 insertions(+), 26 deletions(-)
diff --git a/net/ipv6/exthdrs.c b/net/ipv6/exthdrs.c
index e9b366994475..f27ab3bf2e0c 100644
--- a/net/ipv6/exthdrs.c
}
schema add ID DATA
namespace add ID [ DATA ] [ POP ]
namespace set ID schema { ID | none }
POP := { true | false }
Signed-off-by: Justin Iurman
---
include/linux/ioam6.h | 7 +
include/uapi/linux/ioam6.h | 43 +++
net/ipv6/ioam6.c | 519
IOAM sysctls documentation
[1] https://tools.ietf.org/html/draft-ietf-ippm-ioam-data-09
[2] https://tools.ietf.org/html/draft-ietf-ippm-ioam-ipv6-options-01
[3]
https://www.iana.org/assignments/ipv6-parameters/ipv6-parameters.xhtml#ipv6-parameters-2
[4] https://github.com/iurmanj/cross-layer-telem
34 matches
Mail list logo