lkml.org 
[lkml]   [2024]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    Subject[PATCH net-next v2 0/3] compiler_types: add Endianness-dependent __counted_by_{le,be}
    Date
    Some structures contain flexible arrays at the end and the counter for
    them, but the counter has explicit Endianness and thus __counted_by()
    can't be used directly.

    To increase test coverage for potential problems without breaking
    anything, introduce __counted_by_{le,be} defined depending on platform's
    Endianness to either __counted_by() when applicable or noop otherwise.
    The first user will be virtchnl2.h from idpf just as example with 9 flex
    structures having Little Endian counters.

    Maybe it would be a good idea to introduce such attributes on compiler
    level if possible, but for now let's stop on what we have.

    Alexander Lobakin (3):
    compiler_types: add Endianness-dependent __counted_by_{le,be}
    idpf: make virtchnl2.h self-contained
    idpf: sprinkle __counted_by{,_le}() in the virtchnl2 header

    Documentation/conf.py | 2 ++
    scripts/kernel-doc | 1 +
    include/linux/compiler_types.h | 11 ++++++++++
    drivers/net/ethernet/intel/idpf/idpf_txrx.h | 2 ++
    drivers/net/ethernet/intel/idpf/virtchnl2.h | 24 ++++++++++-----------
    5 files changed, 28 insertions(+), 12 deletions(-)

    ---
    From v1[0]:
    * fix compilation of #2 (Jakub);
    * pick Acked-bys (Gustavo).

    From RFC[1]:

    * teach kdoc new attributes (Simon, Kees);
    * add Acked-by (Kees);
    * fix a couple typos;
    * send to net-next (Kees).

    [0] https://lore.kernel.org/netdev/20240326164116.645718-1-aleksander.lobakin@intel.com
    [1] https://lore.kernel.org/netdev/20240318130354.2713265-1-aleksander.lobakin@intel.com
    --
    2.44.0


    \
     
     \ /
      Last update: 2024-05-27 16:12    [W:2.257 / U:0.004 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site