[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAOPYjvaVZAHqWhzYsLjtc4Q8CSCF2g4bG-efLHPOP_NMSs0crg@mail.gmail.com>
Date: Fri, 17 Jan 2025 10:28:59 +0800
From: Gui-Dong Han <2045gemini@...il.com>
To: Jakub Kicinski <kuba@...nel.org>
Cc: 3chas3@...il.com, linux-atm-general@...ts.sourceforge.net,
netdev@...r.kernel.org, linux-kernel@...r.kernel.org, baijiaju1990@...il.com,
stable@...r.kernel.org
Subject: Re: [PATCH] atm/fore200e: Fix possible data race in fore200e_open()
> On Wed, 15 Jan 2025 13:10:06 +0000 Gui-Dong Han wrote:
> > Protect access to fore200e->available_cell_rate with rate_mtx lock to
> > prevent potential data race.
> >
> > The field fore200e.available_cell_rate is generally protected by the lock
> > fore200e.rate_mtx when accessed. In all other read and write cases, this
> > field is consistently protected by the lock, except for this case and
> > during initialization.
>
> That's not sufficient in terms of analysis.
>
> You need to be able to articulate what can go wrong.
fore200e->available_cell_rate += vcc->qos.txtp.max_pcr;
In this case, since the update depends on a prior read, a data race
could lead to a wrong fore200e.available_cell_rate value.
Regards,
Han
Powered by blists - more mailing lists