__  __    __   __  _____      _            _          _____ _          _ _ 
 |  \/  |   \ \ / / |  __ \    (_)          | |        / ____| |        | | |
 | \  / |_ __\ V /  | |__) | __ ___   ____ _| |_ ___  | (___ | |__   ___| | |
 | |\/| | '__|> <   |  ___/ '__| \ \ / / _` | __/ _ \  \___ \| '_ \ / _ \ | |
 | |  | | |_ / . \  | |   | |  | |\ V / (_| | ||  __/  ____) | | | |  __/ | |
 |_|  |_|_(_)_/ \_\ |_|   |_|  |_| \_/ \__,_|\__\___| |_____/|_| |_|\___V 2.1
 if you need WebShell for Seo everyday contact me on Telegram
 Telegram Address : @jackleet
        
        
For_More_Tools: Telegram: @jackleet | Bulk Smtp support mail sender | Business Mail Collector | Mail Bouncer All Mail | Bulk Office Mail Validator | Html Letter private



Upload:

Command:

www-data@216.73.217.121: ~ $
<!DOCTYPE html>

<html lang="en" data-content_root="../../">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" /><meta name="viewport" content="width=device-width, initial-scale=1" />

    <title>Family netdev netlink specification &#8212; The Linux Kernel  documentation</title>
    <link rel="stylesheet" type="text/css" href="../../_static/pygments.css?v=fa44fd50" />
    <link rel="stylesheet" type="text/css" href="../../_static/alabaster.css?v=3918102e" />
    <script src="../../_static/documentation_options.js?v=5929fcd5"></script>
    <script src="../../_static/doctools.js?v=9bcbadda"></script>
    <script src="../../_static/sphinx_highlight.js?v=dc90522c"></script>
    <link rel="index" title="Index" href="../../genindex.html" />
    <link rel="search" title="Search" href="../../search.html" />
    <link rel="next" title="Family nfsd netlink specification" href="nfsd.html" />
    <link rel="prev" title="Family net-shaper netlink specification" href="net_shaper.html" />
   
  <link rel="stylesheet" href="../../_static/custom.css" type="text/css" />
  

  
  

  </head><body>
  <div class="document">
    
      <div class="sphinxsidebar" role="navigation" aria-label="Main">
        <div class="sphinxsidebarwrapper">
            <p class="logo"><a href="../../index.html">
              <img class="logo" src="../../_static/logo.svg" alt="Logo of The Linux Kernel"/>
            </a></p>
<h1 class="logo"><a href="../../index.html">The Linux Kernel</a></h1>



<p class="blurb">6.18.50</p>







<search id="searchbox" style="display: none" role="search">
  <h3 id="searchlabel">Quick search</h3>
    <div class="searchformwrapper">
    <form class="search" action="../../search.html" method="get">
      <input type="text" name="q" aria-labelledby="searchlabel" autocomplete="off" autocorrect="off" autocapitalize="off" spellcheck="false"/>
      <input type="submit" value="Go" />
    </form>
    </div>
</search>
<script>document.getElementById('searchbox').style.display = "block"</script>


<p>
<h3 class="kernel-toc-contents">Contents</h3>
<input type="checkbox" class="kernel-toc-toggle" id = "kernel-toc-toggle" checked>
<label class="kernel-toc-title" for="kernel-toc-toggle"></label>

<div class="kerneltoc" id="kerneltoc">
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../process/development-process.html">Development process</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/submitting-patches.html">Submitting patches</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/code-of-conduct.html">Code of conduct</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../maintainer/index.html">Maintainer handbook</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../process/index.html">All development-process docs</a></li>
</ul>
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="../../core-api/index.html">Core API</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../driver-api/index.html">Driver APIs</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="../../subsystem-apis.html">Subsystems</a><ul class="current">
<li class="toctree-l2"><a class="reference internal" href="../../subsystem-apis.html#core-subsystems">Core subsystems</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../subsystem-apis.html#human-interfaces">Human interfaces</a></li>
<li class="toctree-l2 current"><a class="reference internal" href="../../subsystem-apis.html#networking-interfaces">Networking interfaces</a><ul class="current">
<li class="toctree-l3 current"><a class="reference internal" href="../../networking/index.html">Networking</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../netlabel/index.html">NetLabel</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../infiniband/index.html">InfiniBand</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../isdn/index.html">ISDN</a></li>
<li class="toctree-l3"><a class="reference internal" href="../../mhi/index.html">MHI</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="../../subsystem-apis.html#storage-interfaces">Storage interfaces</a></li>
<li class="toctree-l2"><a class="reference internal" href="../../subsystem-apis.html#other-subsystems">Other subsystems</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="../../locking/index.html">Locking</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../process/license-rules.html">Licensing rules</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../doc-guide/index.html">Writing documentation</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../dev-tools/index.html">Development tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../dev-tools/testing-overview.html">Testing guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../kernel-hacking/index.html">Hacking guide</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../trace/index.html">Tracing</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../fault-injection/index.html">Fault injection</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../livepatch/index.html">Livepatching</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../rust/index.html">Rust</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../admin-guide/index.html">Administration</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../kbuild/index.html">Build system</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../admin-guide/reporting-issues.html">Reporting issues</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../tools/index.html">Userspace tools</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../userspace-api/index.html">Userspace API</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../firmware-guide/index.html">Firmware</a></li>
<li class="toctree-l1"><a class="reference internal" href="../../devicetree/index.html">Firmware and Devicetree</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../arch/index.html">CPU architectures</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../staging/index.html">Unsorted documentation</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="../../translations/index.html">Translations</a></li>
</ul>

</div>

<script type="text/javascript"> <!--
  var sbar = document.getElementsByClassName("sphinxsidebar")[0];
  let currents = document.getElementsByClassName("current")
  if (currents.length) {
    sbar.scrollTop = currents[currents.length - 1].offsetTop;
  }
  --> </script>
  <div role="note" aria-label="source link">
    <h3>This Page</h3>
    <ul class="this-page-menu">
      <li><a href="../../_sources/netlink/specs/netdev.yaml.txt"
            rel="nofollow">Show Source</a></li>
    </ul>
   </div>
        </div>
      </div>
      <div class="documentwrapper">
        <div class="bodywrapper">
          

          <div class="body" role="main">
            
  



<section id="family-netdev-netlink-specification">
<span id="netlink-netdev"></span><h1><a class="toc-backref" href="#id11" role="doc-backlink">Family <code class="docutils literal notranslate"><span class="pre">netdev</span></code> netlink specification</a><a class="headerlink" href="#family-netdev-netlink-specification" title="Link to this heading">¶</a></h1>
<nav class="contents" id="contents">
<p class="topic-title">Contents</p>
<ul class="simple">
<li><p><a class="reference internal" href="#family-netdev-netlink-specification" id="id11">Family <code class="docutils literal notranslate"><span class="pre">netdev</span></code> netlink specification</a></p>
<ul>
<li><p><a class="reference internal" href="#summary" id="id12">Summary</a></p></li>
<li><p><a class="reference internal" href="#operations" id="id13">Operations</a></p>
<ul>
<li><p><a class="reference internal" href="#dev-get" id="id14">dev-get</a></p></li>
<li><p><a class="reference internal" href="#dev-add-ntf" id="id15">dev-add-ntf</a></p></li>
<li><p><a class="reference internal" href="#dev-del-ntf" id="id16">dev-del-ntf</a></p></li>
<li><p><a class="reference internal" href="#dev-change-ntf" id="id17">dev-change-ntf</a></p></li>
<li><p><a class="reference internal" href="#page-pool-get" id="id18">page-pool-get</a></p></li>
<li><p><a class="reference internal" href="#page-pool-add-ntf" id="id19">page-pool-add-ntf</a></p></li>
<li><p><a class="reference internal" href="#page-pool-del-ntf" id="id20">page-pool-del-ntf</a></p></li>
<li><p><a class="reference internal" href="#page-pool-change-ntf" id="id21">page-pool-change-ntf</a></p></li>
<li><p><a class="reference internal" href="#page-pool-stats-get" id="id22">page-pool-stats-get</a></p></li>
<li><p><a class="reference internal" href="#queue-get" id="id23">queue-get</a></p></li>
<li><p><a class="reference internal" href="#napi-get" id="id24">napi-get</a></p></li>
<li><p><a class="reference internal" href="#qstats-get" id="id25">qstats-get</a></p></li>
<li><p><a class="reference internal" href="#bind-rx" id="id26">bind-rx</a></p></li>
<li><p><a class="reference internal" href="#napi-set" id="id27">napi-set</a></p></li>
<li><p><a class="reference internal" href="#bind-tx" id="id28">bind-tx</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#multicast-groups" id="id29">Multicast groups</a></p></li>
<li><p><a class="reference internal" href="#definitions" id="id30">Definitions</a></p>
<ul>
<li><p><a class="reference internal" href="#xdp-act" id="id31">xdp-act</a></p></li>
<li><p><a class="reference internal" href="#xdp-rx-metadata" id="id32">xdp-rx-metadata</a></p></li>
<li><p><a class="reference internal" href="#xsk-flags" id="id33">xsk-flags</a></p></li>
<li><p><a class="reference internal" href="#queue-type" id="id34">queue-type</a></p></li>
<li><p><a class="reference internal" href="#qstats-scope" id="id35">qstats-scope</a></p></li>
<li><p><a class="reference internal" href="#napi-threaded" id="id36">napi-threaded</a></p></li>
</ul>
</li>
<li><p><a class="reference internal" href="#attribute-sets" id="id37">Attribute sets</a></p>
<ul>
<li><p><a class="reference internal" href="#dev" id="id38">dev</a></p></li>
<li><p><a class="reference internal" href="#io-uring-provider-info" id="id39">io-uring-provider-info</a></p></li>
<li><p><a class="reference internal" href="#page-pool" id="id40">page-pool</a></p></li>
<li><p><a class="reference internal" href="#page-pool-info" id="id41">page-pool-info</a></p></li>
<li><p><a class="reference internal" href="#page-pool-stats" id="id42">page-pool-stats</a></p></li>
<li><p><a class="reference internal" href="#napi" id="id43">napi</a></p></li>
<li><p><a class="reference internal" href="#xsk-info" id="id44">xsk-info</a></p></li>
<li><p><a class="reference internal" href="#queue" id="id45">queue</a></p></li>
<li><p><a class="reference internal" href="#qstats" id="id46">qstats</a></p></li>
<li><p><a class="reference internal" href="#queue-id" id="id47">queue-id</a></p></li>
<li><p><a class="reference internal" href="#dmabuf" id="id48">dmabuf</a></p></li>
</ul>
</li>
</ul>
</li>
</ul>
</nav>
<section id="summary">
<h2><a class="toc-backref" href="#id12" role="doc-backlink">Summary</a><a class="headerlink" href="#summary" title="Link to this heading">¶</a></h2>
<p>netdev configuration over generic netlink.</p>
</section>
<section id="operations">
<h2><a class="toc-backref" href="#id13" role="doc-backlink">Operations</a><a class="headerlink" href="#operations" title="Link to this heading">¶</a></h2>
<section id="dev-get">
<span id="netdev-operation-dev-get"></span><h3><a class="toc-backref" href="#id14" role="doc-backlink">dev-get</a><a class="headerlink" href="#dev-get" title="Link to this heading">¶</a></h3>
<p>Get / dump information about a netdev.</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-dev"><span class="std std-ref">dev</span></a></p>
</dd>
<dt class="field-even">do<span class="colon">:</span></dt>
<dd class="field-even"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">xdp-features</span></code>, <code class="docutils literal notranslate"><span class="pre">xdp-zc-max-segs</span></code>, <code class="docutils literal notranslate"><span class="pre">xdp-rx-metadata-features</span></code>, <code class="docutils literal notranslate"><span class="pre">xsk-features</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
<dt class="field-odd">dump<span class="colon">:</span></dt>
<dd class="field-odd"><dl class="simple">
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">xdp-features</span></code>, <code class="docutils literal notranslate"><span class="pre">xdp-zc-max-segs</span></code>, <code class="docutils literal notranslate"><span class="pre">xdp-rx-metadata-features</span></code>, <code class="docutils literal notranslate"><span class="pre">xsk-features</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="dev-add-ntf">
<span id="netdev-operation-dev-add-ntf"></span><h3><a class="toc-backref" href="#id15" role="doc-backlink">dev-add-ntf</a><a class="headerlink" href="#dev-add-ntf" title="Link to this heading">¶</a></h3>
<p>Notification about device appearing.</p>
<dl class="field-list simple">
<dt class="field-odd">notify<span class="colon">:</span></dt>
<dd class="field-odd"><p>dev-get</p>
</dd>
<dt class="field-even">mcgrp<span class="colon">:</span></dt>
<dd class="field-even"><p>mgmt</p>
</dd>
</dl>
</section>
<section id="dev-del-ntf">
<span id="netdev-operation-dev-del-ntf"></span><h3><a class="toc-backref" href="#id16" role="doc-backlink">dev-del-ntf</a><a class="headerlink" href="#dev-del-ntf" title="Link to this heading">¶</a></h3>
<p>Notification about device disappearing.</p>
<dl class="field-list simple">
<dt class="field-odd">notify<span class="colon">:</span></dt>
<dd class="field-odd"><p>dev-get</p>
</dd>
<dt class="field-even">mcgrp<span class="colon">:</span></dt>
<dd class="field-even"><p>mgmt</p>
</dd>
</dl>
</section>
<section id="dev-change-ntf">
<span id="netdev-operation-dev-change-ntf"></span><h3><a class="toc-backref" href="#id17" role="doc-backlink">dev-change-ntf</a><a class="headerlink" href="#dev-change-ntf" title="Link to this heading">¶</a></h3>
<p>Notification about device configuration being changed.</p>
<dl class="field-list simple">
<dt class="field-odd">notify<span class="colon">:</span></dt>
<dd class="field-odd"><p>dev-get</p>
</dd>
<dt class="field-even">mcgrp<span class="colon">:</span></dt>
<dd class="field-even"><p>mgmt</p>
</dd>
</dl>
</section>
<section id="page-pool-get">
<span id="netdev-operation-page-pool-get"></span><h3><a class="toc-backref" href="#id18" role="doc-backlink">page-pool-get</a><a class="headerlink" href="#page-pool-get" title="Link to this heading">¶</a></h3>
<p>Get / dump information about Page Pools.
(Only Page Pools associated with a net_device can be listed.)</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-page-pool"><span class="std std-ref">page-pool</span></a></p>
</dd>
<dt class="field-even">config-cond<span class="colon">:</span></dt>
<dd class="field-even"><p>page-pool</p>
</dd>
<dt class="field-odd">do<span class="colon">:</span></dt>
<dd class="field-odd"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>, <code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">napi-id</span></code>, <code class="docutils literal notranslate"><span class="pre">inflight</span></code>, <code class="docutils literal notranslate"><span class="pre">inflight-mem</span></code>, <code class="docutils literal notranslate"><span class="pre">detach-time</span></code>, <code class="docutils literal notranslate"><span class="pre">dmabuf</span></code>, <code class="docutils literal notranslate"><span class="pre">io-uring</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
<dt class="field-even">dump<span class="colon">:</span></dt>
<dd class="field-even"><dl class="simple">
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>, <code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">napi-id</span></code>, <code class="docutils literal notranslate"><span class="pre">inflight</span></code>, <code class="docutils literal notranslate"><span class="pre">inflight-mem</span></code>, <code class="docutils literal notranslate"><span class="pre">detach-time</span></code>, <code class="docutils literal notranslate"><span class="pre">dmabuf</span></code>, <code class="docutils literal notranslate"><span class="pre">io-uring</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="page-pool-add-ntf">
<span id="netdev-operation-page-pool-add-ntf"></span><h3><a class="toc-backref" href="#id19" role="doc-backlink">page-pool-add-ntf</a><a class="headerlink" href="#page-pool-add-ntf" title="Link to this heading">¶</a></h3>
<p>Notification about page pool appearing.</p>
<dl class="field-list simple">
<dt class="field-odd">notify<span class="colon">:</span></dt>
<dd class="field-odd"><p>page-pool-get</p>
</dd>
<dt class="field-even">mcgrp<span class="colon">:</span></dt>
<dd class="field-even"><p>page-pool</p>
</dd>
<dt class="field-odd">config-cond<span class="colon">:</span></dt>
<dd class="field-odd"><p>page-pool</p>
</dd>
</dl>
</section>
<section id="page-pool-del-ntf">
<span id="netdev-operation-page-pool-del-ntf"></span><h3><a class="toc-backref" href="#id20" role="doc-backlink">page-pool-del-ntf</a><a class="headerlink" href="#page-pool-del-ntf" title="Link to this heading">¶</a></h3>
<p>Notification about page pool disappearing.</p>
<dl class="field-list simple">
<dt class="field-odd">notify<span class="colon">:</span></dt>
<dd class="field-odd"><p>page-pool-get</p>
</dd>
<dt class="field-even">mcgrp<span class="colon">:</span></dt>
<dd class="field-even"><p>page-pool</p>
</dd>
<dt class="field-odd">config-cond<span class="colon">:</span></dt>
<dd class="field-odd"><p>page-pool</p>
</dd>
</dl>
</section>
<section id="page-pool-change-ntf">
<span id="netdev-operation-page-pool-change-ntf"></span><h3><a class="toc-backref" href="#id21" role="doc-backlink">page-pool-change-ntf</a><a class="headerlink" href="#page-pool-change-ntf" title="Link to this heading">¶</a></h3>
<p>Notification about page pool configuration being changed.</p>
<dl class="field-list simple">
<dt class="field-odd">notify<span class="colon">:</span></dt>
<dd class="field-odd"><p>page-pool-get</p>
</dd>
<dt class="field-even">mcgrp<span class="colon">:</span></dt>
<dd class="field-even"><p>page-pool</p>
</dd>
<dt class="field-odd">config-cond<span class="colon">:</span></dt>
<dd class="field-odd"><p>page-pool</p>
</dd>
</dl>
</section>
<section id="page-pool-stats-get">
<span id="netdev-operation-page-pool-stats-get"></span><h3><a class="toc-backref" href="#id22" role="doc-backlink">page-pool-stats-get</a><a class="headerlink" href="#page-pool-stats-get" title="Link to this heading">¶</a></h3>
<p>Get page pool statistics.</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-page-pool-stats"><span class="std std-ref">page-pool-stats</span></a></p>
</dd>
<dt class="field-even">config-cond<span class="colon">:</span></dt>
<dd class="field-even"><p>page-pool-stats</p>
</dd>
<dt class="field-odd">do<span class="colon">:</span></dt>
<dd class="field-odd"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">info</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">info</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-fast</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-slow</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-slow-high-order</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-empty</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-refill</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-waive</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-cached</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-cache-full</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-ring</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-ring-full</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-released-refcnt</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
<dt class="field-even">dump<span class="colon">:</span></dt>
<dd class="field-even"><dl class="simple">
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">info</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-fast</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-slow</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-slow-high-order</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-empty</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-refill</span></code>, <code class="docutils literal notranslate"><span class="pre">alloc-waive</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-cached</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-cache-full</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-ring</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-ring-full</span></code>, <code class="docutils literal notranslate"><span class="pre">recycle-released-refcnt</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="queue-get">
<span id="netdev-operation-queue-get"></span><h3><a class="toc-backref" href="#id23" role="doc-backlink">queue-get</a><a class="headerlink" href="#queue-get" title="Link to this heading">¶</a></h3>
<p>Get queue information from the kernel. Only configured queues will be reported (as opposed to all available hardware queues).</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-queue"><span class="std std-ref">queue</span></a></p>
</dd>
<dt class="field-even">do<span class="colon">:</span></dt>
<dd class="field-even"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">type</span></code>, <code class="docutils literal notranslate"><span class="pre">id</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>, <code class="docutils literal notranslate"><span class="pre">type</span></code>, <code class="docutils literal notranslate"><span class="pre">napi-id</span></code>, <code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">dmabuf</span></code>, <code class="docutils literal notranslate"><span class="pre">io-uring</span></code>, <code class="docutils literal notranslate"><span class="pre">xsk</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
<dt class="field-odd">dump<span class="colon">:</span></dt>
<dd class="field-odd"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>, <code class="docutils literal notranslate"><span class="pre">type</span></code>, <code class="docutils literal notranslate"><span class="pre">napi-id</span></code>, <code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">dmabuf</span></code>, <code class="docutils literal notranslate"><span class="pre">io-uring</span></code>, <code class="docutils literal notranslate"><span class="pre">xsk</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="napi-get">
<span id="netdev-operation-napi-get"></span><h3><a class="toc-backref" href="#id24" role="doc-backlink">napi-get</a><a class="headerlink" href="#napi-get" title="Link to this heading">¶</a></h3>
<p>Get information about NAPI instances configured on the system.</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-napi"><span class="std std-ref">napi</span></a></p>
</dd>
<dt class="field-even">do<span class="colon">:</span></dt>
<dd class="field-even"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>, <code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">irq</span></code>, <code class="docutils literal notranslate"><span class="pre">pid</span></code>, <code class="docutils literal notranslate"><span class="pre">defer-hard-irqs</span></code>, <code class="docutils literal notranslate"><span class="pre">gro-flush-timeout</span></code>, <code class="docutils literal notranslate"><span class="pre">irq-suspend-timeout</span></code>, <code class="docutils literal notranslate"><span class="pre">threaded</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
<dt class="field-odd">dump<span class="colon">:</span></dt>
<dd class="field-odd"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>, <code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">irq</span></code>, <code class="docutils literal notranslate"><span class="pre">pid</span></code>, <code class="docutils literal notranslate"><span class="pre">defer-hard-irqs</span></code>, <code class="docutils literal notranslate"><span class="pre">gro-flush-timeout</span></code>, <code class="docutils literal notranslate"><span class="pre">irq-suspend-timeout</span></code>, <code class="docutils literal notranslate"><span class="pre">threaded</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="qstats-get">
<span id="netdev-operation-qstats-get"></span><h3><a class="toc-backref" href="#id25" role="doc-backlink">qstats-get</a><a class="headerlink" href="#qstats-get" title="Link to this heading">¶</a></h3>
<p>Get / dump fine grained statistics. Which statistics are reported
depends on the device and the driver, and whether the driver stores
software counters per-queue.</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-qstats"><span class="std std-ref">qstats</span></a></p>
</dd>
<dt class="field-even">dump<span class="colon">:</span></dt>
<dd class="field-even"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">scope</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">queue-type</span></code>, <code class="docutils literal notranslate"><span class="pre">queue-id</span></code>, <code class="docutils literal notranslate"><span class="pre">rx-packets</span></code>, <code class="docutils literal notranslate"><span class="pre">rx-bytes</span></code>, <code class="docutils literal notranslate"><span class="pre">tx-packets</span></code>, <code class="docutils literal notranslate"><span class="pre">tx-bytes</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="bind-rx">
<span id="netdev-operation-bind-rx"></span><h3><a class="toc-backref" href="#id26" role="doc-backlink">bind-rx</a><a class="headerlink" href="#bind-rx" title="Link to this heading">¶</a></h3>
<p>Bind dmabuf to netdev</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-dmabuf"><span class="std std-ref">dmabuf</span></a></p>
</dd>
<dt class="field-even">flags<span class="colon">:</span></dt>
<dd class="field-even"><p>[<code class="docutils literal notranslate"><span class="pre">admin-perm</span></code>]</p>
</dd>
<dt class="field-odd">do<span class="colon">:</span></dt>
<dd class="field-odd"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">fd</span></code>, <code class="docutils literal notranslate"><span class="pre">queues</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="napi-set">
<span id="netdev-operation-napi-set"></span><h3><a class="toc-backref" href="#id27" role="doc-backlink">napi-set</a><a class="headerlink" href="#napi-set" title="Link to this heading">¶</a></h3>
<p>Set configurable NAPI instance settings.</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-napi"><span class="std std-ref">napi</span></a></p>
</dd>
<dt class="field-even">flags<span class="colon">:</span></dt>
<dd class="field-even"><p>[<code class="docutils literal notranslate"><span class="pre">admin-perm</span></code>]</p>
</dd>
<dt class="field-odd">do<span class="colon">:</span></dt>
<dd class="field-odd"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>, <code class="docutils literal notranslate"><span class="pre">defer-hard-irqs</span></code>, <code class="docutils literal notranslate"><span class="pre">gro-flush-timeout</span></code>, <code class="docutils literal notranslate"><span class="pre">irq-suspend-timeout</span></code>, <code class="docutils literal notranslate"><span class="pre">threaded</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="bind-tx">
<span id="netdev-operation-bind-tx"></span><h3><a class="toc-backref" href="#id28" role="doc-backlink">bind-tx</a><a class="headerlink" href="#bind-tx" title="Link to this heading">¶</a></h3>
<p>Bind dmabuf to netdev for TX</p>
<dl class="field-list simple">
<dt class="field-odd">attribute-set<span class="colon">:</span></dt>
<dd class="field-odd"><p><a class="reference internal" href="#netdev-attribute-set-dmabuf"><span class="std std-ref">dmabuf</span></a></p>
</dd>
<dt class="field-even">do<span class="colon">:</span></dt>
<dd class="field-even"><dl class="simple">
<dt><strong>request</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">ifindex</span></code>, <code class="docutils literal notranslate"><span class="pre">fd</span></code>]</p>
</dd>
</dl>
</dd>
<dt><strong>reply</strong></dt><dd><dl class="field-list simple">
<dt class="field-odd">attributes<span class="colon">:</span></dt>
<dd class="field-odd"><p>[<code class="docutils literal notranslate"><span class="pre">id</span></code>]</p>
</dd>
</dl>
</dd>
</dl>
</dd>
</dl>
</section>
</section>
<section id="multicast-groups">
<h2><a class="toc-backref" href="#id29" role="doc-backlink">Multicast groups</a><a class="headerlink" href="#multicast-groups" title="Link to this heading">¶</a></h2>
<ul class="simple">
<li><p>mgmt</p></li>
<li><p>page-pool</p></li>
</ul>
</section>
<section id="definitions">
<h2><a class="toc-backref" href="#id30" role="doc-backlink">Definitions</a><a class="headerlink" href="#definitions" title="Link to this heading">¶</a></h2>
<section id="xdp-act">
<span id="netdev-definition-xdp-act"></span><h3><a class="toc-backref" href="#id31" role="doc-backlink">xdp-act</a><a class="headerlink" href="#xdp-act" title="Link to this heading">¶</a></h3>
<dl class="field-list simple">
<dt class="field-odd">type<span class="colon">:</span></dt>
<dd class="field-odd"><p>flags</p>
</dd>
<dt class="field-even">entries<span class="colon">:</span></dt>
<dd class="field-even"><dl class="field-list simple">
<dt class="field-odd">basic<span class="colon">:</span></dt>
<dd class="field-odd"><p>XDP features set supported by all drivers (XDP_ABORTED, XDP_DROP, XDP_PASS, XDP_TX)</p>
</dd>
<dt class="field-even">redirect<span class="colon">:</span></dt>
<dd class="field-even"><p>The netdev supports XDP_REDIRECT</p>
</dd>
<dt class="field-odd">ndo-xmit<span class="colon">:</span></dt>
<dd class="field-odd"><p>This feature informs if netdev implements ndo_xdp_xmit callback.</p>
</dd>
<dt class="field-even">xsk-zerocopy<span class="colon">:</span></dt>
<dd class="field-even"><p>This feature informs if netdev supports AF_XDP in zero copy mode.</p>
</dd>
<dt class="field-odd">hw-offload<span class="colon">:</span></dt>
<dd class="field-odd"><p>This feature informs if netdev supports XDP hw offloading.</p>
</dd>
<dt class="field-even">rx-sg<span class="colon">:</span></dt>
<dd class="field-even"><p>This feature informs if netdev implements non-linear XDP buffer support in the driver napi callback.</p>
</dd>
<dt class="field-odd">ndo-xmit-sg<span class="colon">:</span></dt>
<dd class="field-odd"><p>This feature informs if netdev implements non-linear XDP buffer support in ndo_xdp_xmit callback.</p>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="xdp-rx-metadata">
<span id="netdev-definition-xdp-rx-metadata"></span><h3><a class="toc-backref" href="#id32" role="doc-backlink">xdp-rx-metadata</a><a class="headerlink" href="#xdp-rx-metadata" title="Link to this heading">¶</a></h3>
<dl class="field-list simple">
<dt class="field-odd">type<span class="colon">:</span></dt>
<dd class="field-odd"><p>flags</p>
</dd>
<dt class="field-even">entries<span class="colon">:</span></dt>
<dd class="field-even"><dl class="field-list simple">
<dt class="field-odd">timestamp<span class="colon">:</span></dt>
<dd class="field-odd"><p>Device is capable of exposing receive HW timestamp via <a class="reference internal" href="../../networking/xdp-rx-metadata.html#c.bpf_xdp_metadata_rx_timestamp" title="bpf_xdp_metadata_rx_timestamp"><code class="xref c c-func docutils literal notranslate"><span class="pre">bpf_xdp_metadata_rx_timestamp()</span></code></a>.</p>
</dd>
<dt class="field-even">hash<span class="colon">:</span></dt>
<dd class="field-even"><p>Device is capable of exposing receive packet hash via <a class="reference internal" href="../../networking/xdp-rx-metadata.html#c.bpf_xdp_metadata_rx_hash" title="bpf_xdp_metadata_rx_hash"><code class="xref c c-func docutils literal notranslate"><span class="pre">bpf_xdp_metadata_rx_hash()</span></code></a>.</p>
</dd>
<dt class="field-odd">vlan-tag<span class="colon">:</span></dt>
<dd class="field-odd"><p>Device is capable of exposing receive packet VLAN tag via <a class="reference internal" href="../../networking/xdp-rx-metadata.html#c.bpf_xdp_metadata_rx_vlan_tag" title="bpf_xdp_metadata_rx_vlan_tag"><code class="xref c c-func docutils literal notranslate"><span class="pre">bpf_xdp_metadata_rx_vlan_tag()</span></code></a>.</p>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="xsk-flags">
<span id="netdev-definition-xsk-flags"></span><h3><a class="toc-backref" href="#id33" role="doc-backlink">xsk-flags</a><a class="headerlink" href="#xsk-flags" title="Link to this heading">¶</a></h3>
<dl class="field-list simple">
<dt class="field-odd">type<span class="colon">:</span></dt>
<dd class="field-odd"><p>flags</p>
</dd>
<dt class="field-even">entries<span class="colon">:</span></dt>
<dd class="field-even"><dl class="field-list simple">
<dt class="field-odd">tx-timestamp<span class="colon">:</span></dt>
<dd class="field-odd"><p>HW timestamping egress packets is supported by the driver.</p>
</dd>
<dt class="field-even">tx-checksum<span class="colon">:</span></dt>
<dd class="field-even"><p>L3 checksum HW offload is supported by the driver.</p>
</dd>
<dt class="field-odd">tx-launch-time-fifo<span class="colon">:</span></dt>
<dd class="field-odd"><p>Launch time HW offload is supported by the driver.</p>
</dd>
</dl>
</dd>
</dl>
</section>
<section id="queue-type">
<span id="netdev-definition-queue-type"></span><h3><a class="toc-backref" href="#id34" role="doc-backlink">queue-type</a><a class="headerlink" href="#queue-type" title="Link to this heading">¶</a></h3>
<dl class="field-list simple">
<dt class="field-odd">type<span class="colon">:</span></dt>
<dd class="field-odd"><p>enum</p>
</dd>
<dt class="field-even">entries<span class="colon">:</span></dt>
<dd class="field-even"><ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">rx</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">tx</span></code></p></li>
</ul>
</dd>
</dl>
</section>
<section id="qstats-scope">
<span id="netdev-definition-qstats-scope"></span><h3><a class="toc-backref" href="#id35" role="doc-backlink">qstats-scope</a><a class="headerlink" href="#qstats-scope" title="Link to this heading">¶</a></h3>
<dl class="field-list simple">
<dt class="field-odd">type<span class="colon">:</span></dt>
<dd class="field-odd"><p>flags</p>
</dd>
<dt class="field-even">entries<span class="colon">:</span></dt>
<dd class="field-even"><ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">queue</span></code></p></li>
</ul>
</dd>
</dl>
</section>
<section id="napi-threaded">
<span id="netdev-definition-napi-threaded"></span><h3><a class="toc-backref" href="#id36" role="doc-backlink">napi-threaded</a><a class="headerlink" href="#napi-threaded" title="Link to this heading">¶</a></h3>
<dl class="field-list simple">
<dt class="field-odd">type<span class="colon">:</span></dt>
<dd class="field-odd"><p>enum</p>
</dd>
<dt class="field-even">entries<span class="colon">:</span></dt>
<dd class="field-even"><ul class="simple">
<li><p><code class="docutils literal notranslate"><span class="pre">disabled</span></code></p></li>
<li><p><code class="docutils literal notranslate"><span class="pre">enabled</span></code></p></li>
</ul>
</dd>
</dl>
</section>
</section>
<section id="attribute-sets">
<h2><a class="toc-backref" href="#id37" role="doc-backlink">Attribute sets</a><a class="headerlink" href="#attribute-sets" title="Link to this heading">¶</a></h2>
<section id="dev">
<span id="netdev-attribute-set-dev"></span><h3><a class="toc-backref" href="#id38" role="doc-backlink">dev</a><a class="headerlink" href="#dev" title="Link to this heading">¶</a></h3>
<section id="ifindex-u32">
<h4>ifindex (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#ifindex-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>netdev ifindex</p>
</dd>
</dl>
</section>
<section id="pad-pad">
<h4>pad (<code class="docutils literal notranslate"><span class="pre">pad</span></code>)<a class="headerlink" href="#pad-pad" title="Link to this heading">¶</a></h4>
</section>
<section id="xdp-features-u64">
<h4>xdp-features (<code class="docutils literal notranslate"><span class="pre">u64</span></code>)<a class="headerlink" href="#xdp-features-u64" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Bitmask of enabled xdp-features.</p>
</dd>
<dt class="field-even">enum<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-definition-xdp-act"><span class="std std-ref">xdp-act</span></a></p>
</dd>
</dl>
</section>
<section id="xdp-zc-max-segs-u32">
<h4>xdp-zc-max-segs (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#xdp-zc-max-segs-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>max fragment count supported by ZC driver</p>
</dd>
</dl>
</section>
<section id="xdp-rx-metadata-features-u64">
<h4>xdp-rx-metadata-features (<code class="docutils literal notranslate"><span class="pre">u64</span></code>)<a class="headerlink" href="#xdp-rx-metadata-features-u64" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Bitmask of supported XDP receive metadata features. See <a class="reference internal" href="../../networking/xdp-rx-metadata.html"><span class="doc">XDP RX Metadata</span></a> for more details.</p>
</dd>
<dt class="field-even">enum<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-definition-xdp-rx-metadata"><span class="std std-ref">xdp-rx-metadata</span></a></p>
</dd>
</dl>
</section>
<section id="xsk-features-u64">
<h4>xsk-features (<code class="docutils literal notranslate"><span class="pre">u64</span></code>)<a class="headerlink" href="#xsk-features-u64" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Bitmask of enabled AF_XDP features.</p>
</dd>
<dt class="field-even">enum<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-definition-xsk-flags"><span class="std std-ref">xsk-flags</span></a></p>
</dd>
</dl>
</section>
</section>
<section id="io-uring-provider-info">
<span id="netdev-attribute-set-io-uring-provider-info"></span><h3><a class="toc-backref" href="#id39" role="doc-backlink">io-uring-provider-info</a><a class="headerlink" href="#io-uring-provider-info" title="Link to this heading">¶</a></h3>
</section>
<section id="page-pool">
<span id="netdev-attribute-set-page-pool"></span><h3><a class="toc-backref" href="#id40" role="doc-backlink">page-pool</a><a class="headerlink" href="#page-pool" title="Link to this heading">¶</a></h3>
<section id="id-uint">
<h4>id (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#id-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Unique ID of a Page Pool instance.</p>
</dd>
</dl>
</section>
<section id="id1">
<h4>ifindex (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id1" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>ifindex of the netdev to which the pool belongs. May be reported as 0 if the page pool was allocated for a netdev which got destroyed already (page pools may outlast their netdevs because they wait for all memory to be returned).</p>
</dd>
</dl>
</section>
<section id="napi-id-uint">
<h4>napi-id (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#napi-id-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Id of NAPI using this Page Pool instance.</p>
</dd>
</dl>
</section>
<section id="inflight-uint">
<h4>inflight (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#inflight-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of outstanding references to this page pool (allocated but yet to be freed pages). Allocated pages may be held in socket receive queues, driver receive ring, page pool recycling ring, the page pool cache, etc.</p>
</dd>
</dl>
</section>
<section id="inflight-mem-uint">
<h4>inflight-mem (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#inflight-mem-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Amount of memory held by inflight pages.</p>
</dd>
</dl>
</section>
<section id="detach-time-uint">
<h4>detach-time (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#detach-time-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Seconds in CLOCK_BOOTTIME of when Page Pool was detached by the driver. Once detached Page Pool can no longer be used to allocate memory. Page Pools wait for all the memory allocated from them to be freed before truly disappearing. “Detached” Page Pools cannot be “re-attached”, they are just waiting to disappear. Attribute is absent if Page Pool has not been detached, and can still be used to allocate new memory.</p>
</dd>
</dl>
</section>
<section id="dmabuf-u32">
<h4>dmabuf (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#dmabuf-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>ID of the dmabuf this page-pool is attached to.</p>
</dd>
</dl>
</section>
<section id="io-uring-nest">
<h4>io-uring (<code class="docutils literal notranslate"><span class="pre">nest</span></code>)<a class="headerlink" href="#io-uring-nest" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>io-uring memory provider information.</p>
</dd>
<dt class="field-even">nested-attributes<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-attribute-set-io-uring-provider-info"><span class="std std-ref">io-uring-provider-info</span></a></p>
</dd>
</dl>
</section>
</section>
<section id="page-pool-info">
<span id="netdev-attribute-set-page-pool-info"></span><h3><a class="toc-backref" href="#id41" role="doc-backlink">page-pool-info</a><a class="headerlink" href="#page-pool-info" title="Link to this heading">¶</a></h3>
<section id="id">
<h4>id<a class="headerlink" href="#id" title="Link to this heading">¶</a></h4>
</section>
<section id="ifindex">
<h4>ifindex<a class="headerlink" href="#ifindex" title="Link to this heading">¶</a></h4>
</section>
</section>
<section id="page-pool-stats">
<span id="netdev-attribute-set-page-pool-stats"></span><h3><a class="toc-backref" href="#id42" role="doc-backlink">page-pool-stats</a><a class="headerlink" href="#page-pool-stats" title="Link to this heading">¶</a></h3>
<p>Page pool statistics, see docs for <a class="reference internal" href="../../networking/page_pool.html#c.page_pool_stats" title="page_pool_stats"><code class="xref c c-struct docutils literal notranslate"><span class="pre">struct</span> <span class="pre">page_pool_stats</span></code></a>
for information about individual statistics.</p>
<section id="info-nest">
<h4>info (<code class="docutils literal notranslate"><span class="pre">nest</span></code>)<a class="headerlink" href="#info-nest" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Page pool identifying information.</p>
</dd>
<dt class="field-even">nested-attributes<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-attribute-set-page-pool-info"><span class="std std-ref">page-pool-info</span></a></p>
</dd>
</dl>
</section>
<section id="alloc-fast-uint">
<h4>alloc-fast (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#alloc-fast-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">value<span class="colon">:</span></dt>
<dd class="field-odd"><p>8</p>
</dd>
</dl>
</section>
<section id="alloc-slow-uint">
<h4>alloc-slow (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#alloc-slow-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="alloc-slow-high-order-uint">
<h4>alloc-slow-high-order (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#alloc-slow-high-order-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="alloc-empty-uint">
<h4>alloc-empty (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#alloc-empty-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="alloc-refill-uint">
<h4>alloc-refill (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#alloc-refill-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="alloc-waive-uint">
<h4>alloc-waive (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#alloc-waive-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="recycle-cached-uint">
<h4>recycle-cached (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#recycle-cached-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="recycle-cache-full-uint">
<h4>recycle-cache-full (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#recycle-cache-full-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="recycle-ring-uint">
<h4>recycle-ring (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#recycle-ring-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="recycle-ring-full-uint">
<h4>recycle-ring-full (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#recycle-ring-full-uint" title="Link to this heading">¶</a></h4>
</section>
<section id="recycle-released-refcnt-uint">
<h4>recycle-released-refcnt (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#recycle-released-refcnt-uint" title="Link to this heading">¶</a></h4>
</section>
</section>
<section id="napi">
<span id="netdev-attribute-set-napi"></span><h3><a class="toc-backref" href="#id43" role="doc-backlink">napi</a><a class="headerlink" href="#napi" title="Link to this heading">¶</a></h3>
<section id="id2">
<h4>ifindex (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id2" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>ifindex of the netdevice to which NAPI instance belongs.</p>
</dd>
</dl>
</section>
<section id="id-u32">
<h4>id (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>ID of the NAPI instance.</p>
</dd>
</dl>
</section>
<section id="irq-u32">
<h4>irq (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#irq-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>The associated interrupt vector number for the napi</p>
</dd>
</dl>
</section>
<section id="pid-u32">
<h4>pid (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#pid-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>PID of the napi thread, if NAPI is configured to operate in threaded mode. If NAPI is not in threaded mode (i.e. uses normal softirq context), the attribute will be absent.</p>
</dd>
</dl>
</section>
<section id="defer-hard-irqs-u32">
<h4>defer-hard-irqs (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#defer-hard-irqs-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>The number of consecutive empty polls before IRQ deferral ends and hardware IRQs are re-enabled.</p>
</dd>
</dl>
</section>
<section id="gro-flush-timeout-uint">
<h4>gro-flush-timeout (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#gro-flush-timeout-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>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.</p>
</dd>
</dl>
</section>
<section id="irq-suspend-timeout-uint">
<h4>irq-suspend-timeout (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#irq-suspend-timeout-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>The timeout, in nanoseconds, of how long to suspend irq processing, if event polling finds events</p>
</dd>
</dl>
</section>
<section id="threaded-u32">
<h4>threaded (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#threaded-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>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.</p>
</dd>
<dt class="field-even">enum<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-definition-napi-threaded"><span class="std std-ref">napi-threaded</span></a></p>
</dd>
</dl>
</section>
</section>
<section id="xsk-info">
<span id="netdev-attribute-set-xsk-info"></span><h3><a class="toc-backref" href="#id44" role="doc-backlink">xsk-info</a><a class="headerlink" href="#xsk-info" title="Link to this heading">¶</a></h3>
</section>
<section id="queue">
<span id="netdev-attribute-set-queue"></span><h3><a class="toc-backref" href="#id45" role="doc-backlink">queue</a><a class="headerlink" href="#queue" title="Link to this heading">¶</a></h3>
<section id="id3">
<h4>id (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id3" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Queue index; most queue types are indexed like a C array, with indexes starting at 0 and ending at queue count - 1. Queue indexes are scoped to an interface and queue type.</p>
</dd>
</dl>
</section>
<section id="id4">
<h4>ifindex (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id4" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>ifindex of the netdevice to which the queue belongs.</p>
</dd>
</dl>
</section>
<section id="type-u32">
<h4>type (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#type-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Queue type as rx, tx. Each queue type defines a separate ID space. XDP TX queues allocated in the kernel are not linked to NAPIs and thus not listed. AF_XDP queues will have more information set in the xsk attribute.</p>
</dd>
<dt class="field-even">enum<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-definition-queue-type"><span class="std std-ref">queue-type</span></a></p>
</dd>
</dl>
</section>
<section id="napi-id-u32">
<h4>napi-id (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#napi-id-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>ID of the NAPI instance which services this queue.</p>
</dd>
</dl>
</section>
<section id="id5">
<h4>dmabuf (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id5" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>ID of the dmabuf attached to this queue, if any.</p>
</dd>
</dl>
</section>
<section id="id6">
<h4>io-uring (<code class="docutils literal notranslate"><span class="pre">nest</span></code>)<a class="headerlink" href="#id6" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>io_uring memory provider information.</p>
</dd>
<dt class="field-even">nested-attributes<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-attribute-set-io-uring-provider-info"><span class="std std-ref">io-uring-provider-info</span></a></p>
</dd>
</dl>
</section>
<section id="xsk-nest">
<h4>xsk (<code class="docutils literal notranslate"><span class="pre">nest</span></code>)<a class="headerlink" href="#xsk-nest" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>XSK information for this queue, if any.</p>
</dd>
<dt class="field-even">nested-attributes<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-attribute-set-xsk-info"><span class="std std-ref">xsk-info</span></a></p>
</dd>
</dl>
</section>
</section>
<section id="qstats">
<span id="netdev-attribute-set-qstats"></span><h3><a class="toc-backref" href="#id46" role="doc-backlink">qstats</a><a class="headerlink" href="#qstats" title="Link to this heading">¶</a></h3>
<p>Get device statistics, scoped to a device or a queue.
These statistics extend (and partially duplicate) statistics available
in <a class="reference internal" href="../../networking/statistics.html#c.rtnl_link_stats64" title="rtnl_link_stats64"><code class="xref c c-struct docutils literal notranslate"><span class="pre">struct</span> <span class="pre">rtnl_link_stats64</span></code></a>.
Value of the <cite>scope</cite> attribute determines how statistics are
aggregated. When aggregated for the entire device the statistics
represent the total number of events since last explicit reset of
the device (i.e. not a reconfiguration like changing queue count).
When reported per-queue, however, the statistics may not add
up to the total number of events, will only be reported for currently
active objects, and will likely report the number of events since last
reconfiguration.</p>
<section id="id7">
<h4>ifindex (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id7" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>ifindex of the netdevice to which stats belong.</p>
</dd>
</dl>
</section>
<section id="queue-type-u32">
<h4>queue-type (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#queue-type-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Queue type as rx, tx, for queue-id.</p>
</dd>
<dt class="field-even">enum<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-definition-queue-type"><span class="std std-ref">queue-type</span></a></p>
</dd>
</dl>
</section>
<section id="queue-id-u32">
<h4>queue-id (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#queue-id-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Queue ID, if stats are scoped to a single queue instance.</p>
</dd>
</dl>
</section>
<section id="scope-uint">
<h4>scope (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#scope-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>What object type should be used to iterate over the stats.</p>
</dd>
<dt class="field-even">enum<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-definition-qstats-scope"><span class="std std-ref">qstats-scope</span></a></p>
</dd>
</dl>
</section>
<section id="rx-packets-uint">
<h4>rx-packets (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-packets-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of wire packets successfully received and passed to the stack. For drivers supporting XDP, XDP is considered the first layer of the stack, so packets consumed by XDP are still counted here.</p>
</dd>
<dt class="field-even">value<span class="colon">:</span></dt>
<dd class="field-even"><p>8</p>
</dd>
</dl>
</section>
<section id="rx-bytes-uint">
<h4>rx-bytes (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-bytes-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Successfully received bytes, see <cite>rx-packets</cite>.</p>
</dd>
</dl>
</section>
<section id="tx-packets-uint">
<h4>tx-packets (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-packets-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of wire packets successfully sent. Packet is considered to be successfully sent once it is in device memory (usually this means the device has issued a DMA completion for the packet).</p>
</dd>
</dl>
</section>
<section id="tx-bytes-uint">
<h4>tx-bytes (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-bytes-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Successfully sent bytes, see <cite>tx-packets</cite>.</p>
</dd>
</dl>
</section>
<section id="rx-alloc-fail-uint">
<h4>rx-alloc-fail (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-alloc-fail-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of times skb or buffer allocation failed on the Rx datapath. Allocation failure may, or may not result in a packet drop, depending on driver implementation and whether system recovers quickly.</p>
</dd>
</dl>
</section>
<section id="rx-hw-drops-uint">
<h4>rx-hw-drops (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-hw-drops-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of all packets which entered the device, but never left it, including but not limited to: packets dropped due to lack of buffer space, processing errors, explicit or implicit policies and packet filters.</p>
</dd>
</dl>
</section>
<section id="rx-hw-drop-overruns-uint">
<h4>rx-hw-drop-overruns (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-hw-drop-overruns-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets dropped due to transient lack of resources, such as buffer space, host descriptors etc.</p>
</dd>
</dl>
</section>
<section id="rx-csum-complete-uint">
<h4>rx-csum-complete (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-csum-complete-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that were marked as CHECKSUM_COMPLETE.</p>
</dd>
</dl>
</section>
<section id="rx-csum-unnecessary-uint">
<h4>rx-csum-unnecessary (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-csum-unnecessary-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that were marked as CHECKSUM_UNNECESSARY.</p>
</dd>
</dl>
</section>
<section id="rx-csum-none-uint">
<h4>rx-csum-none (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-csum-none-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that were not checksummed by device.</p>
</dd>
</dl>
</section>
<section id="rx-csum-bad-uint">
<h4>rx-csum-bad (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-csum-bad-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets with bad checksum. The packets are not discarded, but still delivered to the stack.</p>
</dd>
</dl>
</section>
<section id="rx-hw-gro-packets-uint">
<h4>rx-hw-gro-packets (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-hw-gro-packets-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that were coalesced from smaller packets by the device. Counts only packets coalesced with the HW-GRO netdevice feature, LRO-coalesced packets are not counted.</p>
</dd>
</dl>
</section>
<section id="rx-hw-gro-bytes-uint">
<h4>rx-hw-gro-bytes (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-hw-gro-bytes-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>See <cite>rx-hw-gro-packets</cite>.</p>
</dd>
</dl>
</section>
<section id="rx-hw-gro-wire-packets-uint">
<h4>rx-hw-gro-wire-packets (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-hw-gro-wire-packets-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that were coalesced to bigger packetss with the HW-GRO netdevice feature. LRO-coalesced packets are not counted.</p>
</dd>
</dl>
</section>
<section id="rx-hw-gro-wire-bytes-uint">
<h4>rx-hw-gro-wire-bytes (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-hw-gro-wire-bytes-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>See <cite>rx-hw-gro-wire-packets</cite>.</p>
</dd>
</dl>
</section>
<section id="rx-hw-drop-ratelimits-uint">
<h4>rx-hw-drop-ratelimits (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#rx-hw-drop-ratelimits-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of the packets dropped by the device due to the received packets bitrate exceeding the device rate limit.</p>
</dd>
</dl>
</section>
<section id="tx-hw-drops-uint">
<h4>tx-hw-drops (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-hw-drops-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that arrived at the device but never left it, encompassing packets dropped for reasons such as processing errors, as well as those affected by explicitly defined policies and packet filtering criteria.</p>
</dd>
</dl>
</section>
<section id="tx-hw-drop-errors-uint">
<h4>tx-hw-drop-errors (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-hw-drop-errors-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets dropped because they were invalid or malformed.</p>
</dd>
</dl>
</section>
<section id="tx-csum-none-uint">
<h4>tx-csum-none (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-csum-none-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that did not require the device to calculate the checksum.</p>
</dd>
</dl>
</section>
<section id="tx-needs-csum-uint">
<h4>tx-needs-csum (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-needs-csum-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that required the device to calculate the checksum. This counter includes the number of GSO wire packets for which device calculated the L4 checksum.</p>
</dd>
</dl>
</section>
<section id="tx-hw-gso-packets-uint">
<h4>tx-hw-gso-packets (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-hw-gso-packets-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of packets that necessitated segmentation into smaller packets by the device.</p>
</dd>
</dl>
</section>
<section id="tx-hw-gso-bytes-uint">
<h4>tx-hw-gso-bytes (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-hw-gso-bytes-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>See <cite>tx-hw-gso-packets</cite>.</p>
</dd>
</dl>
</section>
<section id="tx-hw-gso-wire-packets-uint">
<h4>tx-hw-gso-wire-packets (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-hw-gso-wire-packets-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of wire-sized packets generated by processing <cite>tx-hw-gso-packets</cite></p>
</dd>
</dl>
</section>
<section id="tx-hw-gso-wire-bytes-uint">
<h4>tx-hw-gso-wire-bytes (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-hw-gso-wire-bytes-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>See <cite>tx-hw-gso-wire-packets</cite>.</p>
</dd>
</dl>
</section>
<section id="tx-hw-drop-ratelimits-uint">
<h4>tx-hw-drop-ratelimits (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-hw-drop-ratelimits-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of the packets dropped by the device due to the transmit packets bitrate exceeding the device rate limit.</p>
</dd>
</dl>
</section>
<section id="tx-stop-uint">
<h4>tx-stop (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-stop-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of times driver paused accepting new tx packets from the stack to this queue, because the queue was full. Note that if BQL is supported and enabled on the device the networking stack will avoid queuing a lot of data at once.</p>
</dd>
</dl>
</section>
<section id="tx-wake-uint">
<h4>tx-wake (<code class="docutils literal notranslate"><span class="pre">uint</span></code>)<a class="headerlink" href="#tx-wake-uint" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>Number of times driver re-started accepting send requests to this queue from the stack.</p>
</dd>
</dl>
</section>
</section>
<section id="queue-id">
<span id="netdev-attribute-set-queue-id"></span><h3><a class="toc-backref" href="#id47" role="doc-backlink">queue-id</a><a class="headerlink" href="#queue-id" title="Link to this heading">¶</a></h3>
<section id="id8">
<h4>id<a class="headerlink" href="#id8" title="Link to this heading">¶</a></h4>
</section>
<section id="type">
<h4>type<a class="headerlink" href="#type" title="Link to this heading">¶</a></h4>
</section>
</section>
<section id="dmabuf">
<span id="netdev-attribute-set-dmabuf"></span><h3><a class="toc-backref" href="#id48" role="doc-backlink">dmabuf</a><a class="headerlink" href="#dmabuf" title="Link to this heading">¶</a></h3>
<section id="id9">
<h4>ifindex (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id9" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>netdev ifindex to bind the dmabuf to.</p>
</dd>
</dl>
</section>
<section id="queues-nest">
<h4>queues (<code class="docutils literal notranslate"><span class="pre">nest</span></code>)<a class="headerlink" href="#queues-nest" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>receive queues to bind the dmabuf to.</p>
</dd>
<dt class="field-even">nested-attributes<span class="colon">:</span></dt>
<dd class="field-even"><p><a class="reference internal" href="#netdev-attribute-set-queue-id"><span class="std std-ref">queue-id</span></a></p>
</dd>
<dt class="field-odd">multi-attr<span class="colon">:</span></dt>
<dd class="field-odd"><p>True</p>
</dd>
</dl>
</section>
<section id="fd-u32">
<h4>fd (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#fd-u32" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>dmabuf file descriptor to bind.</p>
</dd>
</dl>
</section>
<section id="id10">
<h4>id (<code class="docutils literal notranslate"><span class="pre">u32</span></code>)<a class="headerlink" href="#id10" title="Link to this heading">¶</a></h4>
<dl class="field-list simple">
<dt class="field-odd">doc<span class="colon">:</span></dt>
<dd class="field-odd"><p>id of the dmabuf binding</p>
</dd>
</dl>
</section>
</section>
</section>
</section>


          </div>
          
        </div>
      </div>
    <div class="clearer"></div>
  </div>
    <div class="footer">
      &#169;The kernel development community.
      
      |
      Powered by <a href="https://www.sphinx-doc.org/">Sphinx 8.1.3</a>
      &amp; <a href="https://alabaster.readthedocs.io">Alabaster 0.7.16</a>
      
      |
      <a href="../../_sources/netlink/specs/netdev.yaml.txt"
          rel="nofollow">Page source</a>
    </div>

    

    
  </body>
</html>

Filemanager

Name Type Size Permission Actions
binder.html File 15.69 KB 0644
conntrack.html File 71.31 KB 0644
devlink.html File 243.24 KB 0644
dpll.html File 68.05 KB 0644
ethtool.html File 297.81 KB 0644
fou.html File 21.86 KB 0644
handshake.html File 22.95 KB 0644
index.html File 13.38 KB 0644
lockd.html File 12.81 KB 0644
mptcp_pm.html File 42.32 KB 0644
net_shaper.html File 39.97 KB 0644
netdev.html File 81.85 KB 0644
nfsd.html File 30.55 KB 0644
nftables.html File 166.1 KB 0644
nl80211.html File 176.45 KB 0644
nlctrl.html File 27.29 KB 0644
ovpn.html File 55.49 KB 0644
ovs_datapath.html File 23.82 KB 0644
ovs_flow.html File 93.52 KB 0644
ovs_vport.html File 25.18 KB 0644
psp.html File 27.82 KB 0644
rt-addr.html File 24.34 KB 0644
rt-link.html File 223.41 KB 0644
rt-neigh.html File 49.05 KB 0644
rt-route.html File 40.83 KB 0644
rt-rule.html File 34.92 KB 0644
tc.html File 361.2 KB 0644
tcp_metrics.html File 23.36 KB 0644
team.html File 25.86 KB 0644
Filemanager