> 08/10/2021 22:45, Akhil Goyal: > > In struct rte_security_ipsec_sa_options, for every new option > > added, there is an ABI breakage, to avoid, a reserved_opts > > bitfield is added to for the remaining bits available in the > > structure. > > Now for every new sa option, these reserved_opts can be reduced > > and new option can be added. > > How do you make sure this field is initialized to 0? > Struct rte_security_ipsec_xform Is part of rte_security_capability as well As a configuration structure in session create. User, should ensure that if a device support that option(in capability), then only these options will take into effect or else it will be don't care for the PMD. The initial values of capabilities are set by PMD statically based on the features that it support. So if someone sets a bit in reserved_opts, it will work only if PMD support it And sets the corresponding field in capabilities. But yes, if a new field is added in future, and user sets the reserved_opts by mistake And the PMD supports that feature as well, then that feature will be enabled. This may or may not create issue depending on the feature which is enabled.
Should I add a note in the comments to clarify that reserved_opts should be set as 0 And future releases may change this without notice(But reserved in itself suggest that)? Adding an explicit check in session_create does not make sense to me. What do you suggest? Regards, Akhil