diff options
| author | Jakub Kicinski <[email protected]> | 2025-05-05 16:52:06 +0000 |
|---|---|---|
| committer | Jakub Kicinski <[email protected]> | 2025-05-08 01:21:25 +0000 |
| commit | b8ae9f70aaf134dc57f227fd1730b64ce89e109d (patch) | |
| tree | f7c3b66c647c04c4657e7ccc7f7411249de8dee2 /tools/testing/selftests/drivers/net/hw/lib/py | |
| parent | tools: ynl-gen: rename basic presence from 'bit' to 'present' (diff) | |
| download | kernel-b8ae9f70aaf134dc57f227fd1730b64ce89e109d.tar.gz kernel-b8ae9f70aaf134dc57f227fd1730b64ce89e109d.zip | |
tools: ynl-gen: split presence metadata
Each YNL struct contains the data and a sub-struct indicating which
fields are valid. Something like:
struct family_op_req {
struct {
u32 a:1;
u32 b:1;
u32 bin_len;
} _present;
u32 a;
u64 b;
const unsigned char *bin;
};
Note that the bin object 'bin' has a length stored, and that length
has a _len suffix added to the field name. This breaks if there
is a explicit field called bin_len, which is the case for some
TC actions. Move the length fields out of the _present struct,
create a new struct called _len:
struct family_op_req {
struct {
u32 a:1;
u32 b:1;
} _present;
struct {
u32 bin;
} _len;
u32 a;
u64 b;
const unsigned char *bin;
};
This should prevent name collisions and help with the packing
of the struct.
Unfortunately this is a breaking change, but hopefully the migration
isn't too painful.
Link: https://patch.msgid.link/[email protected]
Signed-off-by: Jakub Kicinski <[email protected]>
Diffstat (limited to 'tools/testing/selftests/drivers/net/hw/lib/py')
0 files changed, 0 insertions, 0 deletions
