[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <bc172b2512174b8f862c854d0d376c0c@AcuMS.aculab.com>
Date: Mon, 17 Jan 2022 09:20:16 +0000
From: David Laight <David.Laight@...LAB.COM>
To: 'Eric Dumazet' <eric.dumazet@...il.com>,
"David S . Miller" <davem@...emloft.net>,
Jakub Kicinski <kuba@...nel.org>
CC: netdev <netdev@...r.kernel.org>,
Eric Dumazet <edumazet@...gle.com>,
syzbot <syzkaller@...glegroups.com>,
Ido Schimmel <idosch@...lanox.com>,
"Jiri Pirko" <jiri@...lanox.com>
Subject: RE: [PATCH v2 net] ipv4: update fib_info_cnt under spinlock
protection
From: Eric Dumazet
> Sent: 16 January 2022 09:02
>
> From: Eric Dumazet <edumazet@...gle.com>
>
> In the past, free_fib_info() was supposed to be called
> under RTNL protection.
>
> This eventually was no longer the case.
>
> Instead of enforcing RTNL it seems we simply can
> move fib_info_cnt changes to occur when fib_info_lock
> is held.
This probably ought to be a stable candidate.
If an increment is lost due to the unlocked inc/dec it is
possible for the count to wrap to -1 if all fib are deleted.
That will cause the table size to be doubled on every
allocate (until the count goes +ve again).
Losing a decrement is less of a problem.
You'd need to lose a lot of them for any ill effect.
David
-
Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK
Registration No: 1397386 (Wales)
Powered by blists - more mailing lists