1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>__netdev_alloc_skb</title><meta name="generator" content="DocBook XSL Stylesheets V1.78.1"><link rel="home" href="index.html" title="Linux Networking and Network Devices APIs"><link rel="up" href="ch01s02.html" title="Socket Buffer Functions"><link rel="prev" href="API-netdev-alloc-frag.html" title="netdev_alloc_frag"><link rel="next" href="API---napi-alloc-skb.html" title="__napi_alloc_skb"></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center"><span class="phrase">__netdev_alloc_skb</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-netdev-alloc-frag.html">Prev</a> </td><th width="60%" align="center">Socket Buffer Functions</th><td width="20%" align="right"> <a accesskey="n" href="API---napi-alloc-skb.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API---netdev-alloc-skb"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>__netdev_alloc_skb — 2 allocate an skbuff for rx on a specific device 3 </p></div><div class="refsynopsisdiv"><h2>Synopsis</h2><div class="funcsynopsis"><table border="0" class="funcprototype-table" summary="Function synopsis" style="cellspacing: 0; cellpadding: 0;"><tr><td><code class="funcdef">struct sk_buff * <b class="fsfunc">__netdev_alloc_skb </b>(</code></td><td>struct net_device * <var class="pdparam">dev</var>, </td></tr><tr><td> </td><td>unsigned int <var class="pdparam">length</var>, </td></tr><tr><td> </td><td>gfp_t <var class="pdparam">gfp_mask</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idp1096011756"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>dev</code></em></span></dt><dd><p> 4 network device to receive on 5 </p></dd><dt><span class="term"><em class="parameter"><code>length</code></em></span></dt><dd><p> 6 length to allocate 7 </p></dd><dt><span class="term"><em class="parameter"><code>gfp_mask</code></em></span></dt><dd><p> 8 get_free_pages mask, passed to alloc_skb 9 </p></dd></dl></div></div><div class="refsect1"><a name="idp1096015332"></a><h2>Description</h2><p> 10 Allocate a new <span class="structname">sk_buff</span> and assign it a usage count of one. The 11 buffer has NET_SKB_PAD headroom built in. Users should allocate 12 the headroom they think they need without accounting for the 13 built in space. The built in space is used for optimisations. 14 </p><p> 15 16 <code class="constant">NULL</code> is returned if there is no free memory. 17</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-netdev-alloc-frag.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch01s02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="API---napi-alloc-skb.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">netdev_alloc_frag</span> </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> <span class="phrase">__napi_alloc_skb</span></td></tr></table></div></body></html> 18