lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Message-ID: <15326.1576104461@famine> Date: Wed, 11 Dec 2019 14:47:41 -0800 From: Jay Vosburgh <jay.vosburgh@...onical.com> To: Andy Roulin <aroulin@...ulusnetworks.com> cc: netdev@...r.kernel.org, dsahern@...il.com, nikolay@...ulusnetworks.com, roopa@...ulusnetworks.com, vfalico@...il.com, andy@...yhouse.net, stephen@...workplumber.org Subject: Re: [PATCH net-next v2] bonding: move 802.3ad port state flags to uapi Andy Roulin <aroulin@...ulusnetworks.com> wrote: >The bond slave actor/partner operating state is exported as >bitfield to userspace, which lacks a way to interpret it, e.g., >iproute2 only prints the state as a number: > >ad_actor_oper_port_state 15 > >For userspace to interpret the bitfield, the bitfield definitions >should be part of the uapi. The bitfield itself is defined in the >802.3ad standard. > >This commit moves the 802.3ad bitfield definitions to uapi. > >Related iproute2 patches, soon to be posted upstream, use the new uapi >headers to pretty-print bond slave state, e.g., with ip -d link show > >ad_actor_oper_port_state_str <active,short_timeout,aggregating,in_sync> > >Signed-off-by: Andy Roulin <aroulin@...ulusnetworks.com> >Acked-by: Roopa Prabhu <roopa@...ulusnetworks.com> Acked-by: Jay Vosburgh <jay.vosburgh@...onical.com> >--- > drivers/net/bonding/bond_3ad.c | 10 ---------- > include/uapi/linux/if_bonding.h | 10 ++++++++++ > 2 files changed, 10 insertions(+), 10 deletions(-) > >diff --git a/drivers/net/bonding/bond_3ad.c b/drivers/net/bonding/bond_3ad.c >index e3b25f310936..34bfe99641a3 100644 >--- a/drivers/net/bonding/bond_3ad.c >+++ b/drivers/net/bonding/bond_3ad.c >@@ -31,16 +31,6 @@ > #define AD_CHURN_DETECTION_TIME 60 > #define AD_AGGREGATE_WAIT_TIME 2 > >-/* Port state definitions (43.4.2.2 in the 802.3ad standard) */ >-#define AD_STATE_LACP_ACTIVITY 0x1 >-#define AD_STATE_LACP_TIMEOUT 0x2 >-#define AD_STATE_AGGREGATION 0x4 >-#define AD_STATE_SYNCHRONIZATION 0x8 >-#define AD_STATE_COLLECTING 0x10 >-#define AD_STATE_DISTRIBUTING 0x20 >-#define AD_STATE_DEFAULTED 0x40 >-#define AD_STATE_EXPIRED 0x80 >- > /* Port Variables definitions used by the State Machines (43.4.7 in the > * 802.3ad standard) > */ >diff --git a/include/uapi/linux/if_bonding.h b/include/uapi/linux/if_bonding.h >index 790585f0e61b..6829213a54c5 100644 >--- a/include/uapi/linux/if_bonding.h >+++ b/include/uapi/linux/if_bonding.h >@@ -95,6 +95,16 @@ > #define BOND_XMIT_POLICY_ENCAP23 3 /* encapsulated layer 2+3 */ > #define BOND_XMIT_POLICY_ENCAP34 4 /* encapsulated layer 3+4 */ > >+/* 802.3ad port state definitions (43.4.2.2 in the 802.3ad standard) */ >+#define AD_STATE_LACP_ACTIVITY 0x1 >+#define AD_STATE_LACP_TIMEOUT 0x2 >+#define AD_STATE_AGGREGATION 0x4 >+#define AD_STATE_SYNCHRONIZATION 0x8 >+#define AD_STATE_COLLECTING 0x10 >+#define AD_STATE_DISTRIBUTING 0x20 >+#define AD_STATE_DEFAULTED 0x40 >+#define AD_STATE_EXPIRED 0x80 >+ > typedef struct ifbond { > __s32 bond_mode; > __s32 num_slaves; >-- >2.20.1 >
Powered by blists - more mailing lists