Class: Nl::Linux::Netdev::Messages::DoNapiSetRequest

Inherits:
Genl::Message show all
Defined in:
nl-linux/generated/nl/linux/netdev.rb

Overview

Set configurable NAPI instance settings.

Requires CAP_NET_ADMIN in the initial user namespace.

Constant Summary collapse

TYPE =
14
FIXED_HEADER =
nil
ATTRIBUTE_SET =
AttributeSets::Napi
ATTRIBUTES =
Ractor.make_shareable(%i[id defer_hard_irqs gro_flush_timeout irq_suspend_timeout threaded])

Instance Attribute Summary

Attributes included from StructuredPayload

#attributes, #fixed_header

Instance Method Summary collapse

Methods inherited from Genl::Message

decode

Methods inherited from Raw::Message

#append_attribute, decode, #initialize

Methods included from StructuredPayload

#encode, #initialize

Constructor Details

This class inherits a constructor from Nl::Raw::Message

Instance Method Details

#defer_hard_irqs ⇒ Integer

The number of consecutive empty polls before IRQ deferral ends and hardware IRQs are re-enabled.

Returns:

  • (Integer)

See Also:



2590
# File 'nl-linux/generated/nl/linux/netdev.rb', line 2590

def defer_hard_irqs; attributes[:"defer_hard_irqs"]&.value; end

#gro_flush_timeout ⇒ Integer

The timeout, in nanoseconds, of when to trigger the NAPI watchdog timer which schedules NAPI processing. Additionally, a non-zero value will also prevent GRO from flushing recent super-frames at the end of a NAPI cycle. This may add receive latency in exchange for reducing the number of frames processed by the network stack.

Returns:

  • (Integer)

See Also:



2595
# File 'nl-linux/generated/nl/linux/netdev.rb', line 2595

def gro_flush_timeout; attributes[:"gro_flush_timeout"]&.value; end

#id ⇒ Integer

ID of the NAPI instance.

Returns:

  • (Integer)

See Also:



2585
# File 'nl-linux/generated/nl/linux/netdev.rb', line 2585

def id; attributes[:"id"]&.value; end

#irq_suspend_timeout ⇒ Integer

The timeout, in nanoseconds, of how long to suspend irq processing, if event polling finds events

Returns:

  • (Integer)

See Also:



2600
# File 'nl-linux/generated/nl/linux/netdev.rb', line 2600

def irq_suspend_timeout; attributes[:"irq_suspend_timeout"]&.value; end

#threaded ⇒ Integer

Whether the NAPI is configured to operate in threaded polling mode. If this is set to enabled then the NAPI context operates in threaded polling mode. If this is set to busy-poll, then the threaded polling mode also busy polls.

Known enum values are defined in Enums::NapiThreaded.

Returns:

  • (Integer)

See Also:



2607
# File 'nl-linux/generated/nl/linux/netdev.rb', line 2607

def threaded; attributes[:"threaded"]&.value; end