• Alex Elder's avatar
    net: ipa: support more filtering endpoints · 0f97fbd4
    Alex Elder authored
    Prior to IPA v5.0, there could be no more than 32 endpoints.
    
    A filter table begins with a bitmap indicating which endpoints have
    a filter defined.  That bitmap is currently assumed to fit in a
    32-bit value.
    
    Starting with IPA v5.0, more than 32 endpoints are supported, so
    it's conceivable that a TX endpoint has an ID that exceeds 32.
    Increase the size of the field representing endpoints that support
    filtering to 64 bits.  Rename the bitmap field "filtered".
    
    Unlike other similar fields, we do not use an (arbitrarily long)
    Linux bitmap for this purpose.  The reason is that if a filter table
    ever *did* need to support more than 64 TX endpoints, its format
    would change in ways we can't anticipate.
    
    Have ipa_endpoint_init() return a negative errno rather than a mask
    that indicates which endpoints support filtering, and have that
    function assign the "filtered" field directly.
    Signed-off-by: default avatarAlex Elder <elder@linaro.org>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    0f97fbd4
ipa_endpoint.h 6.76 KB