From owner-svn-src-stable@FreeBSD.ORG Tue Mar 20 09:03:02 2012 Return-Path: Delivered-To: svn-src-stable@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 9A14A1065674; Tue, 20 Mar 2012 09:03:02 +0000 (UTC) (envelope-from pluknet@gmail.com) Received: from mail-lpp01m010-f54.google.com (mail-lpp01m010-f54.google.com [209.85.215.54]) by mx1.freebsd.org (Postfix) with ESMTP id 43ECC8FC14; Tue, 20 Mar 2012 09:02:55 +0000 (UTC) Received: by lagv3 with SMTP id v3so7414600lag.13 for ; Tue, 20 Mar 2012 02:02:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date :x-google-sender-auth:message-id:subject:from:to:cc:content-type :content-transfer-encoding; bh=6VEmmNeG4h04vcQZMG8P6SPbruUS78Otzq3pPvV6yD4=; b=MPqOmz9pPA3ee4esLPVXWExJcGNfN0k6K4lQeZ/Xd9CEwySaakh35YnGn5pumAOuJX k0vRk/w/XNxe3tR4S8z+EJ+RjvKmkBVV2xA9pasZ2VozhgmrMoAka7qGN8XWqiQPvI/0 cfdGr95gX6m+3qCgPPy9gWsa4tSNqt/Da6ziLFImaAkwjeLS5Y2XdtEUHSIR3m1VkQsI lIGe0Sgp+4cxxCjBbZi1sfYrbjl9EFha4jo+ODe2MbOTeSfaLU1nRkq109oucTc650tg M6owJHa8jRdpXHMSUzEq3b4NVclWDPe5UYgoPJ5eO5CN0dbH1G+a9BsEJl1KsWApjkAY Awbg== MIME-Version: 1.0 Received: by 10.112.100.232 with SMTP id fb8mr5836069lbb.86.1332234168976; Tue, 20 Mar 2012 02:02:48 -0700 (PDT) Sender: pluknet@gmail.com Received: by 10.152.21.73 with HTTP; Tue, 20 Mar 2012 02:02:48 -0700 (PDT) In-Reply-To: <201203192015.q2JKFItl084480@svn.freebsd.org> References: <201203192015.q2JKFItl084480@svn.freebsd.org> Date: Tue, 20 Mar 2012 12:02:48 +0300 X-Google-Sender-Auth: E1rrIRId25OKy2YfqfLteiTCroQ Message-ID: From: Sergey Kandaurov To: John Baldwin Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Cc: svn-src-stable@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org, svn-src-stable-8@freebsd.org Subject: Re: svn commit: r233199 - in stable/8/sys: i386/conf netinet6 X-BeenThere: svn-src-stable@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: SVN commit messages for all the -stable branches of the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 20 Mar 2012 09:03:02 -0000 On 20 March 2012 00:15, John Baldwin wrote: > Author: jhb > Date: Mon Mar 19 20:15:18 2012 > New Revision: 233199 > URL: http://svn.freebsd.org/changeset/base/233199 > > Log: > =A0MFC 225096: > =A0Fix if_addr_mtx recursion in mld6. Ehh.. Thank you for doing this. As I mentioned earlier I could not reproduce this problem myself in RELENG_8, that's why it was not MFCed so far... > > =A0mld_set_version() is called only from mld_v1_input_query() and > =A0mld_v2_input_query() both holding the if_addr_mtx lock, and then calli= ng > =A0into mld_v2_cancel_link_timers() acquires it the second time, which re= sults > =A0in mtx recursion. To avoid that, delay if_addr_mtx acquisition until a= fter > =A0mld_set_version() is called; while here, further reduce locking scope > =A0to protect only the needed pieces: if_multiaddrs, in6m_lookup_locked()= . [...] --=20 wbr, pluknet