Hello,
On Fri, Mar 11, 2022 at 09:40:00PM +0100, Alexander Bluhm wrote:
> Regress tested with witness, rebased to current, anyone?
>
> On Wed, Mar 02, 2022 at 07:13:09PM +0100, Alexander Bluhm wrote:
> > Hi,
> >
> > pf_socket_lookup() calls in_pcbhashlookup() in the PCB layer. So
> > to run pf in parallel we must make parts of the stack MP safe.
> > Protect the list and hashes in the PCB tables with a mutex.
> >
> > Note that the protocol notify functions may call pf via tcp_output().
> > As the pf lock is a sleeping rw_lock, we must not hold a mutex. To
> > solve this for now, I collect these PCBs in inp_notify list and
> > protect it with the exclusive netlock.
> >
I have no better idea to overcome current pf rwlock.
I've skimmed through the diff. change makes sense to me. I think it should get
in.
OK sashan