From: Saeed Mahameed > Sent: 31 January 2017 20:59 > From: Or Gerlitz <ogerl...@mellanox.com> > > For some reason, sparse doesn't like using an expression of type (!x) > with a bitwise | and &. In order to mitigate that, we use a local > variable. > > Since getting a typeof(bitfield) is incorrect, we cast such cases. ... > + MLX5_SET(fte_match_set_lyr_2_4, headers_c, first_prio, > (u8)mask->vlan_priority);
Ugg nasty casts... ... > #define MLX5_SET(typ, p, fld, v) do { \ > + typeof(v) _v = v; \ .. Why not just 'unsigned int _v = v; David