vcap_operationsRegular
4.4: Absent ⚠️
4.8: Absent ⚠️
4.10: Absent ⚠️
4.13: Absent ⚠️
4.15: Absent ⚠️
4.18: Absent ⚠️
5.0: Absent ⚠️
5.3: Absent ⚠️
5.4: Absent ⚠️
5.8: Absent ⚠️
5.11: Absent ⚠️
5.13: Absent ⚠️
5.15: Absent ⚠️
5.19: Absent ⚠️
6.2: ✅struct vcap_operations {
enum vcap_keyfield_set (*validate_keyset)(struct net_device *, struct vcap_admin *, struct vcap_rule *, struct vcap_keyset_list *, u16);
void (*add_default_fields)(struct net_device *, struct vcap_admin *, struct vcap_rule *);
void (*cache_erase)(struct vcap_admin *);
void (*cache_write)(struct net_device *, struct vcap_admin *, enum vcap_selection, u32, u32);
void (*cache_read)(struct net_device *, struct vcap_admin *, enum vcap_selection, u32, u32);
void (*init)(struct net_device *, struct vcap_admin *, u32, u32);
void (*update)(struct net_device *, struct vcap_admin *, enum vcap_command, enum vcap_selection, u32);
void (*move)(struct net_device *, struct vcap_admin *, u32, int, int);
int (*port_info)(struct net_device *, struct vcap_admin *, struct vcap_output_print *);
int (*enable)(struct net_device *, struct vcap_admin *, bool);
};
6.5: ✅struct vcap_operations {
enum vcap_keyfield_set (*validate_keyset)(struct net_device *, struct vcap_admin *, struct vcap_rule *, struct vcap_keyset_list *, u16);
void (*add_default_fields)(struct net_device *, struct vcap_admin *, struct vcap_rule *);
void (*cache_erase)(struct vcap_admin *);
void (*cache_write)(struct net_device *, struct vcap_admin *, enum vcap_selection, u32, u32);
void (*cache_read)(struct net_device *, struct vcap_admin *, enum vcap_selection, u32, u32);
void (*init)(struct net_device *, struct vcap_admin *, u32, u32);
void (*update)(struct net_device *, struct vcap_admin *, enum vcap_command, enum vcap_selection, u32);
void (*move)(struct net_device *, struct vcap_admin *, u32, int, int);
int (*port_info)(struct net_device *, struct vcap_admin *, struct vcap_output_print *);
};
6.8: ✅struct vcap_operations {
enum vcap_keyfield_set (*validate_keyset)(struct net_device *, struct vcap_admin *, struct vcap_rule *, struct vcap_keyset_list *, u16);
void (*add_default_fields)(struct net_device *, struct vcap_admin *, struct vcap_rule *);
void (*cache_erase)(struct vcap_admin *);
void (*cache_write)(struct net_device *, struct vcap_admin *, enum vcap_selection, u32, u32);
void (*cache_read)(struct net_device *, struct vcap_admin *, enum vcap_selection, u32, u32);
void (*init)(struct net_device *, struct vcap_admin *, u32, u32);
void (*update)(struct net_device *, struct vcap_admin *, enum vcap_command, enum vcap_selection, u32);
void (*move)(struct net_device *, struct vcap_admin *, u32, int, int);
int (*port_info)(struct net_device *, struct vcap_admin *, struct vcap_output_print *);
};
arm64: Absent ⚠️
armhf: Absent ⚠️
ppc64el: Absent ⚠️
riscv64: Absent ⚠️
aws: Absent ⚠️
azure: Absent ⚠️
gcp: Absent ⚠️
lowlatency: Absent ⚠️
Regular
6.2 and 6.5 ⚠️int (*enable)(struct net_device *, struct vcap_admin *, bool)
6.5 and 6.8 ✅