1<html><head><meta http-equiv="Content-Type" content="text/html; charset=ANSI_X3.4-1968"><title>skb_share_check</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-skb-shared.html" title="skb_shared"><link rel="next" href="API-skb-unshare.html" title="skb_unshare"></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">skb_share_check</span></th></tr><tr><td width="20%" align="left"><a accesskey="p" href="API-skb-shared.html">Prev</a> </td><th width="60%" align="center">Socket Buffer Functions</th><td width="20%" align="right"> <a accesskey="n" href="API-skb-unshare.html">Next</a></td></tr></table><hr></div><div class="refentry"><a name="API-skb-share-check"></a><div class="titlepage"></div><div class="refnamediv"><h2>Name</h2><p>skb_share_check — 2 check if buffer is shared and if so clone it 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">skb_share_check </b>(</code></td><td>struct sk_buff * <var class="pdparam">skb</var>, </td></tr><tr><td> </td><td>gfp_t <var class="pdparam">pri</var><code>)</code>;</td></tr></table><div class="funcprototype-spacer"> </div></div></div><div class="refsect1"><a name="idp1095377036"></a><h2>Arguments</h2><div class="variablelist"><dl class="variablelist"><dt><span class="term"><em class="parameter"><code>skb</code></em></span></dt><dd><p> 4 buffer to check 5 </p></dd><dt><span class="term"><em class="parameter"><code>pri</code></em></span></dt><dd><p> 6 priority for memory allocation 7 </p></dd></dl></div></div><div class="refsect1"><a name="idp1095379564"></a><h2>Description</h2><p> 8 If the buffer is shared the buffer is cloned and the old copy 9 drops a reference. A new clone with a single reference is returned. 10 If the buffer is not shared the original buffer is returned. When 11 being called from interrupt status or with spinlocks held pri must 12 be GFP_ATOMIC. 13 </p><p> 14 15 NULL is returned on a memory allocation failure. 16</p></div></div><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="API-skb-shared.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-skb-unshare.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"><span class="phrase">skb_shared</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">skb_unshare</span></td></tr></table></div></body></html> 17