Hello,

On Thu, Nov 24, 2022 at 08:51:51AM +1000, David Gwynne wrote:
> im ok with this, but you need sashan@ to ok it too. he's been working up to 
> this anyway.
> 
> dlg
> 
> > On 24 Nov 2022, at 06:18, Vitaliy Makkoveev <m...@openbsd.org> wrote:
> > 
> > On Wed, Nov 23, 2022 at 02:59:05PM -0500, David Hill wrote:
> >> Hello -
> >> 
> >> I am seeing splasserts on boot (before kern.splassert=2 can be set) with
> >> -current.
> >> 
> >> ....
> >> 
> >> spdmem0 at iic0 addr 0x50: 8GB DDR3 SDRAM PC3-12800 SO-DIMM
> >> isa0 at pcib0
> >> isadma0 at isa0
> >> vga0 at isa0 port 0x3b0/48 iomem 0xa0000/131072
> >> wsdisplay at vga0 not configured
> >> pcppi0 at isa0 port 0x61
> >> spkr0 at pcppi0
> >> vmm0 at mainbus0: VMX/EPT (using slow L1TF mitigation)
> >> splassert: pfi_attach_ifgroup: want 2 have 0
> >> splassert: pfi_group_addmember: want 2 have 0
> >> splassert: pfi_attach_ifgroup: want 2 have 0
> >> splassert: pfi_attach_ifgroup: want 2 have 0
> >> splassert: pfi_group_addmember: want 2 have 0
> >> 
> >> 
> >> - David
> >> 
> > 
> > The netlock assertion within PF_LOCK() looks wrong. The netlock should
> > be taken first, but only if both locks taken.
> > 
> > Index: sys/net/pfvar_priv.h
> > ===================================================================
> > RCS file: /cvs/src/sys/net/pfvar_priv.h,v
> > retrieving revision 1.21
> > diff -u -p -r1.21 pfvar_priv.h
> > --- sys/net/pfvar_priv.h    11 Nov 2022 17:12:30 -0000      1.21
> > +++ sys/net/pfvar_priv.h    23 Nov 2022 20:14:13 -0000
> > @@ -278,7 +278,6 @@ extern struct rwlock    pf_lock;
> > extern struct rwlock        pf_state_lock;
> > 
> > #define PF_LOCK()           do {                    \
> > -           NET_ASSERT_LOCKED();                    \
> >             rw_enter_write(&pf_lock);               \
> >     } while (0)
> > 
> 

    this diff is OK, please go ahead and commit it.

    sorry, I have not hit this assert on my boxes, when testing this diff.

OK sashan


Reply via email to