Backports Archive on lore.kernel.org
 help / color / Atom feed
From: Hauke Mehrtens <hauke@hauke-m.de>
To: backports@vger.kernel.org
Cc: Hauke Mehrtens <hauke@hauke-m.de>
Subject: [PATCH 11/18] header: Make napi_complete_done() return bool
Date: Mon,  1 Jul 2019 23:49:06 +0200
Message-ID: <20190701214914.8066-12-hauke@hauke-m.de> (raw)
In-Reply-To: <20190701214914.8066-1-hauke@hauke-m.de>

In the current kernel napi_complete_done() returns a bool and this is
now used by the mt76 driver. Try to backport this functionality by
doing the check which makes the function return false already in
backports.

This was added in upstream kernel commit 364b6055738b ("net: busy-poll:
return busypolling status to drivers")

Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
---
 backport/backport-include/linux/netdevice.h | 16 ++++++++++++----
 1 file changed, 12 insertions(+), 4 deletions(-)

diff --git a/backport/backport-include/linux/netdevice.h b/backport/backport-include/linux/netdevice.h
index c3e91a0c..76b57e4d 100644
--- a/backport/backport-include/linux/netdevice.h
+++ b/backport/backport-include/linux/netdevice.h
@@ -289,13 +289,21 @@ static inline void u64_stats_init(struct u64_stats_sync *syncp)
 })
 #endif /* netdev_alloc_pcpu_stats */
 
-#if LINUX_VERSION_IS_LESS(3,19,0)
-#define napi_complete_done LINUX_BACKPORT(napi_complete_done)
-static inline void napi_complete_done(struct napi_struct *n, int work_done)
+#if LINUX_VERSION_IS_LESS(4,10,0)
+static inline bool backport_napi_complete_done(struct napi_struct *n, int work_done)
 {
+	if (unlikely(test_bit(NAPI_STATE_NPSVC, &n->state)))
+		return false;
+
+#if LINUX_VERSION_IS_LESS(3,19,0)
 	napi_complete(n);
-}
+#else
+	napi_complete_done(n, work_done);
 #endif /* < 3.19 */
+	return true;
+}
+#define napi_complete_done LINUX_BACKPORT(napi_complete_done)
+#endif /* < 4.10 */
 
 #if LINUX_VERSION_IS_LESS(4,5,0)
 #define netif_tx_napi_add LINUX_BACKPORT(netif_tx_napi_add)
-- 
2.20.1

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

  parent reply index

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-01 21:48 [PATCH 00/18] backports: Update for kernel 5.2 Hauke Mehrtens
2019-07-01 21:48 ` [PATCH 01/18] patches: update select queue patches Hauke Mehrtens
2019-07-01 21:48 ` [PATCH 02/18] backport: rcupdate: add rcu_head_init and rcu_head_after_call_rcu Hauke Mehrtens
2019-07-01 21:48 ` [PATCH 03/18] backport: check for failure when allocating ops in genetlink Hauke Mehrtens
2019-07-01 21:48 ` [PATCH 04/18] backport-include: add empty lockdep_map structure in lockdep.h Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 05/18] patches: Make patches apply on top of kernel 5.2-rc6 Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 06/18] backport: Extend netlink parsing with strict validation Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 07/18] header: Add backport-include/net/ipv6_stubs.h Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 08/18] header: Add sdio_retune*() functions Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 09/18] header: Add HRTIMER_MODE_{ABS,REL}_SOFT Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 10/18] patch: Remove usage of DMI_PRODUCT_SKU Hauke Mehrtens
2019-07-01 21:49 ` Hauke Mehrtens [this message]
2019-07-01 21:49 ` [PATCH 12/18] header: add hrtimer_forward() and ns_to_ktime() Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 13/18] dependencies: Add MT7615E dependency Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 14/18] patches: rtw88: Add missing include on kernel 3.18 Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 14/18] " Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 15/18] header: Remove include/net/inet_frag.h Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 16/18] defconfig: update wifi defconfig Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 17/18] header: fix of_get_mac_address() Hauke Mehrtens
2019-07-01 21:49 ` [PATCH 18/18] header: add support for GCC7 and GCC8 Hauke Mehrtens
2019-07-02  7:44   ` Johannes Berg

Reply instructions:

You may reply publically 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=20190701214914.8066-12-hauke@hauke-m.de \
    --to=hauke@hauke-m.de \
    --cc=backports@vger.kernel.org \
    /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

Backports Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/backports/0 backports/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 backports backports/ https://lore.kernel.org/backports \
		backports@vger.kernel.org backports@archiver.kernel.org
	public-inbox-index backports


Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.backports


AGPL code for this site: git clone https://public-inbox.org/ public-inbox