Date: Sun, 23 Jan 2022 19:38:39 +0100 From: Wojciech Macek <wma@semihalf.com> To: Gleb Smirnoff <glebius@freebsd.org> Cc: Kristof Provost <kp@freebsd.org>, Wojciech Macek <wma@freebsd.org>, src-committers <src-committers@freebsd.org>, "<dev-commits-src-all@freebsd.org>" <dev-commits-src-all@freebsd.org>, dev-commits-src-main@freebsd.org Subject: Re: git: 9ce46cbc95d7 - main - ip_mroute: move ip_mrouter_done outside lock Message-ID: <CANsEV8faJFZ5m7Edxttuqfj-9KLPgi93OFN%2BhOcLupG%2BDMfC4A@mail.gmail.com> In-Reply-To: <CANsEV8cEWc9GsTZk%2BVm-_%2B9rsU-=yXLjRkZZz--dg7-ZJRgOnw@mail.gmail.com> References: <202201210519.20L5J1mJ029323@gitrepo.freebsd.org> <7A991003-0F24-4C8C-81FD-84F39FC78D8A@FreeBSD.org> <C25EE57B-BE5A-4BC8-AD00-C8D0D582D073@FreeBSD.org> <CANsEV8cmZcQKh3U8w2S37cg9heFd=icuEmF7dVwrE486OM3Yug@mail.gmail.com> <Ye2FOvi32Xu23qIB@FreeBSD.org> <CANsEV8cEWc9GsTZk%2BVm-_%2B9rsU-=yXLjRkZZz--dg7-ZJRgOnw@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --] This commit, moving ip_mroutet_done outside a lock is only to silence a warning when invariants are enabled - no functional changes to the root problem were made here. Wojtek niedz., 23 sty 2022, 19:24 użytkownik Wojciech Macek <wma@semihalf.com> napisał: > This is an orginal fix. The issue was visible due to race between ip > input/output and mrouter uninit. > https://reviews.freebsd.org/D29946 > > niedz., 23 sty 2022, 17:41 użytkownik Gleb Smirnoff <glebius@freebsd.org> > napisał: > >> On Sat, Jan 22, 2022 at 08:50:54AM +0100, Wojciech Macek wrote: >> W> I will prepare a fix later today. Basically, the whole "if" condition >> must >> W> be inside rwlock block to avoid race during module unload. >> W> Maybe adding else and rwunlock in rip_detach will suffice.... I need >> to try >> W> it out. >> >> May I ask you to post a review and add me as reviewer? Please also include >> a description of the problem we are fighting with. At least, a short >> version >> of it, for example "fix race between module unload and packet received". >> >> -- >> Gleb Smirnoff >> > [-- Attachment #2 --] <div dir="auto">This commit, moving ip_mroutet_done outside a lock is only to silence a warning when invariants are enabled - no functional changes to the root problem were made here.<div dir="auto"><br></div><div dir="auto">Wojtek</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">niedz., 23 sty 2022, 19:24 użytkownik Wojciech Macek <<a href="mailto:wma@semihalf.com">wma@semihalf.com</a>> napisał:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="auto">This is an orginal fix. The issue was visible due to race between ip input/output and mrouter uninit. <div dir="auto"><a href="https://reviews.freebsd.org/D29946" target="_blank" rel="noreferrer">https://reviews.freebsd.org/D29946</a><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">niedz., 23 sty 2022, 17:41 użytkownik Gleb Smirnoff <<a href="mailto:glebius@freebsd.org" target="_blank" rel="noreferrer">glebius@freebsd.org</a>> napisał:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Sat, Jan 22, 2022 at 08:50:54AM +0100, Wojciech Macek wrote:<br> W> I will prepare a fix later today. Basically, the whole "if" condition must<br> W> be inside rwlock block to avoid race during module unload.<br> W> Maybe adding else and rwunlock in rip_detach will suffice.... I need to try<br> W> it out.<br> <br> May I ask you to post a review and add me as reviewer? Please also include<br> a description of the problem we are fighting with. At least, a short version<br> of it, for example "fix race between module unload and packet received".<br> <br> -- <br> Gleb Smirnoff<br> </blockquote></div> </blockquote></div>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANsEV8faJFZ5m7Edxttuqfj-9KLPgi93OFN%2BhOcLupG%2BDMfC4A>
