stable.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sasha Levin <sashal@kernel.org>
To: linux-kernel@vger.kernel.org, stable@vger.kernel.org
Cc: Edward Cree <ecree@solarflare.com>,
	Jakub Kicinski <kuba@kernel.org>, Sasha Levin <sashal@kernel.org>,
	netdev@vger.kernel.org
Subject: [PATCH AUTOSEL 5.9 054/147] sfc: add and use efx_tx_send_pending in tx.c
Date: Mon, 26 Oct 2020 19:47:32 -0400	[thread overview]
Message-ID: <20201026234905.1022767-54-sashal@kernel.org> (raw)
In-Reply-To: <20201026234905.1022767-1-sashal@kernel.org>

From: Edward Cree <ecree@solarflare.com>

[ Upstream commit 1c0544d24927e4fad04f858216b8ea767a3bd123 ]

Instead of using efx_tx_queue_partner(), which relies on the assumption
 that tx_queues_per_channel is 2, efx_tx_send_pending() iterates over
 txqs with efx_for_each_channel_tx_queue().
We unconditionally set tx_queue->xmit_pending (renamed from
 xmit_more_available), then condition on xmit_more for the call to
 efx_tx_send_pending(), which will clear xmit_pending.  Thus, after an
 xmit_more TX, the doorbell is un-rung and xmit_pending is true.

Signed-off-by: Edward Cree <ecree@solarflare.com>
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
 drivers/net/ethernet/sfc/ef10.c       |  2 +-
 drivers/net/ethernet/sfc/ef100_tx.c   | 14 +++----
 drivers/net/ethernet/sfc/farch.c      |  2 +-
 drivers/net/ethernet/sfc/net_driver.h |  4 +-
 drivers/net/ethernet/sfc/tx.c         | 59 ++++++++++++++-------------
 drivers/net/ethernet/sfc/tx_common.c  |  4 +-
 6 files changed, 44 insertions(+), 41 deletions(-)

diff --git a/drivers/net/ethernet/sfc/ef10.c b/drivers/net/ethernet/sfc/ef10.c
index 4b0b2cf026a52..ad05710883f85 100644
--- a/drivers/net/ethernet/sfc/ef10.c
+++ b/drivers/net/ethernet/sfc/ef10.c
@@ -2367,7 +2367,7 @@ static void efx_ef10_tx_write(struct efx_tx_queue *tx_queue)
 	unsigned int write_ptr;
 	efx_qword_t *txd;
 
-	tx_queue->xmit_more_available = false;
+	tx_queue->xmit_pending = false;
 	if (unlikely(tx_queue->write_count == tx_queue->insert_count))
 		return;
 
diff --git a/drivers/net/ethernet/sfc/ef100_tx.c b/drivers/net/ethernet/sfc/ef100_tx.c
index a09546e434085..8d478c5e720e1 100644
--- a/drivers/net/ethernet/sfc/ef100_tx.c
+++ b/drivers/net/ethernet/sfc/ef100_tx.c
@@ -131,7 +131,7 @@ void ef100_notify_tx_desc(struct efx_tx_queue *tx_queue)
 	efx_writed_page(tx_queue->efx, &reg,
 			ER_GZ_TX_RING_DOORBELL, tx_queue->queue);
 	tx_queue->notify_count = tx_queue->write_count;
-	tx_queue->xmit_more_available = false;
+	tx_queue->xmit_pending = false;
 }
 
 static void ef100_tx_push_buffers(struct efx_tx_queue *tx_queue)
@@ -373,14 +373,14 @@ int ef100_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb)
 	}
 
 	if (__netdev_tx_sent_queue(tx_queue->core_txq, skb->len, xmit_more))
-		tx_queue->xmit_more_available = false; /* push doorbell */
+		tx_queue->xmit_pending = false; /* push doorbell */
 	else if (tx_queue->write_count - tx_queue->notify_count > 255)
 		/* Ensure we never push more than 256 packets at once */
-		tx_queue->xmit_more_available = false; /* push */
+		tx_queue->xmit_pending = false; /* push */
 	else
-		tx_queue->xmit_more_available = true; /* don't push yet */
+		tx_queue->xmit_pending = true; /* don't push yet */
 
-	if (!tx_queue->xmit_more_available)
+	if (!tx_queue->xmit_pending)
 		ef100_tx_push_buffers(tx_queue);
 
 	if (segments) {
@@ -400,9 +400,9 @@ int ef100_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb)
 	/* If we're not expecting another transmit and we had something to push
 	 * on this queue then we need to push here to get the previous packets
 	 * out.  We only enter this branch from before the 'Update BQL' section
-	 * above, so xmit_more_available still refers to the old state.
+	 * above, so xmit_pending still refers to the old state.
 	 */
-	if (tx_queue->xmit_more_available && !xmit_more)
+	if (tx_queue->xmit_pending && !xmit_more)
 		ef100_tx_push_buffers(tx_queue);
 	return rc;
 }
diff --git a/drivers/net/ethernet/sfc/farch.c b/drivers/net/ethernet/sfc/farch.c
index 4002f9a3ae909..0cc7a37b63445 100644
--- a/drivers/net/ethernet/sfc/farch.c
+++ b/drivers/net/ethernet/sfc/farch.c
@@ -320,7 +320,7 @@ void efx_farch_tx_write(struct efx_tx_queue *tx_queue)
 	unsigned write_ptr;
 	unsigned old_write_count = tx_queue->write_count;
 
-	tx_queue->xmit_more_available = false;
+	tx_queue->xmit_pending = false;
 	if (unlikely(tx_queue->write_count == tx_queue->insert_count))
 		return;
 
diff --git a/drivers/net/ethernet/sfc/net_driver.h b/drivers/net/ethernet/sfc/net_driver.h
index 062462a138475..fb7290bbb135c 100644
--- a/drivers/net/ethernet/sfc/net_driver.h
+++ b/drivers/net/ethernet/sfc/net_driver.h
@@ -244,7 +244,7 @@ struct efx_tx_buffer {
  * @tso_fallbacks: Number of times TSO fallback used
  * @pushes: Number of times the TX push feature has been used
  * @pio_packets: Number of times the TX PIO feature has been used
- * @xmit_more_available: Are any packets waiting to be pushed to the NIC
+ * @xmit_pending: Are any packets waiting to be pushed to the NIC
  * @cb_packets: Number of times the TX copybreak feature has been used
  * @notify_count: Count of notified descriptors to the NIC
  * @empty_read_count: If the completion path has seen the queue as empty
@@ -292,7 +292,7 @@ struct efx_tx_queue {
 	unsigned int tso_fallbacks;
 	unsigned int pushes;
 	unsigned int pio_packets;
-	bool xmit_more_available;
+	bool xmit_pending;
 	unsigned int cb_packets;
 	unsigned int notify_count;
 	/* Statistics to supplement MAC stats */
diff --git a/drivers/net/ethernet/sfc/tx.c b/drivers/net/ethernet/sfc/tx.c
index 727201d5eb24e..c502d226371a9 100644
--- a/drivers/net/ethernet/sfc/tx.c
+++ b/drivers/net/ethernet/sfc/tx.c
@@ -268,6 +268,19 @@ static int efx_enqueue_skb_pio(struct efx_tx_queue *tx_queue,
 }
 #endif /* EFX_USE_PIO */
 
+/* Send any pending traffic for a channel. xmit_more is shared across all
+ * queues for a channel, so we must check all of them.
+ */
+static void efx_tx_send_pending(struct efx_channel *channel)
+{
+	struct efx_tx_queue *q;
+
+	efx_for_each_channel_tx_queue(q, channel) {
+		if (q->xmit_pending)
+			efx_nic_push_buffers(q);
+	}
+}
+
 /*
  * Add a socket buffer to a TX queue
  *
@@ -336,21 +349,11 @@ netdev_tx_t __efx_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb
 
 	efx_tx_maybe_stop_queue(tx_queue);
 
-	/* Pass off to hardware */
-	if (__netdev_tx_sent_queue(tx_queue->core_txq, skb_len, xmit_more)) {
-		struct efx_tx_queue *txq2 = efx_tx_queue_partner(tx_queue);
-
-		/* There could be packets left on the partner queue if
-		 * xmit_more was set. If we do not push those they
-		 * could be left for a long time and cause a netdev watchdog.
-		 */
-		if (txq2->xmit_more_available)
-			efx_nic_push_buffers(txq2);
+	tx_queue->xmit_pending = true;
 
-		efx_nic_push_buffers(tx_queue);
-	} else {
-		tx_queue->xmit_more_available = xmit_more;
-	}
+	/* Pass off to hardware */
+	if (__netdev_tx_sent_queue(tx_queue->core_txq, skb_len, xmit_more))
+		efx_tx_send_pending(tx_queue->channel);
 
 	if (segments) {
 		tx_queue->tso_bursts++;
@@ -371,14 +374,8 @@ netdev_tx_t __efx_enqueue_skb(struct efx_tx_queue *tx_queue, struct sk_buff *skb
 	 * on this queue or a partner queue then we need to push here to get the
 	 * previous packets out.
 	 */
-	if (!xmit_more) {
-		struct efx_tx_queue *txq2 = efx_tx_queue_partner(tx_queue);
-
-		if (txq2->xmit_more_available)
-			efx_nic_push_buffers(txq2);
-
-		efx_nic_push_buffers(tx_queue);
-	}
+	if (!xmit_more)
+		efx_tx_send_pending(tx_queue->channel);
 
 	return NETDEV_TX_OK;
 }
@@ -489,18 +486,24 @@ netdev_tx_t efx_hard_start_xmit(struct sk_buff *skb,
 
 	EFX_WARN_ON_PARANOID(!netif_device_present(net_dev));
 
-	/* PTP "event" packet */
-	if (unlikely(efx_xmit_with_hwtstamp(skb)) &&
-	    unlikely(efx_ptp_is_ptp_tx(efx, skb))) {
-		return efx_ptp_tx(efx, skb);
-	}
-
 	index = skb_get_queue_mapping(skb);
 	type = skb->ip_summed == CHECKSUM_PARTIAL ? EFX_TXQ_TYPE_OFFLOAD : 0;
 	if (index >= efx->n_tx_channels) {
 		index -= efx->n_tx_channels;
 		type |= EFX_TXQ_TYPE_HIGHPRI;
 	}
+
+	/* PTP "event" packet */
+	if (unlikely(efx_xmit_with_hwtstamp(skb)) &&
+	    unlikely(efx_ptp_is_ptp_tx(efx, skb))) {
+		/* There may be existing transmits on the channel that are
+		 * waiting for this packet to trigger the doorbell write.
+		 * We need to send the packets at this point.
+		 */
+		efx_tx_send_pending(efx_get_tx_channel(efx, index));
+		return efx_ptp_tx(efx, skb);
+	}
+
 	tx_queue = efx_get_tx_queue(efx, index, type);
 
 	return __efx_enqueue_skb(tx_queue, skb);
diff --git a/drivers/net/ethernet/sfc/tx_common.c b/drivers/net/ethernet/sfc/tx_common.c
index 793e234819a8c..187d5c379a377 100644
--- a/drivers/net/ethernet/sfc/tx_common.c
+++ b/drivers/net/ethernet/sfc/tx_common.c
@@ -78,7 +78,7 @@ void efx_init_tx_queue(struct efx_tx_queue *tx_queue)
 	tx_queue->read_count = 0;
 	tx_queue->old_read_count = 0;
 	tx_queue->empty_read_count = 0 | EFX_EMPTY_COUNT_VALID;
-	tx_queue->xmit_more_available = false;
+	tx_queue->xmit_pending = false;
 	tx_queue->timestamping = (efx_ptp_use_mac_tx_timestamps(efx) &&
 				  tx_queue->channel == efx_ptp_channel(efx));
 	tx_queue->completed_timestamp_major = 0;
@@ -116,7 +116,7 @@ void efx_fini_tx_queue(struct efx_tx_queue *tx_queue)
 
 		++tx_queue->read_count;
 	}
-	tx_queue->xmit_more_available = false;
+	tx_queue->xmit_pending = false;
 	netdev_tx_reset_queue(tx_queue->core_txq);
 }
 
-- 
2.25.1


  parent reply	other threads:[~2020-10-27  0:34 UTC|newest]

Thread overview: 154+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-26 23:46 [PATCH AUTOSEL 5.9 001/147] powerpc/vmemmap: Fix memory leak with vmemmap list allocation failures Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 002/147] powerpc/powernv/smp: Fix spurious DBG() warning Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 003/147] RDMA/core: Change how failing destroy is handled during uobj abort Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 004/147] f2fs: allocate proper size memory for zstd decompress Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 005/147] powerpc/watchpoint/ptrace: Fix SETHWDEBUG when CONFIG_HAVE_HW_BREAKPOINT=N Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 006/147] mm: fix exec activate_mm vs TLB shootdown and lazy tlb switching race Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 007/147] powerpc: select ARCH_WANT_IRQS_OFF_ACTIVATE_MM Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 008/147] sparc64: remove mm_cpumask clearing to fix kthread_use_mm race Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 009/147] f2fs: add trace exit in exception path Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 010/147] f2fs: do sanity check on zoned block device path Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 011/147] f2fs: fix uninit-value in f2fs_lookup Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 012/147] f2fs: fix to check segment boundary during SIT page readahead Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 013/147] s390/startup: avoid save_area_sync overflow Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 014/147] f2fs: compress: fix to disallow enabling compress on non-empty file Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 015/147] s390/ap/zcrypt: revisit ap and zcrypt error handling Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 016/147] um: change sigio_spinlock to a mutex Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 017/147] f2fs: handle errors of f2fs_get_meta_page_nofail Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 018/147] afs: Don't assert on unpurgeable server records Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 019/147] MIPS: ftrace: Remove redundant #ifdef CONFIG_DYNAMIC_FTRACE Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 020/147] powerpc/64s: handle ISA v3.1 local copy-paste context switches Sasha Levin
2020-10-26 23:46 ` [PATCH AUTOSEL 5.9 021/147] ARM: 8997/2: hw_breakpoint: Handle inexact watchpoint addresses Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 022/147] NFS4: Fix oops when copy_file_range is attempted with NFS4.0 source Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 023/147] xfs: Set xfs_buf type flag when growing summary/bitmap files Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 024/147] xfs: Set xfs_buf's b_ops member when zeroing bitmap/summary files Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 025/147] xfs: log new intent items created as part of finishing recovered intent items Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 026/147] power: supply: bq27xxx: report "not charging" on all types Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 027/147] xfs: change the order in which child and parent defer ops are finished Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 028/147] xfs: fix realtime bitmap/summary file truncation when growing rt volume Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 029/147] io_uring: don't set COMP_LOCKED if won't put Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 030/147] ath10k: fix retry packets update in station dump Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 031/147] x86/kaslr: Initialize mem_limit to the real maximum address Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 032/147] drm/ast: Separate DRM driver from PCI code Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 033/147] drm/amdgpu: restore ras flags when user resets eeprom(v2) Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 034/147] video: fbdev: pvr2fb: initialize variables Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 035/147] ath10k: start recovery process when payload length exceeds max htc length for sdio Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 036/147] ath10k: fix VHT NSS calculation when STBC is enabled Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 037/147] drm/scheduler: Scheduler priority fixes (v2) Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 038/147] drm/brige/megachips: Add checking if ge_b850v3_lvds_init() is working correctly Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 039/147] ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work Sasha Levin
2020-11-05 13:48   ` Build error with 5.9.5 in sound/soc/sof/intel/hda-codec.c (was: [PATCH AUTOSEL 5.9 039/147] ASoC: SOF: fix a runtime pm issue in SOF when HDMI codec doesn't work) Thorsten Leemhuis
2020-11-05 15:40     ` Greg KH
2020-11-05 21:18       ` Greg KH
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 040/147] selftests/x86/fsgsbase: Reap a forgotten child Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 041/147] drm/bridge_connector: Set default status connected for eDP connectors Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 042/147] media: videodev2.h: RGB BT2020 and HSV are always full range Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 043/147] ASoC: AMD: Clean kernel log from deferred probe error messages Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 044/147] misc: fastrpc: fix common struct sg_table related issues Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 045/147] staging: wfx: fix potential use before init Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 046/147] media: platform: Improve queue set up flow for bug fixing Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 047/147] usb: typec: tcpm: During PR_SWAP, source caps should be sent only after tSwapSourceStart Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 048/147] media: tw5864: check status of tw5864_frameinterval_get Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 049/147] drm/vkms: avoid warning in vkms_get_vblank_timestamp Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 050/147] media: imx274: fix frame interval handling Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 051/147] mmc: via-sdmmc: Fix data race bug Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 052/147] drm/bridge/synopsys: dsi: add support for non-continuous HS clock Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 053/147] brcmfmac: increase F2 watermark for BCM4329 Sasha Levin
2020-10-26 23:47 ` Sasha Levin [this message]
2020-10-27 13:24   ` [PATCH AUTOSEL 5.9 054/147] sfc: add and use efx_tx_send_pending in tx.c Edward Cree
2020-11-01 23:52     ` Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 055/147] arm64: topology: Stop using MPIDR for topology information Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 056/147] printk: reduce LOG_BUF_SHIFT range for H8300 Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 057/147] ia64: kprobes: Use generic kretprobe trampoline handler Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 058/147] selftests/powerpc: Make using_hash_mmu() work on Cell & PowerMac Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 059/147] kgdb: Make "kgdbcon" work properly with "kgdb_earlycon" Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 060/147] bpf: Permit map_ptr arithmetic with opcode add and offset 0 Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 061/147] drm: exynos: fix common struct sg_table related issues Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 062/147] xen: gntdev: " Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 063/147] drm: lima: " Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 064/147] drm: panfrost: " Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 065/147] media: uvcvideo: Fix dereference of out-of-bound list iterator Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 066/147] nfc: s3fwrn5: Add missing CRYPTO_HASH dependency Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 067/147] selftests/bpf: Define string const as global for test_sysctl_prog.c Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 068/147] selinux: access policycaps with READ_ONCE/WRITE_ONCE Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 069/147] samples/bpf: Fix possible deadlock in xdpsock Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 070/147] drm/amd/display: Check clock table return Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 071/147] riscv: Define AT_VECTOR_SIZE_ARCH for ARCH_DLINFO Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 072/147] cpufreq: sti-cpufreq: add stih418 support Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 073/147] USB: adutux: fix debugging Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 074/147] uio: free uio id after uio file node is freed Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 075/147] coresight: Make sysfs functional on topologies with per core sink Sasha Levin
2020-11-02  6:59   ` Linu Cherian
2020-11-02 17:29     ` Mathieu Poirier
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 076/147] drm/amdgpu: No sysfs, not an error condition Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 077/147] mac80211: add missing queue/hash initialization to 802.3 xmit Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 078/147] usb: xhci: omit duplicate actions when suspending a runtime suspended host Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 079/147] SUNRPC: Mitigate cond_resched() in xprt_transmit() Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 080/147] cpuidle: tegra: Correctly handle result of arm_cpuidle_simple_enter() Sasha Levin
2020-10-26 23:47 ` [PATCH AUTOSEL 5.9 081/147] arm64/mm: return cpu_all_mask when node is NUMA_NO_NODE Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 082/147] can: flexcan: disable clocks during stop mode Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 083/147] habanalabs: remove security from ARB_MST_QUIET register Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 084/147] xfs: don't free rt blocks when we're doing a REMAP bunmapi call Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 085/147] xfs: avoid LR buffer overrun due to crafted h_len Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 086/147] ACPI: Add out of bounds and numa_off protections to pxm_to_node() Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 087/147] genirq: Add stub for set_handle_irq() when !GENERIC_IRQ_MULTI_HANDLER Sasha Levin
2020-10-27  8:51   ` Marc Zyngier
2020-11-01 23:52     ` Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 088/147] octeontx2-af: fix LD CUSTOM LTYPE aliasing Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 089/147] dm: change max_io_len() to use blk_max_size_offset() Sasha Levin
2020-10-27 12:19   ` Mike Snitzer
2020-11-02  0:30     ` Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 090/147] brcmfmac: Fix warning message after dongle setup failed Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 091/147] ath11k: Use GFP_ATOMIC instead of GFP_KERNEL in ath11k_dp_htt_get_ppdu_desc Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 092/147] ath11k: fix warning caused by lockdep_assert_held Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 093/147] ath11k: change to disable softirqs for ath11k_regd_update to solve deadlock Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 094/147] drivers/net/wan/hdlc_fr: Correctly handle special skb->protocol values Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 095/147] usb: dwc3: core: do not queue work if dr_mode is not USB_DR_MODE_OTG Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 096/147] bus: mhi: core: Abort suspends due to outgoing pending packets Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 097/147] bus/fsl_mc: Do not rely on caller to provide non NULL mc_io Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 098/147] ACPI: HMAT: Fix handling of changes from ACPI 6.2 to ACPI 6.3 Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 099/147] power: supply: test_power: add missing newlines when printing parameters by sysfs Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 100/147] drm/amd/display: HDMI remote sink need mode validation for Linux Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 101/147] drm/amd/display: Avoid set zero in the requested clk Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 102/147] ARC: [dts] fix the errors detected by dtbs_check Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 103/147] block: Consider only dispatched requests for inflight statistic Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 104/147] btrfs: fix replace of seed device Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 105/147] md/bitmap: md_bitmap_get_counter returns wrong blocks Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 106/147] f2fs: fix to set SBI_NEED_FSCK flag for inconsistent inode Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 107/147] bnxt_en: Log unknown link speed appropriately Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 108/147] binfmt_elf: take the mmap lock around find_extend_vma() Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 109/147] rpmsg: glink: Use complete_all for open states Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 110/147] PCI/ACPI: Add Ampere Altra SOC MCFG quirk Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 111/147] clk: ti: clockdomain: fix static checker warning Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 112/147] nfsd: rename delegation related tracepoints to make them less confusing Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 113/147] nfsd4: remove check_conflicting_opens warning Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 114/147] phy: marvell: comphy: Convert internal SMCC firmware return codes to errno Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 115/147] net: 9p: initialize sun_server.sun_path to have addr's value only when addr is valid Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 116/147] ceph: encode inodes' parent/d_name in cap reconnect message Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 117/147] drivers: watchdog: rdc321x_wdt: Fix race condition bugs Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 118/147] jbd2: avoid transaction reuse after reformatting Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 119/147] ext4: Detect already used quota file early Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 120/147] PCI: dwc: Add link up check in dw_child_pcie_ops.map_bus() Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 121/147] KVM: PPC: Book3S HV: Do not allocate HPT for a nested guest Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 122/147] scsi: core: Clean up allocation and freeing of sgtables Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 123/147] gfs2: call truncate_inode_pages_final for address space glocks Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 124/147] gfs2: Fix NULL pointer dereference in gfs2_rgrp_dump Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 125/147] gfs2: use-after-free in sysfs deregistration Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 126/147] gfs2: add validation checks for size of superblock Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 127/147] Handle STATUS_IO_TIMEOUT gracefully Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 128/147] cifs: handle -EINTR in cifs_setattr Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 129/147] arm64: dts: renesas: ulcb: add full-pwr-cycle-in-suspend into eMMC nodes Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 130/147] ARM: dts: omap4: Fix sgx clock rate for 4430 Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 131/147] soc: imx: gpcv2: Use dev_err_probe() to simplify error handling Sasha Levin
2020-10-26 23:59   ` Fabio Estevam
2020-11-02  0:31     ` Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 132/147] memory: emif: Remove bogus debugfs " Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 133/147] ARM: dts: s5pv210: Enable audio on Aries boards Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 134/147] ARM: dts: s5pv210: remove DMA controller bus node name to fix dtschema warnings Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 135/147] ARM: dts: s5pv210: move fixed clocks under root node Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 136/147] ARM: dts: s5pv210: move PMU node out of clock controller Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 137/147] ARM: dts: s5pv210: remove dedicated 'audio-subsystem' node Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 138/147] ARM: dts: s5pv210: add RTC 32 KHz clock in Aries family Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 139/147] ARM: dts: s5pv210: align SPI GPIO node name with dtschema in Aries Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 140/147] soc: qcom: rpmh-rsc: Sleep waiting for tcs slots to be free Sasha Levin
2020-10-26 23:48 ` [PATCH AUTOSEL 5.9 141/147] soc: ti: k3: ringacc: add am65x sr2.0 support Sasha Levin

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=20201026234905.1022767-54-sashal@kernel.org \
    --to=sashal@kernel.org \
    --cc=ecree@solarflare.com \
    --cc=kuba@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=stable@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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).