From mboxrd@z Thu Jan 1 00:00:00 1970 From: pritambankar1988@gmail.com (Pritam Bankar) Date: Mon, 28 Nov 2011 13:05:39 +0530 Subject: What is RTNL lock? In-Reply-To: References: Message-ID: <004601ccada0$56352d80$029f8880$@gmail.com> To: kernelnewbies@lists.kernelnewbies.org List-Id: kernelnewbies.lists.kernelnewbies.org Hi, http://lists.openfabrics.org/pipermail/general/2008-July/052458.html This might help you. From: kernelnewbies-bounces@kernelnewbies.org [mailto:kernelnewbies-bounces at kernelnewbies.org] On Behalf Of rohan puri Sent: 28 November 2011 12:36 To: Vimal; kernelnewbies Subject: Re: What is RTNL lock? On Mon, Nov 28, 2011 at 12:19 PM, Vimal wrote: Hi Rohan Yes, I understood this part, but I am wondering what is the purpose of this lock. I am guessing it's to protect all network related operations from critical events, for e.g.: protecting a packet transmit during device removal, protecting routing table entry during route lookup, etc., but I can't find its precise documentation anywhere. Thanks, On 27 November 2011 22:44, rohan puri wrote: > > > On Sun, Nov 27, 2011 at 10:37 PM, Vimal wrote: >> >> Hi all, >> >> In the Linux networking code, I see a lot of comments that say "Must >> be called with RTNL lock." >> >> What is this lock? I tried searching for it but couldn't find any >> explanation on what it is... >> >> Thanks >> -- >> Vimal >> >> _______________________________________________ >> Kernelnewbies mailing list >> Kernelnewbies at kernelnewbies.org >> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies > > Hello Vimal, > This is a mutex named rtnl_mutex. Refer file net/core/rtnetlink.c > static DEFINE_MUTEX(rtnl_mutex); > > void rtnl_lock(void) > { > mutex_lock(&rtnl_mutex); > } > EXPORT_SYMBOL(rtnl_lock); > Where ever you see those comments indicate that this mutex is to be held > before execution of that code path. > Regards, > Rohan -- Vimal This lock is used to serialize changes to net_device instances from runtime events, conf changes Refer book understanding Linux network internals for more details. Regards, Rohan Puri -------------- next part -------------- An HTML attachment was scrubbed... URL: http://lists.kernelnewbies.org/pipermail/kernelnewbies/attachments/20111128/36231e74/attachment-0001.html