On Fri, Jan 17, 2025 at 10:28:59AM +0800, Gui-Dong Han wrote: > > 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. Hi Gui-Dong Han, I think it would be good to post a v2 of this patch with an explanation along the lines of the above included in the patch description.