From: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
To: linux-kernel@vger.kernel.org
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
stable@vger.kernel.org, Stefan Assmann <sassmann@kpanic.de>,
Anjali Singhai Jain <anjali.singhai@intel.com>,
Jacob Keller <jacob.e.keller@intel.com>,
Andrew Bowers <andrewx.bowers@intel.com>,
Jeff Kirsher <jeffrey.t.kirsher@intel.com>,
Sasha Levin <sashal@kernel.org>
Subject: [PATCH 4.9 101/171] i40e: avoid NVM acquire deadlock during NVM update
Date: Thu, 8 Nov 2018 13:51:11 -0800 [thread overview]
Message-ID: <20181108215134.761542619@linuxfoundation.org> (raw)
In-Reply-To: <20181108215127.257643509@linuxfoundation.org>
4.9-stable review patch. If anyone has any objections, please let me know.
------------------
[ Upstream commit 09f79fd49d94cda5837e9bfd0cb222232b3b6d9f ]
X722 devices use the AdminQ to access the NVM, and this requires taking
the AdminQ lock. Because of this, we lock the AdminQ during
i40e_read_nvm(), which is also called in places where the lock is
already held, such as the firmware update path which wants to lock once
and then unlock when finished after performing several tasks.
Although this should have only affected X722 devices, commit
96a39aed25e6 ("i40e: Acquire NVM lock before reads on all devices",
2016-12-02) added locking for all NVM reads, regardless of device
family.
This resulted in us accidentally causing NVM acquire timeouts on all
devices, causing failed firmware updates which left the eeprom in
a corrupt state.
Create unsafe non-locked variants of i40e_read_nvm_word and
i40e_read_nvm_buffer, __i40e_read_nvm_word and __i40e_read_nvm_buffer
respectively. These variants will not take the NVM lock and are expected
to only be called in places where the NVM lock is already held if
needed.
Since the only caller of i40e_read_nvm_buffer() was in such a path,
remove it entirely in favor of the unsafe version. If necessary we can
always add it back in the future.
Additionally, we now need to hold the NVM lock in i40e_validate_checksum
because the call to i40e_calc_nvm_checksum now assumes that the NVM lock
is held. We can further move the call to read I40E_SR_SW_CHECKSUM_WORD
up a bit so that we do not need to acquire the NVM lock twice.
This should resolve firmware updates and also fix potential raise that
could have caused the driver to report an invalid NVM checksum upon
driver load.
Reported-by: Stefan Assmann <sassmann@kpanic.de>
Fixes: 96a39aed25e6 ("i40e: Acquire NVM lock before reads on all devices", 2016-12-02)
Signed-off-by: Anjali Singhai Jain <anjali.singhai@intel.com>
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
drivers/net/ethernet/intel/i40e/i40e_nvm.c | 98 ++++++++++++-------
.../net/ethernet/intel/i40e/i40e_prototype.h | 2 -
2 files changed, 60 insertions(+), 40 deletions(-)
diff --git a/drivers/net/ethernet/intel/i40e/i40e_nvm.c b/drivers/net/ethernet/intel/i40e/i40e_nvm.c
index abe290bfc638..8408682efd86 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_nvm.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_nvm.c
@@ -266,7 +266,7 @@ static i40e_status i40e_read_nvm_aq(struct i40e_hw *hw, u8 module_pointer,
* @offset: offset of the Shadow RAM word to read (0x000000 - 0x001FFF)
* @data: word read from the Shadow RAM
*
- * Reads one 16 bit word from the Shadow RAM using the GLNVM_SRCTL register.
+ * Reads one 16 bit word from the Shadow RAM using the AdminQ
**/
static i40e_status i40e_read_nvm_word_aq(struct i40e_hw *hw, u16 offset,
u16 *data)
@@ -280,27 +280,49 @@ static i40e_status i40e_read_nvm_word_aq(struct i40e_hw *hw, u16 offset,
}
/**
- * i40e_read_nvm_word - Reads Shadow RAM
+ * __i40e_read_nvm_word - Reads nvm word, assumes called does the locking
* @hw: pointer to the HW structure
* @offset: offset of the Shadow RAM word to read (0x000000 - 0x001FFF)
* @data: word read from the Shadow RAM
*
- * Reads one 16 bit word from the Shadow RAM using the GLNVM_SRCTL register.
+ * Reads one 16 bit word from the Shadow RAM.
+ *
+ * Do not use this function except in cases where the nvm lock is already
+ * taken via i40e_acquire_nvm().
+ **/
+static i40e_status __i40e_read_nvm_word(struct i40e_hw *hw,
+ u16 offset, u16 *data)
+{
+ i40e_status ret_code = 0;
+
+ if (hw->flags & I40E_HW_FLAG_AQ_SRCTL_ACCESS_ENABLE)
+ ret_code = i40e_read_nvm_word_aq(hw, offset, data);
+ else
+ ret_code = i40e_read_nvm_word_srctl(hw, offset, data);
+ return ret_code;
+}
+
+/**
+ * i40e_read_nvm_word - Reads nvm word and acquire lock if necessary
+ * @hw: pointer to the HW structure
+ * @offset: offset of the Shadow RAM word to read (0x000000 - 0x001FFF)
+ * @data: word read from the Shadow RAM
+ *
+ * Reads one 16 bit word from the Shadow RAM.
**/
i40e_status i40e_read_nvm_word(struct i40e_hw *hw, u16 offset,
u16 *data)
{
- enum i40e_status_code ret_code = 0;
+ i40e_status ret_code = 0;
ret_code = i40e_acquire_nvm(hw, I40E_RESOURCE_READ);
- if (!ret_code) {
- if (hw->flags & I40E_HW_FLAG_AQ_SRCTL_ACCESS_ENABLE) {
- ret_code = i40e_read_nvm_word_aq(hw, offset, data);
- } else {
- ret_code = i40e_read_nvm_word_srctl(hw, offset, data);
- }
- i40e_release_nvm(hw);
- }
+ if (ret_code)
+ return ret_code;
+
+ ret_code = __i40e_read_nvm_word(hw, offset, data);
+
+ i40e_release_nvm(hw);
+
return ret_code;
}
@@ -393,31 +415,25 @@ read_nvm_buffer_aq_exit:
}
/**
- * i40e_read_nvm_buffer - Reads Shadow RAM buffer
+ * __i40e_read_nvm_buffer - Reads nvm buffer, caller must acquire lock
* @hw: pointer to the HW structure
* @offset: offset of the Shadow RAM word to read (0x000000 - 0x001FFF).
* @words: (in) number of words to read; (out) number of words actually read
* @data: words read from the Shadow RAM
*
* Reads 16 bit words (data buffer) from the SR using the i40e_read_nvm_srrd()
- * method. The buffer read is preceded by the NVM ownership take
- * and followed by the release.
+ * method.
**/
-i40e_status i40e_read_nvm_buffer(struct i40e_hw *hw, u16 offset,
- u16 *words, u16 *data)
+static i40e_status __i40e_read_nvm_buffer(struct i40e_hw *hw,
+ u16 offset, u16 *words,
+ u16 *data)
{
- enum i40e_status_code ret_code = 0;
+ i40e_status ret_code = 0;
- if (hw->flags & I40E_HW_FLAG_AQ_SRCTL_ACCESS_ENABLE) {
- ret_code = i40e_acquire_nvm(hw, I40E_RESOURCE_READ);
- if (!ret_code) {
- ret_code = i40e_read_nvm_buffer_aq(hw, offset, words,
- data);
- i40e_release_nvm(hw);
- }
- } else {
+ if (hw->flags & I40E_HW_FLAG_AQ_SRCTL_ACCESS_ENABLE)
+ ret_code = i40e_read_nvm_buffer_aq(hw, offset, words, data);
+ else
ret_code = i40e_read_nvm_buffer_srctl(hw, offset, words, data);
- }
return ret_code;
}
@@ -499,15 +515,15 @@ static i40e_status i40e_calc_nvm_checksum(struct i40e_hw *hw,
data = (u16 *)vmem.va;
/* read pointer to VPD area */
- ret_code = i40e_read_nvm_word(hw, I40E_SR_VPD_PTR, &vpd_module);
+ ret_code = __i40e_read_nvm_word(hw, I40E_SR_VPD_PTR, &vpd_module);
if (ret_code) {
ret_code = I40E_ERR_NVM_CHECKSUM;
goto i40e_calc_nvm_checksum_exit;
}
/* read pointer to PCIe Alt Auto-load module */
- ret_code = i40e_read_nvm_word(hw, I40E_SR_PCIE_ALT_AUTO_LOAD_PTR,
- &pcie_alt_module);
+ ret_code = __i40e_read_nvm_word(hw, I40E_SR_PCIE_ALT_AUTO_LOAD_PTR,
+ &pcie_alt_module);
if (ret_code) {
ret_code = I40E_ERR_NVM_CHECKSUM;
goto i40e_calc_nvm_checksum_exit;
@@ -521,7 +537,7 @@ static i40e_status i40e_calc_nvm_checksum(struct i40e_hw *hw,
if ((i % I40E_SR_SECTOR_SIZE_IN_WORDS) == 0) {
u16 words = I40E_SR_SECTOR_SIZE_IN_WORDS;
- ret_code = i40e_read_nvm_buffer(hw, i, &words, data);
+ ret_code = __i40e_read_nvm_buffer(hw, i, &words, data);
if (ret_code) {
ret_code = I40E_ERR_NVM_CHECKSUM;
goto i40e_calc_nvm_checksum_exit;
@@ -593,14 +609,19 @@ i40e_status i40e_validate_nvm_checksum(struct i40e_hw *hw,
u16 checksum_sr = 0;
u16 checksum_local = 0;
+ /* We must acquire the NVM lock in order to correctly synchronize the
+ * NVM accesses across multiple PFs. Without doing so it is possible
+ * for one of the PFs to read invalid data potentially indicating that
+ * the checksum is invalid.
+ */
+ ret_code = i40e_acquire_nvm(hw, I40E_RESOURCE_READ);
+ if (ret_code)
+ return ret_code;
ret_code = i40e_calc_nvm_checksum(hw, &checksum_local);
+ __i40e_read_nvm_word(hw, I40E_SR_SW_CHECKSUM_WORD, &checksum_sr);
+ i40e_release_nvm(hw);
if (ret_code)
- goto i40e_validate_nvm_checksum_exit;
-
- /* Do not use i40e_read_nvm_word() because we do not want to take
- * the synchronization semaphores twice here.
- */
- i40e_read_nvm_word(hw, I40E_SR_SW_CHECKSUM_WORD, &checksum_sr);
+ return ret_code;
/* Verify read checksum from EEPROM is the same as
* calculated checksum
@@ -612,7 +633,6 @@ i40e_status i40e_validate_nvm_checksum(struct i40e_hw *hw,
if (checksum)
*checksum = checksum_local;
-i40e_validate_nvm_checksum_exit:
return ret_code;
}
@@ -986,6 +1006,7 @@ retry:
break;
case I40E_NVMUPD_CSUM_CON:
+ /* Assumes the caller has acquired the nvm */
status = i40e_update_nvm_checksum(hw);
if (status) {
*perrno = hw->aq.asq_last_status ?
@@ -1000,6 +1021,7 @@ retry:
break;
case I40E_NVMUPD_CSUM_LCB:
+ /* Assumes the caller has acquired the nvm */
status = i40e_update_nvm_checksum(hw);
if (status) {
*perrno = hw->aq.asq_last_status ?
diff --git a/drivers/net/ethernet/intel/i40e/i40e_prototype.h b/drivers/net/ethernet/intel/i40e/i40e_prototype.h
index 4660c5abc855..6b364118badd 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_prototype.h
+++ b/drivers/net/ethernet/intel/i40e/i40e_prototype.h
@@ -311,8 +311,6 @@ i40e_status i40e_acquire_nvm(struct i40e_hw *hw,
void i40e_release_nvm(struct i40e_hw *hw);
i40e_status i40e_read_nvm_word(struct i40e_hw *hw, u16 offset,
u16 *data);
-i40e_status i40e_read_nvm_buffer(struct i40e_hw *hw, u16 offset,
- u16 *words, u16 *data);
i40e_status i40e_update_nvm_checksum(struct i40e_hw *hw);
i40e_status i40e_validate_nvm_checksum(struct i40e_hw *hw,
u16 *checksum);
--
2.17.1
next prev parent reply other threads:[~2018-11-08 22:18 UTC|newest]
Thread overview: 176+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-11-08 21:49 [PATCH 4.9 000/171] 4.9.136-stable review Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 001/171] xfrm: Validate address prefix lengths in the xfrm selector Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 002/171] xfrm6: call kfree_skb when skb is toobig Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 003/171] mac80211: Always report TX status Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 004/171] cfg80211: reg: Init wiphy_idx in regulatory_hint_core() Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 005/171] mac80211: fix pending queue hang due to TX_DROP Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 006/171] cfg80211: Address some corner cases in scan result channel updating Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 007/171] mac80211: TDLS: fix skb queue/priority assignment Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 008/171] ARM: 8799/1: mm: fix pci_ioremap_io() offset check Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 009/171] xfrm: validate template mode Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 010/171] ARM: dts: BCM63xx: Fix incorrect interrupt specifiers Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 011/171] net: macb: Clean 64b dma addresses if they are not detected Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 012/171] soc: fsl: qbman: qman: avoid allocating from non existing gen_pool Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 013/171] soc: fsl: qe: Fix copy/paste bug in ucc_get_tdm_sync_shift() Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 014/171] nl80211: Fix possible Spectre-v1 for NL80211_TXRATE_HT Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 015/171] mac80211_hwsim: do not omit multicast announce of first added radio Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 016/171] Bluetooth: SMP: fix crash in unpairing Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 017/171] pxa168fb: prepare the clock Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 018/171] qed: Avoid implicit enum conversion in qed_roce_mode_to_flavor Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 019/171] qed: Avoid constant logical operation warning in qed_vf_pf_acquire Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 020/171] asix: Check for supported Wake-on-LAN modes Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 021/171] ax88179_178a: " Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 022/171] lan78xx: " Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 023/171] sr9800: " Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 024/171] r8152: Check for supported Wake-on-LAN Modes Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 025/171] smsc75xx: Check for Wake-on-LAN modes Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 026/171] smsc95xx: " Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 027/171] perf/ring_buffer: Prevent concurent ring buffer access Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 028/171] perf/x86/intel/uncore: Fix PCI BDF address of M3UPI on SKX Greg Kroah-Hartman
2018-11-08 21:49 ` [PATCH 4.9 029/171] net: fec: fix rare tx timeout Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 030/171] declance: Fix continuation with the adapter identification message Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 031/171] net: cxgb3_main: fix a missing-check bug Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 032/171] perf symbols: Fix memory corruption because of zero length symbols Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 033/171] mm/memory_hotplug.c: fix overflow in test_pages_in_a_zone() Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 034/171] MIPS: microMIPS: Fix decoding of swsp16 instruction Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 035/171] MIPS: Handle non word sized instructions when examining frame Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 036/171] scsi: aacraid: Fix typo in blink status Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 037/171] f2fs: fix multiple f2fs_add_link() having same name for inline dentry Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 038/171] igb: Remove superfluous reset to PHY and page 0 selection Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 039/171] ACPI: sysfs: Make ACPI GPE mask kernel parameter cover all GPEs Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 040/171] PCI: Disable MSI for HiSilicon Hip06/Hip07 only in Root Port mode Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 041/171] i2c: bcm2835: Avoid possible NULL ptr dereference Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 042/171] efi/fb: Correct PCI_STD_RESOURCE_END usage Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 043/171] ipv6: set rt6i_protocol properly in the route when it is installed Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 044/171] platform/x86: acer-wmi: setup accelerometer when ACPI device was found Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 045/171] IB/ipoib: Do not warn if IPoIB debugfs doesnt exist Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 046/171] IB/core: Fix the validations of a multicast LID in attach or detach operations Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 047/171] orangefs: off by ones in xattr size checks Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 048/171] rxe: Fix a sleep-in-atomic bug in post_one_send Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 049/171] nvme-pci: fix CMB sysfs file removal in reset path Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 050/171] net: phy: marvell: Limit 88m1101 autoneg errata to 88E1145 as well Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 051/171] net/mlx5: Fix command completion after timeout access invalid structure Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 052/171] tipc: Fix tipc_sk_reinit handling of -EAGAIN Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 053/171] tipc: fix a race condition of releasing subscriber object Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 054/171] bnxt_en: Dont use rtnl lock to protect link change logic in workqueue Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 055/171] ath10k: fix NAPI enable/disable symmetry for AHB interface Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 056/171] ARM: dts: bcm283x: Reserve first page for firmware Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 057/171] btrfs: fiemap: Cache and merge fiemap extent before submit it to user Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 058/171] ata: sata_rcar: Handle return value of clk_prepare_enable Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 059/171] reset: hi6220: Set module license so that it can be loaded Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 060/171] ASoC: Intel: Skylake: Fix to parse consecutive string tkns in manifest Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 061/171] arch/sparc: increase CONFIG_NODES_SHIFT on SPARC64 to 5 Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 062/171] mac80211: fix TX aggregation start/stop callback race Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 063/171] libata: fix error checking in in ata_parse_force_one() Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 064/171] net: ethernet: stmmac: Fix altr_tse_pcs SGMII Initialization Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 065/171] qlcnic: Fix tunnel offload for 82xx adapters Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 066/171] x86/cpu/cyrix: Add alternative Device ID of Geode GX1 SoC Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 067/171] ARM: 8677/1: boot/compressed: fix decompressor header layout for v7-M Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 068/171] gpu: ipu-v3: Fix CSI selection for VDIC Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 069/171] elevator: fix truncation of icq_cache_name Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 070/171] net: stmmac: ensure jumbo_frm error return is correctly checked for -ve value Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 071/171] Btrfs: clear EXTENT_DEFRAG bits in finish_ordered_io Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 072/171] ufs: we need to sync inode before freeing it Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 073/171] net/mlx5e: Fix fixpoint divide exception in mlx5e_am_stats_compare Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 074/171] ip6_tunnel: Correct tos value in collect_md mode Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 075/171] net/mlx5: Fix driver load error flow when firmware is stuck Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 076/171] perf evsel: Fix probing of precise_ip level for default cycles event Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 077/171] perf probe: Fix probe definition for inlined functions Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 078/171] net/mlx5: Fix health work queue spin lock to IRQ safe Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 079/171] usb: renesas_usbhs: gadget: fix spin_lock_init() for &uep->lock Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 080/171] usb: renesas_usbhs: gadget: fix unused-but-set-variable warning Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 081/171] usb: dwc3: omap: remove IRQ_NOAUTOEN used with shared irq Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 082/171] clk: samsung: Fix m2m scaler clock on Exynos542x Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 083/171] ptr_ring: fix up after recent ptr_ring changes Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 084/171] staging: wilc1000: Fix problem with wrong vif index Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 085/171] rds: ib: Fix missing call to rds_ib_dev_put in rds_ib_setup_qp Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 086/171] iio: adc: Revert "axp288: Drop bogus AXP288_ADC_TS_PIN_CTRL register modifications" Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 087/171] qed: Warn PTT usage by wrong hw-function Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 088/171] ocfs2: fix deadlock caused by recursive locking in xattr Greg Kroah-Hartman
2018-11-08 21:50 ` [PATCH 4.9 089/171] net: cdc_ncm: GetNtbFormat endian fix Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 090/171] sctp: use right member as the param of list_for_each_entry Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 091/171] ALSA: hda - No loopback on ALC299 codec Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 092/171] ath10k: convert warning about non-existent OTP board id to debug message Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 093/171] ipv6: fix cleanup ordering for ip6_mr failure Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 094/171] IB/ipoib: Fix lockdep issue found on ipoib_ib_dev_heavy_flush Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 095/171] IB/rxe: put the pool on allocation failure Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 096/171] nbd: only set MSG_MORE when we have more to send Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 097/171] mm/frame_vector.c: release a semaphore in get_vaddr_frames() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 098/171] IB/mlx5: Avoid passing an invalid QP type to firmware Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 099/171] scsi: qla2xxx: Avoid double completion of abort command Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 100/171] drm: bochs: Dont remove uninitialized fbdev framebuffer Greg Kroah-Hartman
2018-11-08 21:51 ` Greg Kroah-Hartman [this message]
2018-11-08 21:51 ` [PATCH 4.9 102/171] Revert "IB/ipoib: Update broadcast object if PKey value was changed in index 0" Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 103/171] Btrfs: incremental send, fix invalid memory access Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 104/171] drm/msm: Fix possible null dereference on failure of get_pages() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 105/171] module: fix DEBUG_SET_MODULE_RONX typo Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 106/171] iio: pressure: zpa2326: Remove always-true check which confuses gcc Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 107/171] l2tp: remove configurable payload offset Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 108/171] macsec: fix memory leaks when skb_to_sgvec fails Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 109/171] perf/core: Fix locking for children siblings group read Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 110/171] cifs: Use ULL suffix for 64-bit constant Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 111/171] futex: futex_wake_op, do not fail on invalid op Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 112/171] ALSA: hda - Fix incorrect usage of IS_REACHABLE() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 113/171] test_bpf: Fix testing with CONFIG_BPF_JIT_ALWAYS_ON=y on other arches Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 114/171] xen-netfront: Update features after registering netdev Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 115/171] sparc64: Fix regression in pmdp_invalidate() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 116/171] xen-netfront: Fix mismatched rtnl_unlock Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 117/171] enic: do not overwrite error code Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 118/171] bonding: ratelimit failed speed/duplex update warning Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 119/171] nvmet: fix space padding in serial number Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 120/171] iio: buffer: fix the function signature to match implementation Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 121/171] x86/paravirt: Fix some warning messages Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 122/171] IB/mlx4: Fix an error handling path in mlx4_ib_rereg_user_mr() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 123/171] libertas: call into generic suspend code before turning off power Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 124/171] xhci: Fix USB3 NULL pointer dereference at logical disconnect Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 125/171] perf tests: Fix indexing when invoking subtests Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 126/171] ARM: dts: imx53-qsb: disable 1.2GHz OPP Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 127/171] rxrpc: Dont check RXRPC_CALL_TX_LAST after calling rxrpc_rotate_tx_window() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 128/171] rxrpc: Only take the rwind and mtu values from latest ACK Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 129/171] net: ena: fix NULL dereference due to untimely napi initialization Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 130/171] fs/fat/fatent.c: add cond_resched() to fat_count_free_clusters() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 131/171] mtd: spi-nor: Add support for is25wp series chips Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 132/171] Revert "netfilter: ipv6: nf_defrag: drop skb dst before queueing" Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 133/171] perf tools: Disable parallelism for make clean Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 134/171] bridge: do not add port to router list when receives query with source 0.0.0.0 Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 135/171] net: bridge: remove ipv6 zero address check in mcast queries Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 136/171] ipv6: mcast: fix a use-after-free in inet6_mc_check Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 137/171] ipv6/ndisc: Preserve IPv6 control buffer if protocol error handlers are called Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 138/171] llc: set SOCK_RCU_FREE in llc_sap_add_socket() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 139/171] net/ipv6: Fix index counter for unicast addresses in in6_dump_addrs Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 140/171] net: sched: gred: pass the right attribute to gred_change_table_def() Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 141/171] net: socket: fix a missing-check bug Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 142/171] net: stmmac: Fix stmmac_mdio_reset() when building stmmac as modules Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 143/171] net: udp: fix handling of CHECKSUM_COMPLETE packets Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 144/171] r8169: fix NAPI handling under high load Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 145/171] sctp: fix race on sctp_id2asoc Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 146/171] vhost: Fix Spectre V1 vulnerability Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 147/171] ethtool: fix a privilege escalation bug Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 148/171] bonding: fix length of actor system Greg Kroah-Hartman
2018-11-08 21:51 ` [PATCH 4.9 149/171] net: drop skb on failure in ip_check_defrag() Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 150/171] net: fix pskb_trim_rcsum_slow() with odd trim offset Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 151/171] rtnetlink: Disallow FDB configuration for non-Ethernet device Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 152/171] ip6_tunnel: Fix encapsulation layout Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 153/171] Revert "x86/mm: Expand static page table for fixmap space" Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 154/171] crypto: shash - Fix a sleep-in-atomic bug in shash_setkey_unaligned Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 155/171] ahci: dont ignore result code of ahci_reset_controller() Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 156/171] gpio: mxs: Get rid of external API call Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 157/171] xfs: truncate transaction does not modify the inobt Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 158/171] cachefiles: fix the race between cachefiles_bury_object() and rmdir(2) Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 159/171] ptp: fix Spectre v1 vulnerability Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 160/171] drm/edid: Add 6 bpc quirk for BOE panel in HP Pavilion 15-n233sl Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 161/171] RDMA/ucma: Fix Spectre v1 vulnerability Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 162/171] IB/ucm: " Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 163/171] cdc-acm: correct counting of UART states in serial state notification Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 164/171] usb: gadget: storage: Fix Spectre v1 vulnerability Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 165/171] USB: fix the usbfs flag sanitization for control transfers Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 166/171] Input: elan_i2c - add ACPI ID for Lenovo IdeaPad 330-15IGM Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 167/171] sched/fair: Fix throttle_list starvation with low CFS quota Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 168/171] x86/percpu: Fix this_cpu_read() Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 169/171] x86/time: Correct the attribute on jiffies definition Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 170/171] net: fs_enet: do not call phy_stop() in interrupts Greg Kroah-Hartman
2018-11-08 21:52 ` [PATCH 4.9 171/171] posix-timers: Sanitize overrun handling Greg Kroah-Hartman
2018-11-09 3:50 ` [PATCH 4.9 000/171] 4.9.136-stable review kernelci.org bot
2018-11-09 19:40 ` Guenter Roeck
2018-11-09 19:48 ` Shuah Khan
2018-11-09 21:55 ` Dan Rue
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=20181108215134.761542619@linuxfoundation.org \
--to=gregkh@linuxfoundation.org \
--cc=andrewx.bowers@intel.com \
--cc=anjali.singhai@intel.com \
--cc=jacob.e.keller@intel.com \
--cc=jeffrey.t.kirsher@intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=sashal@kernel.org \
--cc=sassmann@kpanic.de \
--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