From 4bd2bfbf81aa71ea67e45f80a5268b1b06d97a71 Mon Sep 17 00:00:00 2001 From: riastradh Date: Fri, 24 Feb 2023 11:03:01 +0000 Subject: [PATCH] npf: Eliminate __HAVE_ATOMIC_AS_MEMBAR conditionals. Discussed on tech-kern: https://mail-index.netbsd.org/tech-kern/2023/02/23/msg028729.html Requested by rmind@: https://github.com/rmind/npf/pull/127#issuecomment-1399573125 --- sys/net/npf/npf_nat.c | 6 +----- sys/net/npf/npf_rproc.c | 7 ++----- sys/net/npf/npf_tableset.c | 6 +----- 3 files changed, 4 insertions(+), 15 deletions(-) diff --git a/sys/net/npf/npf_nat.c b/sys/net/npf/npf_nat.c index 0887caf6a244..f178b10f7220 100644 --- a/sys/net/npf/npf_nat.c +++ b/sys/net/npf/npf_nat.c @@ -67,7 +67,7 @@ #ifdef _KERNEL #include -__KERNEL_RCSID(0, "$NetBSD: npf_nat.c,v 1.52 2022/04/09 23:38:33 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: npf_nat.c,v 1.53 2023/02/24 11:03:01 riastradh Exp $"); #include #include @@ -279,15 +279,11 @@ npf_natpolicy_release(npf_natpolicy_t *np) { KASSERT(atomic_load_relaxed(&np->n_refcnt) > 0); -#ifndef __HAVE_ATOMIC_AS_MEMBAR membar_release(); -#endif if (atomic_dec_uint_nv(&np->n_refcnt) != 0) { return; } -#ifndef __HAVE_ATOMIC_AS_MEMBAR membar_acquire(); -#endif KASSERT(LIST_EMPTY(&np->n_nat_list)); mutex_destroy(&np->n_lock); kmem_free(np, sizeof(npf_natpolicy_t)); diff --git a/sys/net/npf/npf_rproc.c b/sys/net/npf/npf_rproc.c index 24a368eca0e6..675cf4ec2418 100644 --- a/sys/net/npf/npf_rproc.c +++ b/sys/net/npf/npf_rproc.c @@ -33,7 +33,7 @@ #ifdef _KERNEL #include -__KERNEL_RCSID(0, "$NetBSD: npf_rproc.c,v 1.22 2022/04/09 23:38:33 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: npf_rproc.c,v 1.23 2023/02/24 11:03:01 riastradh Exp $"); #include #include @@ -330,15 +330,12 @@ npf_rproc_release(npf_rproc_t *rp) { KASSERT(atomic_load_relaxed(&rp->rp_refcnt) > 0); -#ifndef __HAVE_ATOMIC_AS_MEMBAR membar_release(); -#endif if (atomic_dec_uint_nv(&rp->rp_refcnt) != 0) { return; } -#ifndef __HAVE_ATOMIC_AS_MEMBAR membar_acquire(); -#endif + /* XXXintr */ for (unsigned i = 0; i < rp->rp_ext_count; i++) { npf_ext_t *ext = rp->rp_ext[i]; diff --git a/sys/net/npf/npf_tableset.c b/sys/net/npf/npf_tableset.c index f52d9f6cf125..af4e52470d38 100644 --- a/sys/net/npf/npf_tableset.c +++ b/sys/net/npf/npf_tableset.c @@ -46,7 +46,7 @@ #ifdef _KERNEL #include -__KERNEL_RCSID(0, "$NetBSD: npf_tableset.c,v 1.41 2023/01/23 13:40:04 riastradh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: npf_tableset.c,v 1.42 2023/02/24 11:03:01 riastradh Exp $"); #include #include @@ -160,14 +160,10 @@ npf_tableset_destroy(npf_tableset_t *ts) if (t == NULL) continue; -#ifndef __HAVE_ATOMIC_AS_MEMBAR membar_release(); -#endif if (atomic_dec_uint_nv(&t->t_refcnt) > 0) continue; -#ifndef __HAVE_ATOMIC_AS_MEMBAR membar_acquire(); -#endif npf_table_destroy(t); } kmem_free(ts, NPF_TABLESET_SIZE(ts->ts_nitems));