public inbox for openembedded-core@lists.openembedded.org
 help / color / mirror / Atom feed
* [oe-core][master][PATCH] busybox: Use ISO 13400 timings in zcip
@ 2024-02-07  7:51 Akash Hadke
  2024-02-07 11:28 ` Alexander Kanavin
  2024-02-09 14:17 ` [oe-core][master][PATCH] " Richard Purdie
  0 siblings, 2 replies; 6+ messages in thread
From: Akash Hadke @ 2024-02-07  7:51 UTC (permalink / raw)
  To: openembedded-core; +Cc: akash hadke

From: akash hadke <akash.hadke@kpit.com>

Add below patch to support DoIP/ISO 13400 timings busybox zcip

0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch

DoIP requires fast IP assignment, faster than what RFC 3927 can
guarantee, and so it defines its' own AutoIP timing parameters

Add a compile-time option to use DoIP timing parameters instead of
default RFC 3927 parameters. This option is useful for use of zcip in
automotive use-cases. In pratice, it decreases AutoIP allocation time
from ~10s to ~2s, at the expense of less resilience to collisions

Signed-off-by: akash hadke <akash.hadke@kpit.com>
Signed-off-by: Akash Hadke <akash.hadke27@gmail.com>
---
 ...d-support-for-DoIP-ISO-13400-timings.patch | 189 ++++++++++++++++++
 meta/recipes-core/busybox/busybox_1.36.1.bb   |   1 +
 2 files changed, 190 insertions(+)
 create mode 100644 meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch

diff --git a/meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch b/meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch
new file mode 100644
index 0000000000..4625ed8b2b
--- /dev/null
+++ b/meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch
@@ -0,0 +1,189 @@
+From 0fd26ed084f08911ec692f0007542d926d657a66 Mon Sep 17 00:00:00 2001
+From: akash hadke <akash.hadke@kpit.com>
+Date: Mon, 5 Feb 2024 14:43:55 +0530
+Subject: [PATCH] zcip: add support for DoIP/ISO 13400 timings
+
+DoIP requires fast IP assignment, faster than what RFC 3927 can
+guarantee, and so it defines its' own AutoIP timing parameters
+
+Add a compile-time option to use DoIP timing parameters instead of
+default RFC 3927 parameters. This option is helpful for the use of zcip in
+automotive use cases. In practice, it decreases AutoIP allocation time
+from ~10s to ~2s, at the expense of less resilience to collisions
+
+Upstream-Status: Submitted [http://lists.busybox.net/pipermail/busybox/2024-February/090611.html]
+
+Signed-off-by: Ricardo Leite <ricardo.leite at criticaltechworks.com>
+Signed-off-by: akash hadke <akash.hadke@kpit.com>
+Signed-off-by: Akash Hadke <akash.hadke27@gmail.com>
+---
+ configs/TEST_nommu_defconfig    |  1 +
+ configs/TEST_noprintf_defconfig |  1 +
+ configs/TEST_rh9_defconfig      |  1 +
+ configs/android2_defconfig      |  1 +
+ configs/android_502_defconfig   |  1 +
+ configs/android_defconfig       |  1 +
+ configs/android_ndk_defconfig   |  1 +
+ configs/cygwin_defconfig        |  1 +
+ configs/freebsd_defconfig       |  1 +
+ networking/zcip.c               | 23 +++++++++++++++++++++++
+ 10 files changed, 32 insertions(+)
+
+diff --git a/configs/TEST_nommu_defconfig b/configs/TEST_nommu_defconfig
+index 415f5a802..3f8ca40d7 100644
+--- a/configs/TEST_nommu_defconfig
++++ b/configs/TEST_nommu_defconfig
+@@ -769,6 +769,7 @@ CONFIG_FEATURE_WGET_STATUSBAR=y
+ CONFIG_FEATURE_WGET_AUTHENTICATION=y
+ CONFIG_FEATURE_WGET_LONG_OPTIONS=y
+ CONFIG_ZCIP=y
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ CONFIG_TCPSVD=y
+ CONFIG_TUNCTL=y
+ CONFIG_FEATURE_TUNCTL_UG=y
+diff --git a/configs/TEST_noprintf_defconfig b/configs/TEST_noprintf_defconfig
+index 9b378fd55..5cfd5b3d7 100644
+--- a/configs/TEST_noprintf_defconfig
++++ b/configs/TEST_noprintf_defconfig
+@@ -781,6 +781,7 @@ CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
+ # CONFIG_FEATURE_WGET_AUTHENTICATION is not set
+ # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
+ # CONFIG_ZCIP is not set
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ 
+ #
+ # Print Utilities
+diff --git a/configs/TEST_rh9_defconfig b/configs/TEST_rh9_defconfig
+index 4ac62b9da..1fe074e79 100644
+--- a/configs/TEST_rh9_defconfig
++++ b/configs/TEST_rh9_defconfig
+@@ -791,6 +791,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
+ CONFIG_FEATURE_WGET_LONG_OPTIONS=y
+ CONFIG_FEATURE_WGET_TIMEOUT=y
+ CONFIG_ZCIP=y
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ 
+ #
+ # Print Utilities
+diff --git a/configs/android2_defconfig b/configs/android2_defconfig
+index d4b8f1616..eceabbc20 100644
+--- a/configs/android2_defconfig
++++ b/configs/android2_defconfig
+@@ -828,6 +828,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
+ # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
+ CONFIG_FEATURE_WGET_TIMEOUT=y
+ # CONFIG_ZCIP is not set
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ 
+ #
+ # Print Utilities
+diff --git a/configs/android_502_defconfig b/configs/android_502_defconfig
+index 104e70f23..0ed60ae61 100644
+--- a/configs/android_502_defconfig
++++ b/configs/android_502_defconfig
+@@ -968,6 +968,7 @@ CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n"
+ CONFIG_UDPSVD=y
+ CONFIG_VCONFIG=y
+ # CONFIG_ZCIP is not set
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ 
+ #
+ # Print Utilities
+diff --git a/configs/android_defconfig b/configs/android_defconfig
+index 92a66048a..c1d38328b 100644
+--- a/configs/android_defconfig
++++ b/configs/android_defconfig
+@@ -858,6 +858,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
+ # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
+ CONFIG_FEATURE_WGET_TIMEOUT=y
+ # CONFIG_ZCIP is not set
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ 
+ #
+ # Print Utilities
+diff --git a/configs/android_ndk_defconfig b/configs/android_ndk_defconfig
+index 425593454..384304d46 100644
+--- a/configs/android_ndk_defconfig
++++ b/configs/android_ndk_defconfig
+@@ -884,6 +884,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
+ # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
+ CONFIG_FEATURE_WGET_TIMEOUT=y
+ # CONFIG_ZCIP is not set
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ 
+ #
+ # Print Utilities
+diff --git a/configs/cygwin_defconfig b/configs/cygwin_defconfig
+index 61e2c2463..6ed414b76 100644
+--- a/configs/cygwin_defconfig
++++ b/configs/cygwin_defconfig
+@@ -831,6 +831,7 @@
+ CONFIG_FEATURE_WGET_LONG_OPTIONS=y
+ CONFIG_FEATURE_WGET_TIMEOUT=y
+ # CONFIG_ZCIP is not set
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ 
+ #
+ # Print Utilities
+diff --git a/configs/freebsd_defconfig b/configs/freebsd_defconfig
+index 6cbd54895..c09197be3 100644
+--- a/configs/freebsd_defconfig
++++ b/configs/freebsd_defconfig
+@@ -810,6 +810,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
+ CONFIG_FEATURE_WGET_LONG_OPTIONS=y
+ CONFIG_FEATURE_WGET_TIMEOUT=y
+ # CONFIG_ZCIP is not set
++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
+ 
+ #
+ # Print Utilities
+diff --git a/networking/zcip.c b/networking/zcip.c
+index 137d46e13..b955d6433 100644
+--- a/networking/zcip.c
++++ b/networking/zcip.c
+@@ -24,6 +24,15 @@
+ //config:
+ //config:	See http://www.zeroconf.org for further details, and "zcip.script"
+ //config:	in the busybox examples.
++//config:
++//config:config ZCIP_USE_ISO_13400_TIMINGS
++//config:	bool "Use ISO 13400 (DoIP) timings"
++//config:	default y
++//config:	depends on ZCIP
++//config:	help
++//config:	Use timings from ISO 13400-2 (for DoIP) instead of RFC 3927,
++//config:	which dramatically speeds up AutoIP allocation time at the cost
++//config:	of less resilience to collisions.
+ 
+ //applet:IF_ZCIP(APPLET(zcip, BB_DIR_SBIN, BB_SUID_DROP))
+ 
+@@ -73,12 +82,26 @@ struct arp_packet {
+ enum {
+ 	/* 0-1 seconds before sending 1st probe */
+ 	PROBE_WAIT = 1,
++
++#if ENABLE_ZCIP_USE_ISO_13400_TIMINGS
++	/**
++	 * DoIP-specific timings, see ISO 13400-2, Section 9.1.2.2, Table 15
++	 */
++	/* 0-1 seconds between probes */
++	PROBE_MIN = 0,
++	PROBE_MAX = 1,
++	PROBE_NUM = 1,		/* total probes to send */
++	ANNOUNCE_INTERVAL = 1,  /* 1 seconds between announces */
++	ANNOUNCE_NUM = 1,	/* announces to send */
++#else
+ 	/* 1-2 seconds between probes */
+ 	PROBE_MIN = 1,
+ 	PROBE_MAX = 2,
+ 	PROBE_NUM = 3,		/* total probes to send */
+ 	ANNOUNCE_INTERVAL = 2,  /* 2 seconds between announces */
+ 	ANNOUNCE_NUM = 3,	/* announces to send */
++#endif
++
+ 	/* if probe/announce sees a conflict, multiply RANDOM(NUM_CONFLICT) by... */
+ 	CONFLICT_MULTIPLIER = 2,
+ 	/* if we monitor and see a conflict, how long is defend state? */
+-- 
+2.25.1
+
diff --git a/meta/recipes-core/busybox/busybox_1.36.1.bb b/meta/recipes-core/busybox/busybox_1.36.1.bb
index 06eb9eb999..3cc4796e05 100644
--- a/meta/recipes-core/busybox/busybox_1.36.1.bb
+++ b/meta/recipes-core/busybox/busybox_1.36.1.bb
@@ -50,6 +50,7 @@ SRC_URI = "https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
            file://0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch \
            file://0002-nslookup-sanitize-all-printed-strings-with-printable.patch \
            file://start-stop-false.patch \
+           file://0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch \
            "
 SRC_URI:append:libc-musl = " file://musl.cfg "
 # TODO http://lists.busybox.net/pipermail/busybox/2023-January/090078.html
-- 
2.25.1



^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [oe-core][master][PATCH] busybox: Use ISO 13400 timings in zcip
  2024-02-07  7:51 [oe-core][master][PATCH] busybox: Use ISO 13400 timings in zcip Akash Hadke
@ 2024-02-07 11:28 ` Alexander Kanavin
  2024-02-07 12:20   ` [master][PATCH] " akash hadke
  2024-02-09 14:17 ` [oe-core][master][PATCH] " Richard Purdie
  1 sibling, 1 reply; 6+ messages in thread
From: Alexander Kanavin @ 2024-02-07 11:28 UTC (permalink / raw)
  To: akash hadke; +Cc: akash hadke, openembedded-core

[-- Attachment #1: Type: text/plain, Size: 10300 bytes --]

This doesn’t look like something oe-core should carry, can you provide
justification if you think otherwise?

Alex

On Wed 7. Feb 2024 at 8.51, akash hadke <akash.hadke27@gmail.com> wrote:

> From: akash hadke <akash.hadke@kpit.com>
>
> Add below patch to support DoIP/ISO 13400 timings busybox zcip
>
> 0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch
>
> DoIP requires fast IP assignment, faster than what RFC 3927 can
> guarantee, and so it defines its' own AutoIP timing parameters
>
> Add a compile-time option to use DoIP timing parameters instead of
> default RFC 3927 parameters. This option is useful for use of zcip in
> automotive use-cases. In pratice, it decreases AutoIP allocation time
> from ~10s to ~2s, at the expense of less resilience to collisions
>
> Signed-off-by: akash hadke <akash.hadke@kpit.com>
> Signed-off-by: Akash Hadke <akash.hadke27@gmail.com>
> ---
>  ...d-support-for-DoIP-ISO-13400-timings.patch | 189 ++++++++++++++++++
>  meta/recipes-core/busybox/busybox_1.36.1.bb   |   1 +
>  2 files changed, 190 insertions(+)
>  create mode 100644
> meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch
>
> diff --git
> a/meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch
> b/meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch
> new file mode 100644
> index 0000000000..4625ed8b2b
> --- /dev/null
> +++
> b/meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch
> @@ -0,0 +1,189 @@
> +From 0fd26ed084f08911ec692f0007542d926d657a66 Mon Sep 17 00:00:00 2001
> +From: akash hadke <akash.hadke@kpit.com>
> +Date: Mon, 5 Feb 2024 14:43:55 +0530
> +Subject: [PATCH] zcip: add support for DoIP/ISO 13400 timings
> +
> +DoIP requires fast IP assignment, faster than what RFC 3927 can
> +guarantee, and so it defines its' own AutoIP timing parameters
> +
> +Add a compile-time option to use DoIP timing parameters instead of
> +default RFC 3927 parameters. This option is helpful for the use of zcip in
> +automotive use cases. In practice, it decreases AutoIP allocation time
> +from ~10s to ~2s, at the expense of less resilience to collisions
> +
> +Upstream-Status: Submitted [
> http://lists.busybox.net/pipermail/busybox/2024-February/090611.html]
> +
> +Signed-off-by: Ricardo Leite <ricardo.leite at criticaltechworks.com>
> +Signed-off-by: akash hadke <akash.hadke@kpit.com>
> +Signed-off-by: Akash Hadke <akash.hadke27@gmail.com>
> +---
> + configs/TEST_nommu_defconfig    |  1 +
> + configs/TEST_noprintf_defconfig |  1 +
> + configs/TEST_rh9_defconfig      |  1 +
> + configs/android2_defconfig      |  1 +
> + configs/android_502_defconfig   |  1 +
> + configs/android_defconfig       |  1 +
> + configs/android_ndk_defconfig   |  1 +
> + configs/cygwin_defconfig        |  1 +
> + configs/freebsd_defconfig       |  1 +
> + networking/zcip.c               | 23 +++++++++++++++++++++++
> + 10 files changed, 32 insertions(+)
> +
> +diff --git a/configs/TEST_nommu_defconfig b/configs/TEST_nommu_defconfig
> +index 415f5a802..3f8ca40d7 100644
> +--- a/configs/TEST_nommu_defconfig
> ++++ b/configs/TEST_nommu_defconfig
> +@@ -769,6 +769,7 @@ CONFIG_FEATURE_WGET_STATUSBAR=y
> + CONFIG_FEATURE_WGET_AUTHENTICATION=y
> + CONFIG_FEATURE_WGET_LONG_OPTIONS=y
> + CONFIG_ZCIP=y
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> + CONFIG_TCPSVD=y
> + CONFIG_TUNCTL=y
> + CONFIG_FEATURE_TUNCTL_UG=y
> +diff --git a/configs/TEST_noprintf_defconfig
> b/configs/TEST_noprintf_defconfig
> +index 9b378fd55..5cfd5b3d7 100644
> +--- a/configs/TEST_noprintf_defconfig
> ++++ b/configs/TEST_noprintf_defconfig
> +@@ -781,6 +781,7 @@ CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS=""
> + # CONFIG_FEATURE_WGET_AUTHENTICATION is not set
> + # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
> + # CONFIG_ZCIP is not set
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> +
> + #
> + # Print Utilities
> +diff --git a/configs/TEST_rh9_defconfig b/configs/TEST_rh9_defconfig
> +index 4ac62b9da..1fe074e79 100644
> +--- a/configs/TEST_rh9_defconfig
> ++++ b/configs/TEST_rh9_defconfig
> +@@ -791,6 +791,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
> + CONFIG_FEATURE_WGET_LONG_OPTIONS=y
> + CONFIG_FEATURE_WGET_TIMEOUT=y
> + CONFIG_ZCIP=y
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> +
> + #
> + # Print Utilities
> +diff --git a/configs/android2_defconfig b/configs/android2_defconfig
> +index d4b8f1616..eceabbc20 100644
> +--- a/configs/android2_defconfig
> ++++ b/configs/android2_defconfig
> +@@ -828,6 +828,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
> + # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
> + CONFIG_FEATURE_WGET_TIMEOUT=y
> + # CONFIG_ZCIP is not set
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> +
> + #
> + # Print Utilities
> +diff --git a/configs/android_502_defconfig b/configs/android_502_defconfig
> +index 104e70f23..0ed60ae61 100644
> +--- a/configs/android_502_defconfig
> ++++ b/configs/android_502_defconfig
> +@@ -968,6 +968,7 @@ CONFIG_IFUPDOWN_UDHCPC_CMD_OPTIONS="-R -n"
> + CONFIG_UDPSVD=y
> + CONFIG_VCONFIG=y
> + # CONFIG_ZCIP is not set
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> +
> + #
> + # Print Utilities
> +diff --git a/configs/android_defconfig b/configs/android_defconfig
> +index 92a66048a..c1d38328b 100644
> +--- a/configs/android_defconfig
> ++++ b/configs/android_defconfig
> +@@ -858,6 +858,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
> + # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
> + CONFIG_FEATURE_WGET_TIMEOUT=y
> + # CONFIG_ZCIP is not set
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> +
> + #
> + # Print Utilities
> +diff --git a/configs/android_ndk_defconfig b/configs/android_ndk_defconfig
> +index 425593454..384304d46 100644
> +--- a/configs/android_ndk_defconfig
> ++++ b/configs/android_ndk_defconfig
> +@@ -884,6 +884,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
> + # CONFIG_FEATURE_WGET_LONG_OPTIONS is not set
> + CONFIG_FEATURE_WGET_TIMEOUT=y
> + # CONFIG_ZCIP is not set
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> +
> + #
> + # Print Utilities
> +diff --git a/configs/cygwin_defconfig b/configs/cygwin_defconfig
> +index 61e2c2463..6ed414b76 100644
> +--- a/configs/cygwin_defconfig
> ++++ b/configs/cygwin_defconfig
> +@@ -831,6 +831,7 @@
> + CONFIG_FEATURE_WGET_LONG_OPTIONS=y
> + CONFIG_FEATURE_WGET_TIMEOUT=y
> + # CONFIG_ZCIP is not set
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> +
> + #
> + # Print Utilities
> +diff --git a/configs/freebsd_defconfig b/configs/freebsd_defconfig
> +index 6cbd54895..c09197be3 100644
> +--- a/configs/freebsd_defconfig
> ++++ b/configs/freebsd_defconfig
> +@@ -810,6 +810,7 @@ CONFIG_FEATURE_WGET_AUTHENTICATION=y
> + CONFIG_FEATURE_WGET_LONG_OPTIONS=y
> + CONFIG_FEATURE_WGET_TIMEOUT=y
> + # CONFIG_ZCIP is not set
> ++# CONFIG_ZCIP_USE_ISO_13400_TIMINGS is not set
> +
> + #
> + # Print Utilities
> +diff --git a/networking/zcip.c b/networking/zcip.c
> +index 137d46e13..b955d6433 100644
> +--- a/networking/zcip.c
> ++++ b/networking/zcip.c
> +@@ -24,6 +24,15 @@
> + //config:
> + //config:     See http://www.zeroconf.org for further details, and
> "zcip.script"
> + //config:     in the busybox examples.
> ++//config:
> ++//config:config ZCIP_USE_ISO_13400_TIMINGS
> ++//config:     bool "Use ISO 13400 (DoIP) timings"
> ++//config:     default y
> ++//config:     depends on ZCIP
> ++//config:     help
> ++//config:     Use timings from ISO 13400-2 (for DoIP) instead of RFC
> 3927,
> ++//config:     which dramatically speeds up AutoIP allocation time at the
> cost
> ++//config:     of less resilience to collisions.
> +
> + //applet:IF_ZCIP(APPLET(zcip, BB_DIR_SBIN, BB_SUID_DROP))
> +
> +@@ -73,12 +82,26 @@ struct arp_packet {
> + enum {
> +       /* 0-1 seconds before sending 1st probe */
> +       PROBE_WAIT = 1,
> ++
> ++#if ENABLE_ZCIP_USE_ISO_13400_TIMINGS
> ++      /**
> ++       * DoIP-specific timings, see ISO 13400-2, Section 9.1.2.2, Table
> 15
> ++       */
> ++      /* 0-1 seconds between probes */
> ++      PROBE_MIN = 0,
> ++      PROBE_MAX = 1,
> ++      PROBE_NUM = 1,          /* total probes to send */
> ++      ANNOUNCE_INTERVAL = 1,  /* 1 seconds between announces */
> ++      ANNOUNCE_NUM = 1,       /* announces to send */
> ++#else
> +       /* 1-2 seconds between probes */
> +       PROBE_MIN = 1,
> +       PROBE_MAX = 2,
> +       PROBE_NUM = 3,          /* total probes to send */
> +       ANNOUNCE_INTERVAL = 2,  /* 2 seconds between announces */
> +       ANNOUNCE_NUM = 3,       /* announces to send */
> ++#endif
> ++
> +       /* if probe/announce sees a conflict, multiply
> RANDOM(NUM_CONFLICT) by... */
> +       CONFLICT_MULTIPLIER = 2,
> +       /* if we monitor and see a conflict, how long is defend state? */
> +--
> +2.25.1
> +
> diff --git a/meta/recipes-core/busybox/busybox_1.36.1.bb
> b/meta/recipes-core/busybox/busybox_1.36.1.bb
> index 06eb9eb999..3cc4796e05 100644
> --- a/meta/recipes-core/busybox/busybox_1.36.1.bb
> +++ b/meta/recipes-core/busybox/busybox_1.36.1.bb
> @@ -50,6 +50,7 @@ SRC_URI = "
> https://busybox.net/downloads/busybox-${PV}.tar.bz2;name=tarball \
>
> file://0001-libbb-sockaddr2str-ensure-only-printable-characters-.patch \
>
> file://0002-nslookup-sanitize-all-printed-strings-with-printable.patch \
>             file://start-stop-false.patch \
> +           file://0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch \
>             "
>  SRC_URI:append:libc-musl = " file://musl.cfg "
>  # TODO
> http://lists.busybox.net/pipermail/busybox/2023-January/090078.html
> --
> 2.25.1
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#195039):
> https://lists.openembedded.org/g/openembedded-core/message/195039
> Mute This Topic: https://lists.openembedded.org/mt/104214735/1686489
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [
> alex.kanavin@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
>

[-- Attachment #2: Type: text/html, Size: 13124 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [master][PATCH] busybox: Use ISO 13400 timings in zcip
  2024-02-07 11:28 ` Alexander Kanavin
@ 2024-02-07 12:20   ` akash hadke
  2024-02-07 12:39     ` [OE-core] " Alexander Kanavin
  0 siblings, 1 reply; 6+ messages in thread
From: akash hadke @ 2024-02-07 12:20 UTC (permalink / raw)
  To: openembedded-core

[-- Attachment #1: Type: text/plain, Size: 269 bytes --]

Hello Alexander,

I thought of having this patch in yocto as it is improving the AutoIP allocation time on the system which uses busybox with zcip.
But if you think this is not a good option to have this patch in yocto we can wait till busybox upstream accepts it.

[-- Attachment #2: Type: text/html, Size: 281 bytes --]

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [OE-core] [master][PATCH] busybox: Use ISO 13400 timings in zcip
  2024-02-07 12:20   ` [master][PATCH] " akash hadke
@ 2024-02-07 12:39     ` Alexander Kanavin
  0 siblings, 0 replies; 6+ messages in thread
From: Alexander Kanavin @ 2024-02-07 12:39 UTC (permalink / raw)
  To: akash hadke; +Cc: openembedded-core

On Wed, 7 Feb 2024 at 13:20, akash hadke <akash.hadke27@gmail.com> wrote:
> I thought of having this patch in yocto as it is improving the AutoIP allocation time on the system which uses busybox with zcip.
> But if you think this is not a good option to have this patch in yocto we can wait till busybox upstream accepts it.

Basically, you need to justify the usefulness of the patch to the
general yocto community; specific use cases are better dealt with via
bbappends in product/domain layers.

Carrying patches has a maintenance cost: someone needs to understand
what it does, and how to rebase it correctly on version updates. We
can't be experts in all matters that components deal with, and this is
one of the more esoteric areas.

It becomes especially difficult if upstream rejects the patch: should
we remove it as well? Would that break someone's builds badly? Are we
expected to maintain the patch until the end of time? Backports are
far better than merely 'Submitted' patches for that reason.

Alex


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [oe-core][master][PATCH] busybox: Use ISO 13400 timings in zcip
  2024-02-07  7:51 [oe-core][master][PATCH] busybox: Use ISO 13400 timings in zcip Akash Hadke
  2024-02-07 11:28 ` Alexander Kanavin
@ 2024-02-09 14:17 ` Richard Purdie
       [not found]   ` <2143322.9o76ZdvQCi@arbeit>
  1 sibling, 1 reply; 6+ messages in thread
From: Richard Purdie @ 2024-02-09 14:17 UTC (permalink / raw)
  To: akash hadke, openembedded-core; +Cc: akash hadke, Jan-Simon Möller

On Wed, 2024-02-07 at 13:21 +0530, akash hadke wrote:
> From: akash hadke <akash.hadke@kpit.com>
> 
> Add below patch to support DoIP/ISO 13400 timings busybox zcip
> 
> 0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch
> 
> DoIP requires fast IP assignment, faster than what RFC 3927 can
> guarantee, and so it defines its' own AutoIP timing parameters
> 
> Add a compile-time option to use DoIP timing parameters instead of
> default RFC 3927 parameters. This option is useful for use of zcip in
> automotive use-cases. In pratice, it decreases AutoIP allocation time
> from ~10s to ~2s, at the expense of less resilience to collisions
> 
> Signed-off-by: akash hadke <akash.hadke@kpit.com>
> Signed-off-by: Akash Hadke <akash.hadke27@gmail.com>
> ---
>  ...d-support-for-DoIP-ISO-13400-timings.patch | 189 ++++++++++++++++++
>  meta/recipes-core/busybox/busybox_1.36.1.bb   |   1 +
>  2 files changed, 190 insertions(+)
>  create mode 100644 meta/recipes-core/busybox/busybox/0001-zcip-add-support-for-DoIP-ISO-13400-timings.patch

I think a few of us are torn on this. If it were accepted upstream, I'd
probably take it. Whilst it is still pending, I'm less sure.

Having "embedded" targeted features in OE-Core is desirable in many
ways. In this case the target usage is probably quite niche.

I'd like to see if anyone else would find this useful? Does AGL want to
use this for example?

If so, I'd probably merge, if not, it is probably something for your
layer. I am happy to see it submitted to upstream though.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [oe-core][master][PATCH] busybox: Use ISO 13400 timings in zcip
       [not found]   ` <2143322.9o76ZdvQCi@arbeit>
@ 2024-02-15 15:21     ` Richard Purdie
  0 siblings, 0 replies; 6+ messages in thread
From: Richard Purdie @ 2024-02-15 15:21 UTC (permalink / raw)
  To: Jan-Simon Möller, akash hadke, openembedded-core; +Cc: akash hadke

On Thu, 2024-02-15 at 16:06 +0100, Jan-Simon Möller wrote:
> Am Freitag, 9. Februar 2024, 15:17:13 CET schrieb Richard Purdie via 
> lists.openembedded.org:
> > On Wed, 2024-02-07 at 13:21 +0530, akash hadke wrote:
> > 
> > I think a few of us are torn on this. If it were accepted upstream, I'd
> > probably take it. Whilst it is still pending, I'm less sure.
> > 
> > Having "embedded" targeted features in OE-Core is desirable in many
> > ways. In this case the target usage is probably quite niche.
> > 
> > I'd like to see if anyone else would find this useful? Does AGL want to
> > use this for example?
> 
> We (AGL) would wait for upstream busybox feedback to 
> http://lists.busybox.net/pipermail/busybox/2024-February/090611.html 
> 
> And go from there.

Thanks, in that case I think OE-Core will follow on that as I don't
think this is going to be enabled to tested in most of our userbase.

Cheers,

Richard


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2024-02-15 15:21 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-02-07  7:51 [oe-core][master][PATCH] busybox: Use ISO 13400 timings in zcip Akash Hadke
2024-02-07 11:28 ` Alexander Kanavin
2024-02-07 12:20   ` [master][PATCH] " akash hadke
2024-02-07 12:39     ` [OE-core] " Alexander Kanavin
2024-02-09 14:17 ` [oe-core][master][PATCH] " Richard Purdie
     [not found]   ` <2143322.9o76ZdvQCi@arbeit>
2024-02-15 15:21     ` Richard Purdie

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox