daandemeyer / rpms / systemd

Forked from rpms/systemd 2 years ago
Clone
d63baa
From 88eca13f57194765d184ca227320df83f48020e2 Mon Sep 17 00:00:00 2001
d63baa
From: Anita Zhang <the.anitazha@gmail.com>
d63baa
Date: Fri, 24 Sep 2021 01:19:00 -0700
d63baa
Subject: [PATCH] link: connect 5 more properties to ethtool features
d63baa
d63baa
Sets up the follow properties and their corresponding ethtool feature:
d63baa
- ReceiveVLANCTAGHardwareAcceleration == rx-vlan-hw-parse (or rxvlan)
d63baa
- TransmitVLANCTAGHardwareAcceleration == tx-vlan-hw-insert (or txvlan)
d63baa
- ReceiveVLANCTAGFilter == rx-vlan-filter
d63baa
- TransmitVLANSTAGHardwareAcceleration == tx-vlan-stag-hw-insert
d63baa
- NTupleFilter == rx-ntuple-filter (or ntuple)
d63baa
---
d63baa
 man/systemd.link.xml                       |  35 +++++
d63baa
 src/udev/net/link-config-gperf.gperf       | 153 +++++++++++----------
d63baa
 test/fuzz/fuzz-link-parser/directives.link |   5 +
d63baa
 3 files changed, 119 insertions(+), 74 deletions(-)
d63baa
d63baa
diff --git a/man/systemd.link.xml b/man/systemd.link.xml
d63baa
index 638a1522cd38..c8d3c5137459 100644
d63baa
--- a/man/systemd.link.xml
d63baa
+++ b/man/systemd.link.xml
d63baa
@@ -715,6 +715,41 @@
d63baa
           When unset, the kernel's default will be used.</para>
d63baa
         </listitem>
d63baa
       </varlistentry>
d63baa
+      <varlistentry>
d63baa
+        <term><varname>ReceiveVLANCTAGHardwareAcceleration=</varname></term>
d63baa
+        <listitem>
d63baa
+          <para>Takes a boolean. If set to true, receive VLAN CTAG hardware acceleration is enabled.
d63baa
+          When unset, the kernel's default will be used.</para>
d63baa
+        </listitem>
d63baa
+      </varlistentry>
d63baa
+      <varlistentry>
d63baa
+        <term><varname>TransmitVLANCTAGHardwareAcceleration=</varname></term>
d63baa
+        <listitem>
d63baa
+          <para>Takes a boolean. If set to true, transmit VLAN CTAG hardware acceleration is enabled.
d63baa
+          When unset, the kernel's default will be used.</para>
d63baa
+        </listitem>
d63baa
+      </varlistentry>
d63baa
+      <varlistentry>
d63baa
+        <term><varname>ReceiveVLANCTAGFilter=</varname></term>
d63baa
+        <listitem>
d63baa
+          <para>Takes a boolean. If set to true, receive filtering on VLAN CTAGs is enabled.
d63baa
+          When unset, the kernel's default will be used.</para>
d63baa
+        </listitem>
d63baa
+      </varlistentry>
d63baa
+      <varlistentry>
d63baa
+        <term><varname>TransmitVLANSTAGHardwareAcceleration=</varname></term>
d63baa
+        <listitem>
d63baa
+          <para>Takes a boolean. If set to true, transmit VLAN STAG HW acceleration is enabled.
d63baa
+          When unset, the kernel's default will be used.</para>
d63baa
+        </listitem>
d63baa
+      </varlistentry>
d63baa
+      <varlistentry>
d63baa
+        <term><varname>NTupleFilter=</varname></term>
d63baa
+        <listitem>
d63baa
+          <para>Takes a boolean. If set to true, receive N-tuple filters and actions are enabled.
d63baa
+          When unset, the kernel's default will be used.</para>
d63baa
+        </listitem>
d63baa
+      </varlistentry>
d63baa
       <varlistentry>
d63baa
         <term><varname>RxChannels=</varname></term>
d63baa
         <term><varname>TxChannels=</varname></term>
d63baa
diff --git a/src/udev/net/link-config-gperf.gperf b/src/udev/net/link-config-gperf.gperf
d63baa
index e3cdaaee0509..04c255ce514c 100644
d63baa
--- a/src/udev/net/link-config-gperf.gperf
d63baa
+++ b/src/udev/net/link-config-gperf.gperf
d63baa
@@ -21,77 +21,82 @@ struct ConfigPerfItem;
d63baa
 %struct-type
d63baa
 %includes
d63baa
 %%
d63baa
-Match.MACAddress,                         config_parse_hwaddrs,                  0,                             offsetof(LinkConfig, match.mac)
d63baa
-Match.PermanentMACAddress,                config_parse_hwaddrs,                  0,                             offsetof(LinkConfig, match.permanent_mac)
d63baa
-Match.OriginalName,                       config_parse_match_ifnames,            0,                             offsetof(LinkConfig, match.ifname)
d63baa
-Match.Path,                               config_parse_match_strv,               0,                             offsetof(LinkConfig, match.path)
d63baa
-Match.Driver,                             config_parse_match_strv,               0,                             offsetof(LinkConfig, match.driver)
d63baa
-Match.Type,                               config_parse_match_strv,               0,                             offsetof(LinkConfig, match.iftype)
d63baa
-Match.Property,                           config_parse_match_property,           0,                             offsetof(LinkConfig, match.property)
d63baa
-Match.Host,                               config_parse_net_condition,            CONDITION_HOST,                offsetof(LinkConfig, conditions)
d63baa
-Match.Virtualization,                     config_parse_net_condition,            CONDITION_VIRTUALIZATION,      offsetof(LinkConfig, conditions)
d63baa
-Match.KernelCommandLine,                  config_parse_net_condition,            CONDITION_KERNEL_COMMAND_LINE, offsetof(LinkConfig, conditions)
d63baa
-Match.KernelVersion,                      config_parse_net_condition,            CONDITION_KERNEL_VERSION,      offsetof(LinkConfig, conditions)
d63baa
-Match.Architecture,                       config_parse_net_condition,            CONDITION_ARCHITECTURE,        offsetof(LinkConfig, conditions)
d63baa
-Link.Description,                         config_parse_string,                   0,                             offsetof(LinkConfig, description)
d63baa
-Link.MACAddressPolicy,                    config_parse_mac_address_policy,       0,                             offsetof(LinkConfig, mac_address_policy)
d63baa
-Link.MACAddress,                          config_parse_hwaddr,                   0,                             offsetof(LinkConfig, mac)
d63baa
-Link.NamePolicy,                          config_parse_name_policy,              0,                             offsetof(LinkConfig, name_policy)
d63baa
-Link.Name,                                config_parse_ifname,                   0,                             offsetof(LinkConfig, name)
d63baa
-Link.AlternativeName,                     config_parse_ifnames,                  IFNAME_VALID_ALTERNATIVE,      offsetof(LinkConfig, alternative_names)
d63baa
-Link.AlternativeNamesPolicy,              config_parse_alternative_names_policy, 0,                             offsetof(LinkConfig, alternative_names_policy)
d63baa
-Link.Alias,                               config_parse_ifalias,                  0,                             offsetof(LinkConfig, alias)
d63baa
-Link.TransmitQueues,                      config_parse_rx_tx_queues,             0,                             offsetof(LinkConfig, txqueues)
d63baa
-Link.ReceiveQueues,                       config_parse_rx_tx_queues,             0,                             offsetof(LinkConfig, rxqueues)
d63baa
-Link.TransmitQueueLength,                 config_parse_txqueuelen,               0,                             offsetof(LinkConfig, txqueuelen)
d63baa
-Link.MTUBytes,                            config_parse_mtu,                      AF_UNSPEC,                     offsetof(LinkConfig, mtu)
d63baa
-Link.BitsPerSecond,                       config_parse_si_uint64,                0,                             offsetof(LinkConfig, speed)
d63baa
-Link.Duplex,                              config_parse_duplex,                   0,                             offsetof(LinkConfig, duplex)
d63baa
-Link.AutoNegotiation,                     config_parse_tristate,                 0,                             offsetof(LinkConfig, autonegotiation)
d63baa
-Link.WakeOnLan,                           config_parse_wol,                      0,                             offsetof(LinkConfig, wol)
d63baa
-Link.Port,                                config_parse_port,                     0,                             offsetof(LinkConfig, port)
d63baa
-Link.ReceiveChecksumOffload,              config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_RXCSUM])
d63baa
-Link.TransmitChecksumOffload,             config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TXCSUM])
d63baa
-Link.GenericSegmentationOffload,          config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GSO])
d63baa
-Link.TCPSegmentationOffload,              config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TSO])
d63baa
-Link.TCP6SegmentationOffload,             config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TSO6])
d63baa
-Link.UDPSegmentationOffload,              config_parse_warn_compat,              DISABLED_LEGACY,               0
d63baa
-Link.GenericReceiveOffload,               config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GRO])
d63baa
-Link.GenericReceiveOffloadHardware,       config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GRO_HW])
d63baa
-Link.LargeReceiveOffload,                 config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_LRO])
d63baa
-Link.RxChannels,                          config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.rx)
d63baa
-Link.TxChannels,                          config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.tx)
d63baa
-Link.OtherChannels,                       config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.other)
d63baa
-Link.CombinedChannels,                    config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.combined)
d63baa
-Link.Advertise,                           config_parse_advertise,                0,                             offsetof(LinkConfig, advertise)
d63baa
-Link.RxBufferSize,                        config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx)
d63baa
-Link.RxMiniBufferSize,                    config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx_mini)
d63baa
-Link.RxJumboBufferSize,                   config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx_jumbo)
d63baa
-Link.TxBufferSize,                        config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.tx)
d63baa
-Link.RxFlowControl,                       config_parse_tristate,                 0,                             offsetof(LinkConfig, rx_flow_control)
d63baa
-Link.TxFlowControl,                       config_parse_tristate,                 0,                             offsetof(LinkConfig, tx_flow_control)
d63baa
-Link.AutoNegotiationFlowControl,          config_parse_tristate,                 0,                             offsetof(LinkConfig, autoneg_flow_control)
d63baa
-Link.GenericSegmentOffloadMaxBytes,       config_parse_iec_size,                 0,                             offsetof(LinkConfig, gso_max_size)
d63baa
-Link.GenericSegmentOffloadMaxSegments,    config_parse_uint32,                   0,                             offsetof(LinkConfig, gso_max_segments)
d63baa
-Link.RxCoalesceSec,                       config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs)
d63baa
-Link.RxMaxCoalescedFrames,                config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames)
d63baa
-Link.RxCoalesceIrqSec,                    config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_irq)
d63baa
-Link.RxMaxCoalescedIrqFrames,             config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_irq)
d63baa
-Link.TxCoalesceSec,                       config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs)
d63baa
-Link.TxMaxCoalescedFrames,                config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames)
d63baa
-Link.TxCoalesceIrqSec,                    config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_irq)
d63baa
-Link.TxMaxCoalescedIrqFrames,             config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_irq)
d63baa
-Link.StatisticsBlockCoalesceSec,          config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.stats_block_coalesce_usecs)
d63baa
-Link.UseAdaptiveRxCoalesce,               config_parse_tristate,                 0,                             offsetof(LinkConfig, coalesce.use_adaptive_rx_coalesce)
d63baa
-Link.UseAdaptiveTxCoalesce,               config_parse_tristate,                 0,                             offsetof(LinkConfig, coalesce.use_adaptive_tx_coalesce)
d63baa
-Link.CoalescePacketRateLow,               config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.pkt_rate_low)
d63baa
-Link.RxCoalesceLowSec,                    config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_low)
d63baa
-Link.RxMaxCoalescedLowFrames,             config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_low)
d63baa
-Link.TxCoalesceLowSec,                    config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_low)
d63baa
-Link.TxMaxCoalescedLowFrames,             config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_low)
d63baa
-Link.CoalescePacketRateHigh,              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.pkt_rate_high)
d63baa
-Link.RxCoalesceHighSec,                   config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_high)
d63baa
-Link.RxMaxCoalescedHighFrames,            config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_high)
d63baa
-Link.TxCoalesceHighSec,                   config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_high)
d63baa
-Link.TxMaxCoalescedHighFrames,            config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_high)
d63baa
-Link.CoalescePacketRateSampleIntervalSec, config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rate_sample_interval)
d63baa
+Match.MACAddress,                          config_parse_hwaddrs,                  0,                             offsetof(LinkConfig, match.mac)
d63baa
+Match.PermanentMACAddress,                 config_parse_hwaddrs,                  0,                             offsetof(LinkConfig, match.permanent_mac)
d63baa
+Match.OriginalName,                        config_parse_match_ifnames,            0,                             offsetof(LinkConfig, match.ifname)
d63baa
+Match.Path,                                config_parse_match_strv,               0,                             offsetof(LinkConfig, match.path)
d63baa
+Match.Driver,                              config_parse_match_strv,               0,                             offsetof(LinkConfig, match.driver)
d63baa
+Match.Type,                                config_parse_match_strv,               0,                             offsetof(LinkConfig, match.iftype)
d63baa
+Match.Property,                            config_parse_match_property,           0,                             offsetof(LinkConfig, match.property)
d63baa
+Match.Host,                                config_parse_net_condition,            CONDITION_HOST,                offsetof(LinkConfig, conditions)
d63baa
+Match.Virtualization,                      config_parse_net_condition,            CONDITION_VIRTUALIZATION,      offsetof(LinkConfig, conditions)
d63baa
+Match.KernelCommandLine,                   config_parse_net_condition,            CONDITION_KERNEL_COMMAND_LINE, offsetof(LinkConfig, conditions)
d63baa
+Match.KernelVersion,                       config_parse_net_condition,            CONDITION_KERNEL_VERSION,      offsetof(LinkConfig, conditions)
d63baa
+Match.Architecture,                        config_parse_net_condition,            CONDITION_ARCHITECTURE,        offsetof(LinkConfig, conditions)
d63baa
+Link.Description,                          config_parse_string,                   0,                             offsetof(LinkConfig, description)
d63baa
+Link.MACAddressPolicy,                     config_parse_mac_address_policy,       0,                             offsetof(LinkConfig, mac_address_policy)
d63baa
+Link.MACAddress,                           config_parse_hwaddr,                   0,                             offsetof(LinkConfig, mac)
d63baa
+Link.NamePolicy,                           config_parse_name_policy,              0,                             offsetof(LinkConfig, name_policy)
d63baa
+Link.Name,                                 config_parse_ifname,                   0,                             offsetof(LinkConfig, name)
d63baa
+Link.AlternativeName,                      config_parse_ifnames,                  IFNAME_VALID_ALTERNATIVE,      offsetof(LinkConfig, alternative_names)
d63baa
+Link.AlternativeNamesPolicy,               config_parse_alternative_names_policy, 0,                             offsetof(LinkConfig, alternative_names_policy)
d63baa
+Link.Alias,                                config_parse_ifalias,                  0,                             offsetof(LinkConfig, alias)
d63baa
+Link.TransmitQueues,                       config_parse_rx_tx_queues,             0,                             offsetof(LinkConfig, txqueues)
d63baa
+Link.ReceiveQueues,                        config_parse_rx_tx_queues,             0,                             offsetof(LinkConfig, rxqueues)
d63baa
+Link.TransmitQueueLength,                  config_parse_txqueuelen,               0,                             offsetof(LinkConfig, txqueuelen)
d63baa
+Link.MTUBytes,                             config_parse_mtu,                      AF_UNSPEC,                     offsetof(LinkConfig, mtu)
d63baa
+Link.BitsPerSecond,                        config_parse_si_uint64,                0,                             offsetof(LinkConfig, speed)
d63baa
+Link.Duplex,                               config_parse_duplex,                   0,                             offsetof(LinkConfig, duplex)
d63baa
+Link.AutoNegotiation,                      config_parse_tristate,                 0,                             offsetof(LinkConfig, autonegotiation)
d63baa
+Link.WakeOnLan,                            config_parse_wol,                      0,                             offsetof(LinkConfig, wol)
d63baa
+Link.Port,                                 config_parse_port,                     0,                             offsetof(LinkConfig, port)
d63baa
+Link.ReceiveChecksumOffload,               config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_RXCSUM])
d63baa
+Link.TransmitChecksumOffload,              config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TXCSUM])
d63baa
+Link.GenericSegmentationOffload,           config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GSO])
d63baa
+Link.TCPSegmentationOffload,               config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TSO])
d63baa
+Link.TCP6SegmentationOffload,              config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_TSO6])
d63baa
+Link.UDPSegmentationOffload,               config_parse_warn_compat,              DISABLED_LEGACY,               0
d63baa
+Link.GenericReceiveOffload,                config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GRO])
d63baa
+Link.GenericReceiveOffloadHardware,        config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_GRO_HW])
d63baa
+Link.LargeReceiveOffload,                  config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_LRO])
d63baa
+Link.ReceiveVLANCTAGHardwareAcceleration,  config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_HW_VLAN_CTAG_RX])
d63baa
+Link.TransmitVLANCTAGHardwareAcceleration, config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_HW_VLAN_CTAG_TX])
d63baa
+Link.ReceiveVLANCTAGFilter,                config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_HW_VLAN_CTAG_FILTER])
d63baa
+Link.TransmitVLANSTAGHardwareAcceleration, config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_HW_VLAN_STAG_TX])
d63baa
+Link.NTupleFilter,                         config_parse_tristate,                 0,                             offsetof(LinkConfig, features[NET_DEV_FEAT_NTUPLE])
d63baa
+Link.RxChannels,                           config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.rx)
d63baa
+Link.TxChannels,                           config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.tx)
d63baa
+Link.OtherChannels,                        config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.other)
d63baa
+Link.CombinedChannels,                     config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, channels.combined)
d63baa
+Link.Advertise,                            config_parse_advertise,                0,                             offsetof(LinkConfig, advertise)
d63baa
+Link.RxBufferSize,                         config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx)
d63baa
+Link.RxMiniBufferSize,                     config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx_mini)
d63baa
+Link.RxJumboBufferSize,                    config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.rx_jumbo)
d63baa
+Link.TxBufferSize,                         config_parse_ring_buffer_or_channel,   0,                             offsetof(LinkConfig, ring.tx)
d63baa
+Link.RxFlowControl,                        config_parse_tristate,                 0,                             offsetof(LinkConfig, rx_flow_control)
d63baa
+Link.TxFlowControl,                        config_parse_tristate,                 0,                             offsetof(LinkConfig, tx_flow_control)
d63baa
+Link.AutoNegotiationFlowControl,           config_parse_tristate,                 0,                             offsetof(LinkConfig, autoneg_flow_control)
d63baa
+Link.GenericSegmentOffloadMaxBytes,        config_parse_iec_size,                 0,                             offsetof(LinkConfig, gso_max_size)
d63baa
+Link.GenericSegmentOffloadMaxSegments,     config_parse_uint32,                   0,                             offsetof(LinkConfig, gso_max_segments)
d63baa
+Link.RxCoalesceSec,                        config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs)
d63baa
+Link.RxMaxCoalescedFrames,                 config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames)
d63baa
+Link.RxCoalesceIrqSec,                     config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_irq)
d63baa
+Link.RxMaxCoalescedIrqFrames,              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_irq)
d63baa
+Link.TxCoalesceSec,                        config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs)
d63baa
+Link.TxMaxCoalescedFrames,                 config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames)
d63baa
+Link.TxCoalesceIrqSec,                     config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_irq)
d63baa
+Link.TxMaxCoalescedIrqFrames,              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_irq)
d63baa
+Link.StatisticsBlockCoalesceSec,           config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.stats_block_coalesce_usecs)
d63baa
+Link.UseAdaptiveRxCoalesce,                config_parse_tristate,                 0,                             offsetof(LinkConfig, coalesce.use_adaptive_rx_coalesce)
d63baa
+Link.UseAdaptiveTxCoalesce,                config_parse_tristate,                 0,                             offsetof(LinkConfig, coalesce.use_adaptive_tx_coalesce)
d63baa
+Link.CoalescePacketRateLow,                config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.pkt_rate_low)
d63baa
+Link.RxCoalesceLowSec,                     config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_low)
d63baa
+Link.RxMaxCoalescedLowFrames,              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_low)
d63baa
+Link.TxCoalesceLowSec,                     config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_low)
d63baa
+Link.TxMaxCoalescedLowFrames,              config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_low)
d63baa
+Link.CoalescePacketRateHigh,               config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.pkt_rate_high)
d63baa
+Link.RxCoalesceHighSec,                    config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rx_coalesce_usecs_high)
d63baa
+Link.RxMaxCoalescedHighFrames,             config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.rx_max_coalesced_frames_high)
d63baa
+Link.TxCoalesceHighSec,                    config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.tx_coalesce_usecs_high)
d63baa
+Link.TxMaxCoalescedHighFrames,             config_parse_coalesce_u32,             0,                             offsetof(LinkConfig, coalesce.tx_max_coalesced_frames_high)
d63baa
+Link.CoalescePacketRateSampleIntervalSec,  config_parse_coalesce_sec,             0,                             offsetof(LinkConfig, coalesce.rate_sample_interval)
d63baa
diff --git a/test/fuzz/fuzz-link-parser/directives.link b/test/fuzz/fuzz-link-parser/directives.link
d63baa
index b5cffb1a271f..8be2434665a7 100644
d63baa
--- a/test/fuzz/fuzz-link-parser/directives.link
d63baa
+++ b/test/fuzz/fuzz-link-parser/directives.link
d63baa
@@ -38,6 +38,11 @@ UDPSegmentationOffload=
d63baa
 GenericReceiveOffload=
d63baa
 GenericReceiveOffloadHardware=
d63baa
 LargeReceiveOffload=
d63baa
+ReceiveVLANCTAGHardwareAcceleration=
d63baa
+TransmitVLANCTAGHardwareAcceleration=
d63baa
+ReceiveVLANCTAGFilter=
d63baa
+TransmitVLANSTAGHardwareAcceleration=
d63baa
+NTupleFilter=
d63baa
 RxChannels=
d63baa
 TxChannels=
d63baa
 OtherChannels=