All of lore.kernel.org
 help / color / mirror / Atom feed
From: Johannes Berg <johannes@sipsolutions.net>
To: backports@vger.kernel.org
Cc: Johannes Berg <johannes.berg@intel.com>
Subject: [PATCH 04/15] backports: add some more atomic functions
Date: Fri, 21 Feb 2020 09:56:13 +0100	[thread overview]
Message-ID: <20200221095437.a7707d432cb0.Ib3fe021525950f62eba9fbebb67bd6374d4835e3@changeid> (raw)
In-Reply-To: <20200221085624.6213-1-johannes@sipsolutions.net>

From: Johannes Berg <johannes.berg@intel.com>

Some of the new fetch atomics are now required, add them by
using the _return ones and changing the value accordingly.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
---
 backport/backport-include/linux/atomic.h | 32 ++++++++++++++++++++++++
 1 file changed, 32 insertions(+)

diff --git a/backport/backport-include/linux/atomic.h b/backport/backport-include/linux/atomic.h
index 9ceb586e864a..6669831ca8a9 100644
--- a/backport/backport-include/linux/atomic.h
+++ b/backport/backport-include/linux/atomic.h
@@ -60,4 +60,36 @@ static inline int atomic_fetch_add_unless(atomic_t *v, int a, int u)
 #endif
 #endif
 
+#ifndef __atomic_pre_full_fence
+#define __atomic_pre_full_fence         smp_mb__before_atomic
+#endif
+
+#ifndef __atomic_post_full_fence
+#define __atomic_post_full_fence        smp_mb__after_atomic
+#endif
+
+#if LINUX_VERSION_IS_LESS(4,8,0)
+static inline int
+atomic_fetch_add(int i, atomic_t *v)
+{
+	return atomic_add_return(i, v) - i;
+}
+
+static inline int
+atomic_fetch_sub(int i, atomic_t *v)
+{
+	return atomic_sub_return(i, v) + i;
+}
+#endif
+
+#ifndef atomic_fetch_add_relaxed
+#define atomic_fetch_add_relaxed atomic_fetch_add
+#endif
+
+#ifndef atomic_fetch_sub_relaxed
+#define atomic_fetch_sub_acquire atomic_fetch_sub
+#define atomic_fetch_sub_release atomic_fetch_sub
+#define atomic_fetch_sub_relaxed atomic_fetch_sub
+#endif
+
 #endif /* __BP_ATOMIC_H */
-- 
2.24.1

--
To unsubscribe from this list: send the line "unsubscribe backports" in

  parent reply	other threads:[~2020-02-21  8:56 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-21  8:56 [PATCH 00/15] updates & improvements Johannes Berg
2020-02-21  8:56 ` [PATCH 01/15] backports: handle RHEL 7.6 kernel Johannes Berg
2020-02-23 22:24   ` Hauke Mehrtens
2020-02-24  8:40     ` Johannes Berg
2020-02-24 22:47       ` Hauke Mehrtens
2020-03-11  9:38     ` Johannes Berg
2020-02-21  8:56 ` [PATCH 02/15] backports: update x509.asn1.[ch] Johannes Berg
2020-02-23 22:26   ` Hauke Mehrtens
2020-02-24  8:39     ` Johannes Berg
2020-02-21  8:56 ` [PATCH 03/15] backports: suppress attribute((cold)) warnings with gcc 9 Johannes Berg
2020-02-21  8:56 ` Johannes Berg [this message]
2020-02-21  8:56 ` [PATCH 05/15] backports: Do not access rx_count and rx_list attributes Johannes Berg
2020-02-21  8:56 ` [PATCH 06/15] backports: if_vlan: add VLAN_N_VID Johannes Berg
2020-02-21  8:56 ` [PATCH 07/15] patches: make nl80211.c include if_vlan.h Johannes Berg
2020-02-23 22:28   ` Hauke Mehrtens
2020-02-21  8:56 ` [PATCH 08/15] gentree: add timing info to git debug commit message Johannes Berg
2020-02-21  8:56 ` [PATCH 09/15] backports: debugfs: add unsigned long helpers Johannes Berg
2020-02-21  8:56 ` [PATCH 10/15] backports: patch lib/refcount.c to make sparse happy Johannes Berg
2020-02-21  8:56 ` [PATCH 11/15] gentree: add a --list-files option Johannes Berg
2020-02-21  8:56 ` [PATCH 12/15] git-tracker: use python2 explicitly Johannes Berg
2020-02-21  8:56 ` [PATCH 13/15] git-tracker: use write-tree/commit-tree/update-ref Johannes Berg
2020-02-21  8:56 ` [PATCH 14/15] git-tracker: refactor function that adds change-id Johannes Berg
2020-02-21  8:56 ` [PATCH 15/15] gentree: use 'git cat-file' to speed up obtaining objects Johannes Berg
2020-03-24 23:11 ` [PATCH 00/15] updates & improvements Hauke Mehrtens
2020-03-25  7:59   ` Johannes Berg

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200221095437.a7707d432cb0.Ib3fe021525950f62eba9fbebb67bd6374d4835e3@changeid \
    --to=johannes@sipsolutions.net \
    --cc=backports@vger.kernel.org \
    --cc=johannes.berg@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.