All of lore.kernel.org
 help / color / mirror / Atom feed
From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	stable@vger.kernel.org, Wen Gong <quic_wgong@quicinc.com>,
	Kalle Valo <quic_kvalo@quicinc.com>,
	Kalle Valo <kvalo@kernel.org>
Subject: [PATCH 5.17 104/114] ath11k: reduce the wait time of 11d scan and hw scan while add interface
Date: Mon, 16 May 2022 21:37:18 +0200	[thread overview]
Message-ID: <20220516193628.461187580@linuxfoundation.org> (raw)
In-Reply-To: <20220516193625.489108457@linuxfoundation.org>

From: Wen Gong <quic_wgong@quicinc.com>

commit bb300130e47fcefbe938f06dbacaef0312e28416 upstream.

(cherry picked from commit 1f682dc9fb3790aa7ec27d3d122ff32b1eda1365 in wireless-next)

Currently ath11k will wait 11d scan complete while add interface in
ath11k_mac_op_add_interface(), when system resume without enable
wowlan, ath11k_mac_op_add_interface() is called for each resume, thus
it increase the resume time of system. And ath11k_mac_op_hw_scan()
after ath11k_mac_op_add_interface() also needs some time cost because
the previous 11d scan need more than 5 seconds when 6 GHz is enabled,
then the scan started event will indicated to ath11k after the 11d
scan completed.

While 11d scan/hw scan is running in firmware, if ath11k update channel
list to firmware by WMI_SCAN_CHAN_LIST_CMDID, then firmware will cancel
the current scan which is running, it lead the scan failed. The patch
commit 9dcf6808b253 ("ath11k: add 11d scan offload support") used
finish_11d_scan/finish_11d_ch_list/pending_11d to synchronize the 11d
scan/hw scan/channel list between ath11k/firmware/mac80211 and to avoid
the scan fail.

Add wait operation before ath11k update channel list, function
ath11k_reg_update_chan_list() will wait until the current 11d scan/hw
scan completed. And remove the wait operation of start 11d scan and
waiting channel list complete in hw scan. After these changes, resume
time cost reduce about 5 seconds and also hw scan time cost reduced
obviously, and scan failed not seen.

The 11d scan is sent to firmware only one time for each interface added
in mac.c, and it is moved after the 1st hw scan because 11d scan will
cost some time and thus leads the AP scan result update to UI delay.
Currently priority of ath11k's hw scan is WMI_SCAN_PRIORITY_LOW, and
priority of 11d scan in firmware is WMI_SCAN_PRIORITY_MEDIUM, then the
11d scan which sent after hw scan will cancel the hw scan in firmware,
so change the priority to WMI_SCAN_PRIORITY_MEDIUM for the hw scan which
is in front of the 11d scan, thus it will not happen scan cancel in
firmware.

Tested-on: WCN6855 hw2.0 PCI WLAN.HSP.1.1-03125-QCAHSPSWPL_V1_V2_SILICONZ_LITE-3

Fixes: 9dcf6808b253 ("ath11k: add 11d scan offload support")
Link: https://bugzilla.kernel.org/show_bug.cgi?id=215777
Cc: <stable@vger.kernel.org>
Signed-off-by: Wen Gong <quic_wgong@quicinc.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/20220328035832.14122-1-quic_wgong@quicinc.com
Signed-off-by: Kalle Valo <kvalo@kernel.org>
Link: https://lore.kernel.org/r/20220427111619.9758-1-kvalo@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
---
 drivers/net/wireless/ath/ath11k/core.c |    1 
 drivers/net/wireless/ath/ath11k/core.h |   13 ++++--
 drivers/net/wireless/ath/ath11k/mac.c  |   71 +++++++++++++--------------------
 drivers/net/wireless/ath/ath11k/mac.h  |    2 
 drivers/net/wireless/ath/ath11k/reg.c  |   43 +++++++++++++------
 drivers/net/wireless/ath/ath11k/reg.h  |    2 
 drivers/net/wireless/ath/ath11k/wmi.c  |   16 ++++++-
 7 files changed, 84 insertions(+), 64 deletions(-)

--- a/drivers/net/wireless/ath/ath11k/core.c
+++ b/drivers/net/wireless/ath/ath11k/core.c
@@ -1275,6 +1275,7 @@ static void ath11k_core_restart(struct w
 
 		ieee80211_stop_queues(ar->hw);
 		ath11k_mac_drain_tx(ar);
+		complete(&ar->completed_11d_scan);
 		complete(&ar->scan.started);
 		complete(&ar->scan.completed);
 		complete(&ar->peer_assoc_done);
--- a/drivers/net/wireless/ath/ath11k/core.h
+++ b/drivers/net/wireless/ath/ath11k/core.h
@@ -38,6 +38,8 @@
 
 extern unsigned int ath11k_frame_mode;
 
+#define ATH11K_SCAN_TIMEOUT_HZ (20 * HZ)
+
 #define ATH11K_MON_TIMER_INTERVAL  10
 
 enum ath11k_supported_bw {
@@ -189,6 +191,12 @@ enum ath11k_scan_state {
 	ATH11K_SCAN_ABORTING,
 };
 
+enum ath11k_11d_state {
+	ATH11K_11D_IDLE,
+	ATH11K_11D_PREPARING,
+	ATH11K_11D_RUNNING,
+};
+
 enum ath11k_dev_flags {
 	ATH11K_CAC_RUNNING,
 	ATH11K_FLAG_CORE_REGISTERED,
@@ -599,9 +607,8 @@ struct ath11k {
 	bool dfs_block_radar_events;
 	struct ath11k_thermal thermal;
 	u32 vdev_id_11d_scan;
-	struct completion finish_11d_scan;
-	struct completion finish_11d_ch_list;
-	bool pending_11d;
+	struct completion completed_11d_scan;
+	enum ath11k_11d_state state_11d;
 	bool regdom_set_by_user;
 };
 
--- a/drivers/net/wireless/ath/ath11k/mac.c
+++ b/drivers/net/wireless/ath/ath11k/mac.c
@@ -3596,26 +3596,6 @@ static int ath11k_mac_op_hw_scan(struct
 	if (ret)
 		goto exit;
 
-	/* Currently the pending_11d=true only happened 1 time while
-	 * wlan interface up in ath11k_mac_11d_scan_start(), it is called by
-	 * ath11k_mac_op_add_interface(), after wlan interface up,
-	 * pending_11d=false always.
-	 * If remove below wait, it always happened scan fail and lead connect
-	 * fail while wlan interface up, because it has a 11d scan which is running
-	 * in firmware, and lead this scan failed.
-	 */
-	if (ar->pending_11d) {
-		long time_left;
-		unsigned long timeout = 5 * HZ;
-
-		if (ar->supports_6ghz)
-			timeout += 5 * HZ;
-
-		time_left = wait_for_completion_timeout(&ar->finish_11d_ch_list, timeout);
-		ath11k_dbg(ar->ab, ATH11K_DBG_MAC,
-			   "mac wait 11d channel list time left %ld\n", time_left);
-	}
-
 	memset(&arg, 0, sizeof(arg));
 	ath11k_wmi_start_scan_init(ar, &arg);
 	arg.vdev_id = arvif->vdev_id;
@@ -3681,6 +3661,10 @@ exit:
 		kfree(arg.extraie.ptr);
 
 	mutex_unlock(&ar->conf_mutex);
+
+	if (ar->state_11d == ATH11K_11D_PREPARING)
+		ath11k_mac_11d_scan_start(ar, arvif->vdev_id);
+
 	return ret;
 }
 
@@ -5809,7 +5793,7 @@ static int ath11k_mac_op_start(struct ie
 
 	/* TODO: Do we need to enable ANI? */
 
-	ath11k_reg_update_chan_list(ar);
+	ath11k_reg_update_chan_list(ar, false);
 
 	ar->num_started_vdevs = 0;
 	ar->num_created_vdevs = 0;
@@ -5876,6 +5860,11 @@ static void ath11k_mac_op_stop(struct ie
 	cancel_work_sync(&ar->ab->update_11d_work);
 	cancel_work_sync(&ar->ab->rfkill_work);
 
+	if (ar->state_11d == ATH11K_11D_PREPARING) {
+		ar->state_11d = ATH11K_11D_IDLE;
+		complete(&ar->completed_11d_scan);
+	}
+
 	spin_lock_bh(&ar->data_lock);
 	list_for_each_entry_safe(ppdu_stats, tmp, &ar->ppdu_stats_info, list) {
 		list_del(&ppdu_stats->list);
@@ -6046,7 +6035,7 @@ static bool ath11k_mac_vif_ap_active_any
 	return false;
 }
 
-void ath11k_mac_11d_scan_start(struct ath11k *ar, u32 vdev_id, bool wait)
+void ath11k_mac_11d_scan_start(struct ath11k *ar, u32 vdev_id)
 {
 	struct wmi_11d_scan_start_params param;
 	int ret;
@@ -6074,28 +6063,22 @@ void ath11k_mac_11d_scan_start(struct at
 
 	ath11k_dbg(ar->ab, ATH11K_DBG_MAC, "mac start 11d scan\n");
 
-	if (wait)
-		reinit_completion(&ar->finish_11d_scan);
-
 	ret = ath11k_wmi_send_11d_scan_start_cmd(ar, &param);
 	if (ret) {
 		ath11k_warn(ar->ab, "failed to start 11d scan vdev %d ret: %d\n",
 			    vdev_id, ret);
 	} else {
 		ar->vdev_id_11d_scan = vdev_id;
-		if (wait) {
-			ar->pending_11d = true;
-			ret = wait_for_completion_timeout(&ar->finish_11d_scan,
-							  5 * HZ);
-			ath11k_dbg(ar->ab, ATH11K_DBG_MAC,
-				   "mac 11d scan left time %d\n", ret);
-
-			if (!ret)
-				ar->pending_11d = false;
-		}
+		if (ar->state_11d == ATH11K_11D_PREPARING)
+			ar->state_11d = ATH11K_11D_RUNNING;
 	}
 
 fin:
+	if (ar->state_11d == ATH11K_11D_PREPARING) {
+		ar->state_11d = ATH11K_11D_IDLE;
+		complete(&ar->completed_11d_scan);
+	}
+
 	mutex_unlock(&ar->ab->vdev_id_11d_lock);
 }
 
@@ -6118,12 +6101,15 @@ void ath11k_mac_11d_scan_stop(struct ath
 		vdev_id = ar->vdev_id_11d_scan;
 
 		ret = ath11k_wmi_send_11d_scan_stop_cmd(ar, vdev_id);
-		if (ret)
+		if (ret) {
 			ath11k_warn(ar->ab,
 				    "failed to stopt 11d scan vdev %d ret: %d\n",
 				    vdev_id, ret);
-		else
+		} else {
 			ar->vdev_id_11d_scan = ATH11K_11D_INVALID_VDEV_ID;
+			ar->state_11d = ATH11K_11D_IDLE;
+			complete(&ar->completed_11d_scan);
+		}
 	}
 	mutex_unlock(&ar->ab->vdev_id_11d_lock);
 }
@@ -6319,8 +6305,10 @@ static int ath11k_mac_op_add_interface(s
 			goto err_peer_del;
 		}
 
-		ath11k_mac_11d_scan_start(ar, arvif->vdev_id, true);
-
+		if (test_bit(WMI_TLV_SERVICE_11D_OFFLOAD, ab->wmi_ab.svc_map)) {
+			reinit_completion(&ar->completed_11d_scan);
+			ar->state_11d = ATH11K_11D_PREPARING;
+		}
 		break;
 	case WMI_VDEV_TYPE_MONITOR:
 		set_bit(ATH11K_FLAG_MONITOR_VDEV_CREATED, &ar->monitor_flags);
@@ -7144,7 +7132,7 @@ ath11k_mac_op_unassign_vif_chanctx(struc
 	}
 
 	if (arvif->vdev_type == WMI_VDEV_TYPE_STA)
-		ath11k_mac_11d_scan_start(ar, arvif->vdev_id, false);
+		ath11k_mac_11d_scan_start(ar, arvif->vdev_id);
 
 	mutex_unlock(&ar->conf_mutex);
 }
@@ -8625,8 +8613,7 @@ int ath11k_mac_allocate(struct ath11k_ba
 		ar->monitor_vdev_id = -1;
 		clear_bit(ATH11K_FLAG_MONITOR_VDEV_CREATED, &ar->monitor_flags);
 		ar->vdev_id_11d_scan = ATH11K_11D_INVALID_VDEV_ID;
-		init_completion(&ar->finish_11d_scan);
-		init_completion(&ar->finish_11d_ch_list);
+		init_completion(&ar->completed_11d_scan);
 	}
 
 	return 0;
--- a/drivers/net/wireless/ath/ath11k/mac.h
+++ b/drivers/net/wireless/ath/ath11k/mac.h
@@ -130,7 +130,7 @@ extern const struct htt_rx_ring_tlv_filt
 #define ATH11K_SCAN_11D_INTERVAL		600000
 #define ATH11K_11D_INVALID_VDEV_ID		0xFFFF
 
-void ath11k_mac_11d_scan_start(struct ath11k *ar, u32 vdev_id, bool wait);
+void ath11k_mac_11d_scan_start(struct ath11k *ar, u32 vdev_id);
 void ath11k_mac_11d_scan_stop(struct ath11k *ar);
 void ath11k_mac_11d_scan_stop_all(struct ath11k_base *ab);
 
--- a/drivers/net/wireless/ath/ath11k/reg.c
+++ b/drivers/net/wireless/ath/ath11k/reg.c
@@ -93,7 +93,7 @@ ath11k_reg_notifier(struct wiphy *wiphy,
 	ar->regdom_set_by_user = true;
 }
 
-int ath11k_reg_update_chan_list(struct ath11k *ar)
+int ath11k_reg_update_chan_list(struct ath11k *ar, bool wait)
 {
 	struct ieee80211_supported_band **bands;
 	struct scan_chan_list_params *params;
@@ -102,7 +102,32 @@ int ath11k_reg_update_chan_list(struct a
 	struct channel_param *ch;
 	enum nl80211_band band;
 	int num_channels = 0;
-	int i, ret;
+	int i, ret, left;
+
+	if (wait && ar->state_11d != ATH11K_11D_IDLE) {
+		left = wait_for_completion_timeout(&ar->completed_11d_scan,
+						   ATH11K_SCAN_TIMEOUT_HZ);
+		if (!left) {
+			ath11k_dbg(ar->ab, ATH11K_DBG_REG,
+				   "failed to receive 11d scan complete: timed out\n");
+			ar->state_11d = ATH11K_11D_IDLE;
+		}
+		ath11k_dbg(ar->ab, ATH11K_DBG_REG,
+			   "reg 11d scan wait left time %d\n", left);
+	}
+
+	if (wait &&
+	    (ar->scan.state == ATH11K_SCAN_STARTING ||
+	    ar->scan.state == ATH11K_SCAN_RUNNING)) {
+		left = wait_for_completion_timeout(&ar->scan.completed,
+						   ATH11K_SCAN_TIMEOUT_HZ);
+		if (!left)
+			ath11k_dbg(ar->ab, ATH11K_DBG_REG,
+				   "failed to receive hw scan complete: timed out\n");
+
+		ath11k_dbg(ar->ab, ATH11K_DBG_REG,
+			   "reg hw scan wait left time %d\n", left);
+	}
 
 	bands = hw->wiphy->bands;
 	for (band = 0; band < NUM_NL80211_BANDS; band++) {
@@ -184,11 +209,6 @@ int ath11k_reg_update_chan_list(struct a
 	ret = ath11k_wmi_send_scan_chan_list_cmd(ar, params);
 	kfree(params);
 
-	if (ar->pending_11d) {
-		complete(&ar->finish_11d_ch_list);
-		ar->pending_11d = false;
-	}
-
 	return ret;
 }
 
@@ -254,15 +274,8 @@ int ath11k_regd_update(struct ath11k *ar
 		goto err;
 	}
 
-	if (ar->pending_11d)
-		complete(&ar->finish_11d_scan);
-
 	rtnl_lock();
 	wiphy_lock(ar->hw->wiphy);
-
-	if (ar->pending_11d)
-		reinit_completion(&ar->finish_11d_ch_list);
-
 	ret = regulatory_set_wiphy_regd_sync(ar->hw->wiphy, regd_copy);
 	wiphy_unlock(ar->hw->wiphy);
 	rtnl_unlock();
@@ -273,7 +286,7 @@ int ath11k_regd_update(struct ath11k *ar
 		goto err;
 
 	if (ar->state == ATH11K_STATE_ON) {
-		ret = ath11k_reg_update_chan_list(ar);
+		ret = ath11k_reg_update_chan_list(ar, true);
 		if (ret)
 			goto err;
 	}
--- a/drivers/net/wireless/ath/ath11k/reg.h
+++ b/drivers/net/wireless/ath/ath11k/reg.h
@@ -32,5 +32,5 @@ struct ieee80211_regdomain *
 ath11k_reg_build_regd(struct ath11k_base *ab,
 		      struct cur_regulatory_info *reg_info, bool intersect);
 int ath11k_regd_update(struct ath11k *ar);
-int ath11k_reg_update_chan_list(struct ath11k *ar);
+int ath11k_reg_update_chan_list(struct ath11k *ar, bool wait);
 #endif
--- a/drivers/net/wireless/ath/ath11k/wmi.c
+++ b/drivers/net/wireless/ath/ath11k/wmi.c
@@ -2013,7 +2013,10 @@ void ath11k_wmi_start_scan_init(struct a
 {
 	/* setup commonly used values */
 	arg->scan_req_id = 1;
-	arg->scan_priority = WMI_SCAN_PRIORITY_LOW;
+	if (ar->state_11d == ATH11K_11D_PREPARING)
+		arg->scan_priority = WMI_SCAN_PRIORITY_MEDIUM;
+	else
+		arg->scan_priority = WMI_SCAN_PRIORITY_LOW;
 	arg->dwell_time_active = 50;
 	arg->dwell_time_active_2g = 0;
 	arg->dwell_time_passive = 150;
@@ -6177,8 +6180,10 @@ static void ath11k_wmi_op_ep_tx_credits(
 static int ath11k_reg_11d_new_cc_event(struct ath11k_base *ab, struct sk_buff *skb)
 {
 	const struct wmi_11d_new_cc_ev *ev;
+	struct ath11k *ar;
+	struct ath11k_pdev *pdev;
 	const void **tb;
-	int ret;
+	int ret, i;
 
 	tb = ath11k_wmi_tlv_parse_alloc(ab, skb->data, skb->len, GFP_ATOMIC);
 	if (IS_ERR(tb)) {
@@ -6204,6 +6209,13 @@ static int ath11k_reg_11d_new_cc_event(s
 
 	kfree(tb);
 
+	for (i = 0; i < ab->num_radios; i++) {
+		pdev = &ab->pdevs[i];
+		ar = pdev->ar;
+		ar->state_11d = ATH11K_11D_IDLE;
+		complete(&ar->completed_11d_scan);
+	}
+
 	queue_work(ab->workqueue, &ab->update_11d_work);
 
 	return 0;



  parent reply	other threads:[~2022-05-16 20:39 UTC|newest]

Thread overview: 125+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-05-16 19:35 [PATCH 5.17 000/114] 5.17.9-rc1 review Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 001/114] batman-adv: Dont skb_split skbuffs with frag_list Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 002/114] iwlwifi: iwl-dbg: Use del_timer_sync() before freeing Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 003/114] hwmon: (tmp401) Add OF device ID table Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 004/114] mac80211: Reset MBSSID parameters upon connection Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 005/114] net: rds: use maybe_get_net() when acquiring refcount on TCP sockets Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 006/114] net: Fix features skip in for_each_netdev_feature() Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 007/114] net: mscc: ocelot: fix last VCAP IS1/IS2 filter persisting in hardware when deleted Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 008/114] net: mscc: ocelot: fix VCAP IS2 filters matching on both lookups Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 009/114] net: mscc: ocelot: restrict tc-trap actions to VCAP IS2 lookup 0 Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 010/114] net: mscc: ocelot: avoid corrupting hardware counters when moving VCAP filters Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 011/114] fbdev: simplefb: Cleanup fb_info in .fb_destroy rather than .remove Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 012/114] fbdev: efifb: " Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 013/114] fbdev: vesafb: " Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 014/114] platform/surface: aggregator: Fix initialization order when compiling as builtin module Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 015/114] ice: Fix race during aux device (un)plugging Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 016/114] ice: clear stale Tx queue settings before configuring Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 017/114] ice: fix PTP stale Tx timestamps cleanup Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 018/114] ipv4: drop dst in multicast routing path Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 019/114] drm/nouveau: Fix a potential theorical leak in nouveau_get_backlight_name() Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 020/114] netlink: do not reset transport header in netlink_recvmsg() Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 021/114] net: chelsio: cxgb4: Avoid potential negative array offset Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 022/114] fbdev: efifb: Fix a use-after-free due early fb_info cleanup Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 023/114] net: sfc: fix memory leak due to ptp channel Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 024/114] fanotify: do not allow setting dirent events in mask of non-dir Greg Kroah-Hartman
2022-05-16 19:35 ` [PATCH 5.17 025/114] mac80211_hwsim: call ieee80211_tx_prepare_skb under RCU protection Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 026/114] nfs: fix broken handling of the softreval mount option Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 027/114] ionic: fix missing pci_release_regions() on error in ionic_probe() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 028/114] dim: initialize all struct fields Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 029/114] hwmon: (ltq-cputemp) restrict it to SOC_XWAY Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 030/114] procfs: prevent unprivileged processes accessing fdinfo dir Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 031/114] selftests: vm: Makefile: rename TARGETS to VMTARGETS Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 032/114] net: dsa: flush switchdev workqueue on bridge join error path Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 033/114] arm64: vdso: fix makefile dependency on vdso.so Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 034/114] virtio: fix virtio transitional ids Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 035/114] s390/ctcm: fix variable dereferenced before check Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 036/114] s390/ctcm: fix potential memory leak Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 037/114] s390/lcs: fix variable dereferenced before check Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 038/114] net/sched: act_pedit: really ensure the skb is writable Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 039/114] net: ethernet: mediatek: ppe: fix wrong size passed to memset() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 040/114] net: bcmgenet: Check for Wake-on-LAN interrupt probe deferral Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 041/114] drm/vc4: hdmi: Fix build error for implicit function declaration Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 042/114] mlxsw: Avoid warning during ip6gre device removal Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 043/114] net: dsa: bcm_sf2: Fix Wake-on-LAN with mac_link_down() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 044/114] net/smc: non blocking recvmsg() return -EAGAIN when no data and signal_pending Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 045/114] net: sfc: ef10: fix memory leak in efx_ef10_mtd_probe() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 046/114] tls: Fix context leak on tls_device_down Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 047/114] drm/vmwgfx: Fix fencing on SVGAv3 Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 048/114] gfs2: Fix filesystem block deallocation for short writes Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 049/114] hwmon: (asus_wmi_sensors) Fix CROSSHAIR VI HERO name Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 050/114] hwmon: (f71882fg) Fix negative temperature Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 051/114] RDMA/irdma: Fix deadlock in irdma_cleanup_cm_core() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 052/114] iommu: arm-smmu: disable large page mappings for Nvidia arm-smmu Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 053/114] ASoC: max98090: Reject invalid values in custom control put() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 054/114] ASoC: max98090: Generate notifications on changes for custom control Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 055/114] ASoC: ops: Validate input values in snd_soc_put_volsw_range() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 056/114] s390: disable -Warray-bounds Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 057/114] ASoC: SOF: Fix NULL pointer exception in sof_pci_probe callback Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 058/114] io_uring: assign non-fixed early for async work Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 059/114] net: emaclite: Dont advertise 1000BASE-T and do auto negotiation Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 060/114] net: sfp: Add tx-fault workaround for Huawei MA5671A SFP ONT Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 061/114] secure_seq: use the 64 bits of the siphash for port offset calculation Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 062/114] tcp: use different parts of the port_offset for index and offset Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 063/114] tcp: resalt the secret every 10 seconds Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 064/114] tcp: add small random increments to the source port Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 065/114] tcp: dynamically allocate the perturb table used by source ports Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 066/114] tcp: increase source port perturb table to 2^16 Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 067/114] tcp: drop the hash_32() part from the index calculation Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 068/114] block: Do not call folio_next() on an unreferenced folio Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 069/114] interconnect: Restore sync state by ignoring ipa-virt in provider count Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 070/114] perf tests: Fix coresight `perf test` failure Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 071/114] firmware_loader: use kernel credentials when reading firmware Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 072/114] KVM: PPC: Book3S PR: Enable MSR_DR for switch_mmu_context() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 073/114] usb: xhci-mtk: fix fs isocs transfer error Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 074/114] x86/mm: Fix marking of unused sub-pmd ranges Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 075/114] tty/serial: digicolor: fix possible null-ptr-deref in digicolor_uart_probe() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 076/114] tty: n_gsm: fix buffer over-read in gsm_dlci_data() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 077/114] tty: n_gsm: fix mux activation issues in gsm_config() Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 078/114] tty: n_gsm: fix invalid gsmtty_write_room() result Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 079/114] usb: gadget: uvc: allow for application to cleanly shutdown Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 080/114] usb: cdc-wdm: fix reading stuck on device close Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 081/114] usb: typec: tcpci: Dont skip cleanup in .remove() on error Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 082/114] usb: typec: tcpci_mt6360: Update for BMC PHY setting Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 083/114] USB: serial: pl2303: add device id for HP LM930 Display Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 084/114] USB: serial: qcserial: add support for Sierra Wireless EM7590 Greg Kroah-Hartman
2022-05-16 19:36 ` [PATCH 5.17 085/114] USB: serial: option: add Fibocom L610 modem Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 086/114] USB: serial: option: add Fibocom MA510 modem Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 087/114] slimbus: qcom: Fix IRQ check in qcom_slim_probe Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 088/114] fsl_lpuart: Dont enable interrupts too early Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 089/114] genirq: Remove WARN_ON_ONCE() in generic_handle_domain_irq() Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 090/114] serial: 8250_mtk: Fix UART_EFR register address Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 091/114] serial: 8250_mtk: Fix register address for XON/XOFF character Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 092/114] ceph: fix setting of xattrs on async created inodes Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 093/114] Revert "mm/memory-failure.c: skip huge_zero_page in memory_failure()" Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 094/114] mm/huge_memory: do not overkill when splitting huge_zero_page Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 095/114] mm: mremap: fix sign for EFAULT error return value Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 096/114] drm/vmwgfx: Disable command buffers on svga3 without gbobjects Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 097/114] drm/nouveau/tegra: Stop using iommu_present() Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 098/114] i40e: i40e_main: fix a missing check on list iterator Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 099/114] net: atlantic: always deep reset on pm op, fixing up my null deref regression Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 100/114] net: phy: Fix race condition on link status change Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 101/114] writeback: Avoid skipping inode writeback Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 102/114] cgroup/cpuset: Remove cpus_allowed/mems_allowed setup in cpuset_init_smp() Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 103/114] ping: fix address binding wrt vrf Greg Kroah-Hartman
2022-05-16 19:37 ` Greg Kroah-Hartman [this message]
2022-05-16 19:37 ` [PATCH 5.17 105/114] arm[64]/memremap: dont abuse pfn_valid() to ensure presence of linear map Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 106/114] net: phy: micrel: Do not use kszphy_suspend/resume for KSZ8061 Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 107/114] net: phy: micrel: Pass .probe for KS8737 Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 108/114] SUNRPC: Ensure that the gssproxy client can start in a connected state Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 109/114] drm/vmwgfx: Initialize drm_mode_fb_cmd2 Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 110/114] Revert "drm/amd/pm: keep the BACO feature enabled for suspend" Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 111/114] dma-buf: call dma_buf_stats_setup after dmabuf is in valid list Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 112/114] mm/hwpoison: use pr_err() instead of dump_page() in get_any_page() Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 113/114] net: phy: micrel: Fix incorrect variable type in micrel Greg Kroah-Hartman
2022-05-16 19:37 ` [PATCH 5.17 114/114] mm/kfence: reset PG_slab and memcg_data before freeing __kfence_pool Greg Kroah-Hartman
2022-05-17  1:45 ` [PATCH 5.17 000/114] 5.17.9-rc1 review Zan Aziz
2022-05-17  3:36 ` Fox Chen
2022-05-17  3:40 ` Naresh Kamboju
2022-05-17  4:13 ` Shuah Khan
2022-05-17  7:30 ` Ron Economos
2022-05-17  7:39 ` Jon Hunter
2022-05-17 10:13 ` Fenil Jain
2022-05-17 16:22 ` Florian Fainelli
2022-05-17 19:32 ` Guenter Roeck
2022-05-17 22:12 ` Justin Forbes

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=20220516193628.461187580@linuxfoundation.org \
    --to=gregkh@linuxfoundation.org \
    --cc=kvalo@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=quic_kvalo@quicinc.com \
    --cc=quic_wgong@quicinc.com \
    --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 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.