From: Sasha Levin <sashal@kernel.org> To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Trond Myklebust <trond.myklebust@hammerspace.com>, Sasha Levin <sashal@kernel.org>, linux-nfs@vger.kernel.org Subject: [PATCH AUTOSEL 5.2 082/123] NFSv4.1: Fix open stateid recovery Date: Tue, 13 Aug 2019 22:10:06 -0400 Message-ID: <20190814021047.14828-82-sashal@kernel.org> (raw) In-Reply-To: <20190814021047.14828-1-sashal@kernel.org> From: Trond Myklebust <trond.myklebust@hammerspace.com> [ Upstream commit 27a30cf64a5cbe2105e4ff9613246b32d584766a ] The logic for checking in nfs41_check_open_stateid() whether the state is supported by a delegation is inverted. In addition, it makes more sense to perform that check before we check for expired locks. Fixes: 8a64c4ef106d1 ("NFSv4.1: Even if the stateid is OK,...") Signed-off-by: Trond Myklebust <trond.myklebust@hammerspace.com> Signed-off-by: Sasha Levin <sashal@kernel.org> --- fs/nfs/nfs4proc.c | 65 +++++++++++++++++++++++++++-------------------- 1 file changed, 38 insertions(+), 27 deletions(-) diff --git a/fs/nfs/nfs4proc.c b/fs/nfs/nfs4proc.c index 11a5aa46e64c3..b3fd75c8629a4 100644 --- a/fs/nfs/nfs4proc.c +++ b/fs/nfs/nfs4proc.c @@ -1654,6 +1654,14 @@ static void nfs_state_set_open_stateid(struct nfs4_state *state, write_sequnlock(&state->seqlock); } +static void nfs_state_clear_open_state_flags(struct nfs4_state *state) +{ + clear_bit(NFS_O_RDWR_STATE, &state->flags); + clear_bit(NFS_O_WRONLY_STATE, &state->flags); + clear_bit(NFS_O_RDONLY_STATE, &state->flags); + clear_bit(NFS_OPEN_STATE, &state->flags); +} + static void nfs_state_set_delegation(struct nfs4_state *state, const nfs4_stateid *deleg_stateid, fmode_t fmode) @@ -2045,13 +2053,7 @@ static int nfs4_open_recover(struct nfs4_opendata *opendata, struct nfs4_state * { int ret; - /* Don't trigger recovery in nfs_test_and_clear_all_open_stateid */ - clear_bit(NFS_O_RDWR_STATE, &state->flags); - clear_bit(NFS_O_WRONLY_STATE, &state->flags); - clear_bit(NFS_O_RDONLY_STATE, &state->flags); /* memory barrier prior to reading state->n_* */ - clear_bit(NFS_DELEGATED_STATE, &state->flags); - clear_bit(NFS_OPEN_STATE, &state->flags); smp_rmb(); ret = nfs4_open_recover_helper(opendata, FMODE_READ|FMODE_WRITE); if (ret != 0) @@ -2127,6 +2129,8 @@ static int nfs4_open_reclaim(struct nfs4_state_owner *sp, struct nfs4_state *sta ctx = nfs4_state_find_open_context(state); if (IS_ERR(ctx)) return -EAGAIN; + clear_bit(NFS_DELEGATED_STATE, &state->flags); + nfs_state_clear_open_state_flags(state); ret = nfs4_do_open_reclaim(ctx, state); put_nfs_open_context(ctx); return ret; @@ -2669,6 +2673,7 @@ static int nfs40_open_expired(struct nfs4_state_owner *sp, struct nfs4_state *st { /* NFSv4.0 doesn't allow for delegation recovery on open expire */ nfs40_clear_delegation_stateid(state); + nfs_state_clear_open_state_flags(state); return nfs4_open_expired(sp, state); } @@ -2711,13 +2716,13 @@ static int nfs41_test_and_free_expired_stateid(struct nfs_server *server, return -NFS4ERR_EXPIRED; } -static void nfs41_check_delegation_stateid(struct nfs4_state *state) +static int nfs41_check_delegation_stateid(struct nfs4_state *state) { struct nfs_server *server = NFS_SERVER(state->inode); nfs4_stateid stateid; struct nfs_delegation *delegation; const struct cred *cred = NULL; - int status; + int status, ret = NFS_OK; /* Get the delegation credential for use by test/free_stateid */ rcu_read_lock(); @@ -2725,20 +2730,15 @@ static void nfs41_check_delegation_stateid(struct nfs4_state *state) if (delegation == NULL) { rcu_read_unlock(); nfs_state_clear_delegation(state); - return; + return NFS_OK; } nfs4_stateid_copy(&stateid, &delegation->stateid); - if (test_bit(NFS_DELEGATION_REVOKED, &delegation->flags)) { - rcu_read_unlock(); - nfs_state_clear_delegation(state); - return; - } if (!test_and_clear_bit(NFS_DELEGATION_TEST_EXPIRED, &delegation->flags)) { rcu_read_unlock(); - return; + return NFS_OK; } if (delegation->cred) @@ -2748,8 +2748,24 @@ static void nfs41_check_delegation_stateid(struct nfs4_state *state) trace_nfs4_test_delegation_stateid(state, NULL, status); if (status == -NFS4ERR_EXPIRED || status == -NFS4ERR_BAD_STATEID) nfs_finish_clear_delegation_stateid(state, &stateid); + else + ret = status; put_cred(cred); + return ret; +} + +static void nfs41_delegation_recover_stateid(struct nfs4_state *state) +{ + nfs4_stateid tmp; + + if (test_bit(NFS_DELEGATED_STATE, &state->flags) && + nfs4_copy_delegation_stateid(state->inode, state->state, + &tmp, NULL) && + nfs4_stateid_match_other(&state->stateid, &tmp)) + nfs_state_set_delegation(state, &tmp, state->state); + else + nfs_state_clear_delegation(state); } /** @@ -2819,21 +2835,12 @@ static int nfs41_check_open_stateid(struct nfs4_state *state) const struct cred *cred = state->owner->so_cred; int status; - if (test_bit(NFS_OPEN_STATE, &state->flags) == 0) { - if (test_bit(NFS_DELEGATED_STATE, &state->flags) == 0) { - if (nfs4_have_delegation(state->inode, state->state)) - return NFS_OK; - return -NFS4ERR_OPENMODE; - } + if (test_bit(NFS_OPEN_STATE, &state->flags) == 0) return -NFS4ERR_BAD_STATEID; - } status = nfs41_test_and_free_expired_stateid(server, stateid, cred); trace_nfs4_test_open_stateid(state, NULL, status); if (status == -NFS4ERR_EXPIRED || status == -NFS4ERR_BAD_STATEID) { - clear_bit(NFS_O_RDONLY_STATE, &state->flags); - clear_bit(NFS_O_WRONLY_STATE, &state->flags); - clear_bit(NFS_O_RDWR_STATE, &state->flags); - clear_bit(NFS_OPEN_STATE, &state->flags); + nfs_state_clear_open_state_flags(state); stateid->type = NFS4_INVALID_STATEID_TYPE; return status; } @@ -2846,7 +2853,11 @@ static int nfs41_open_expired(struct nfs4_state_owner *sp, struct nfs4_state *st { int status; - nfs41_check_delegation_stateid(state); + status = nfs41_check_delegation_stateid(state); + if (status != NFS_OK) + return status; + nfs41_delegation_recover_stateid(state); + status = nfs41_check_expired_locks(state); if (status != NFS_OK) return status; -- 2.20.1
next prev parent reply index Thread overview: 138+ messages / expand[flat|nested] mbox.gz Atom feed top 2019-08-14 2:08 [PATCH AUTOSEL 5.2 001/123] ASoC: simple_card_utils.h: care NULL dai at asoc_simple_debug_dai() Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 002/123] ASoC: simple-card: fix an use-after-free in simple_dai_link_of_dpcm() Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 003/123] ASoC: simple-card: fix an use-after-free in simple_for_each_link() Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 004/123] ASoC: audio-graph-card: fix use-after-free in graph_dai_link_of_dpcm() Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 005/123] ASoC: audio-graph-card: fix an use-after-free in graph_get_dai_id() Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 006/123] ASoC: audio-graph-card: add missing const at graph_get_dai_id() Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 007/123] iio: adc: max9611: Fix misuse of GENMASK macro Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 008/123] IIO: Ingenic JZ47xx: Set clock divider on probe Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 009/123] iio: cros_ec_accel_legacy: Fix incorrect channel setting Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 010/123] iio: imu: mpu6050: add missing available scan masks Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 011/123] regulator: axp20x: fix DCDCA and DCDCD for AXP806 Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 012/123] regulator: axp20x: fix DCDC5 and DCDC6 for AXP803 Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 013/123] ASoC: samsung: odroid: fix an use-after-free issue for codec Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 014/123] ASoC: samsung: odroid: fix a double-free issue for cpu_dai Sasha Levin 2019-08-14 2:08 ` [PATCH AUTOSEL 5.2 015/123] ASoC: Intel: bytcht_es8316: Add quirk for Irbis NB41 netbook Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 016/123] HID: logitech-hidpp: add USB PID for a few more supported mice Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 017/123] HID: Add 044f:b320 ThrustMaster, Inc. 2 in 1 DT Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 018/123] MIPS: kernel: only use i8253 clocksource with periodic clockevent Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 019/123] mips: fix cacheinfo Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 020/123] libbpf: sanitize VAR to conservative 1-byte INT Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 021/123] netfilter: ebtables: fix a memory leak bug in compat Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 022/123] ASoC: dapm: Fix handling of custom_stop_condition on DAPM graph walks Sasha Levin 2019-08-14 9:20 ` Mark Brown 2019-08-26 1:33 ` Sasha Levin 2019-08-27 10:54 ` Mark Brown 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 023/123] ASoC: SOF: use __u32 instead of uint32_t in uapi headers Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 024/123] spi: pxa2xx: Balance runtime PM enable/disable on error Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 025/123] bpf: sockmap, sock_map_delete needs to use xchg Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 026/123] bpf: sockmap, synchronize_rcu before free'ing map Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 027/123] bpf: sockmap, only create entry if ulp is not already enabled Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 028/123] selftests/bpf: fix sendmsg6_prog on s390 Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 029/123] ASoC: dapm: fix a memory leak bug Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 030/123] bonding: Force slave speed check after link state recovery for 802.3ad Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 031/123] net: mvpp2: Don't check for 3 consecutive Idle frames for 10G links Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 032/123] selftests: forwarding: gre_multipath: Enable IPv4 forwarding Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 033/123] selftests: forwarding: gre_multipath: Fix flower filters Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 034/123] bpf: fix access to skb_shared_info->gso_segs Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 035/123] selftests/bpf: add another gso_segs access Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 036/123] libbpf: fix using uninitialized ioctl results Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 037/123] can: dev: call netif_carrier_off() in register_candev() Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 038/123] can: mcp251x: add error check when wq alloc failed Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 039/123] can: gw: Fix error path of cgw_module_init Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 040/123] ASoC: Fail card instantiation if DAI format setup fails Sasha Levin 2019-08-14 9:22 ` Mark Brown 2019-08-26 1:35 ` Sasha Levin 2019-08-27 11:00 ` Mark Brown 2019-08-28 2:13 ` Sasha Levin 2019-08-28 7:07 ` Ricard Wanderlof 2019-08-28 13:04 ` Mark Brown 2019-09-06 8:40 ` revert: " Ricard Wanderlof 2019-09-06 10:58 ` Mark Brown 2019-09-06 18:38 ` Sasha Levin 2019-09-09 9:35 ` Mark Brown 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 041/123] Staging: fbtft: Fix GPIO handling Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 042/123] libbpf: silence GCC8 warning about string truncation Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 043/123] st21nfca_connectivity_event_received: null check the allocation Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 044/123] st_nci_hci_connectivity_event_received: " Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 045/123] {nl,mac}80211: fix interface combinations on crypto controlled devices Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 046/123] ASoC: ti: davinci-mcasp: Fix clk PDIR handling for i2s master mode Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 047/123] ASoC: rockchip: Fix mono capture Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 048/123] ASoC: ti: davinci-mcasp: Correct slot_width posed constraint Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 049/123] net: usb: qmi_wwan: Add the BroadMobi BM818 card Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 050/123] qed: RDMA - Fix the hw_ver returned in device attributes Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 051/123] isdn: mISDN: hfcsusb: Fix possible null-pointer dereferences in start_isoc_chain() Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 052/123] habanalabs: fix F/W download in BE architecture Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 053/123] mac80211_hwsim: Fix possible null-pointer dereferences in hwsim_dump_radio_nl() Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 054/123] net: stmmac: manage errors returned by of_get_mac_address() Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 055/123] netfilter: ipset: Actually allow destination MAC address for hash:ip,mac sets too Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 056/123] netfilter: ipset: Copy the right MAC address in bitmap:ip,mac and hash:ip,mac sets Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 057/123] netfilter: ipset: Fix rename concurrency with listing Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 058/123] netfilter: ebtables: also count base chain policies Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 059/123] rxrpc: Fix potential deadlock Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 060/123] rxrpc: Fix the lack of notification when sendmsg() fails on a DATA packet Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 061/123] nvmem: Use the same permissions for eeprom as for nvmem Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 062/123] iwlwifi: mvm: avoid races in rate init and rate perform Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 063/123] iwlwifi: dbg_ini: move iwl_dbg_tlv_load_bin out of debug override ifdef Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 064/123] iwlwifi: dbg_ini: move iwl_dbg_tlv_free outside of debugfs ifdef Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 065/123] iwlwifi: fix locking in delayed GTK setting Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 066/123] iwlwifi: mvm: send LQ command always ASYNC Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 067/123] driver core: Fix use-after-free and double free on glue directory Sasha Levin 2019-08-14 7:36 ` Greg Kroah-Hartman 2019-08-26 1:35 ` Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 068/123] enetc: Fix build error without PHYLIB Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 069/123] isdn: hfcsusb: Fix mISDN driver crash caused by transfer buffer on the stack Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 070/123] net: phy: phy_led_triggers: Fix a possible null-pointer dereference in phy_led_trigger_change_speed() Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 071/123] perf bench numa: Fix cpu0 binding Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 072/123] Input: kbtab - sanity check for endpoint type Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 073/123] net: usb: pegasus: fix improper read if get_registers() fail Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 074/123] spi: pxa2xx: Add support for Intel Tiger Lake Sasha Levin 2019-08-14 2:09 ` [PATCH AUTOSEL 5.2 075/123] can: sja1000: force the string buffer NULL-terminated Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 076/123] can: peak_usb: " Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 077/123] ASoC: amd: acp3x: use dma_ops of parent device for acp3x dma driver Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 078/123] net/ethernet/qlogic/qed: force the string buffer NULL-terminated Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 079/123] enetc: Select PHYLIB while CONFIG_FSL_ENETC_VF is set Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 080/123] NFSv4: Fix a credential refcount leak in nfs41_check_delegation_stateid Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 081/123] NFSv4: When recovering state fails with EAGAIN, retry the same recovery Sasha Levin 2019-08-14 2:10 ` Sasha Levin [this message] 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 083/123] NFSv4.1: Only reap expired delegations Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 084/123] NFSv4: Fix a potential sleep while atomic in nfs4_do_reclaim() Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 085/123] NFS: Fix regression whereby fscache errors are appearing on 'nofsc' mounts Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 086/123] HID: quirks: Set the INCREMENT_USAGE_ON_DUPLICATE quirk on Saitek X52 Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 087/123] HID: holtek: test for sanity of intfdata Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 088/123] HID: input: fix a4tech horizontal wheel custom usage Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 089/123] drm/rockchip: Suspend DP late Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 090/123] SMB3: Fix potential memory leak when processing compound chain Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 091/123] SMB3: Kernel oops mounting a encryptData share with CONFIG_DEBUG_VIRTUAL Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 092/123] HID: hiddev: avoid opening a disconnected device Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 093/123] HID: hiddev: do cleanup in failure of opening a device Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 094/123] sched/deadline: Fix double accounting of rq/running bw in push & pull Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 095/123] sched/psi: Reduce psimon FIFO priority Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 096/123] sched/psi: Do not require setsched permission from the trigger creator Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 097/123] s390/protvirt: avoid memory sharing for diag 308 set/store Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 098/123] s390/mm: fix dump_pagetables top level page table walking Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 099/123] s390: put _stext and _etext into .text section Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 100/123] ata: rb532_cf: Fix unused variable warning in rb532_pata_driver_probe Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 101/123] Input: iforce - add sanity checks Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 102/123] net: cxgb3_main: Fix a resource leak in a error path in 'init_one()' Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 103/123] net: stmmac: Fix issues when number of Queues >= 4 Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 104/123] net: stmmac: tc: Do not return a fragment entry Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 105/123] drm/amdgpu: pin the csb buffer on hw init for gfx v8 Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 106/123] net: hisilicon: make hip04_tx_reclaim non-reentrant Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 107/123] net: hisilicon: fix hip04-xmit never return TX_BUSY Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 108/123] net: hisilicon: Fix dma_map_single failed on arm64 Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 109/123] Revert "PCI: Add missing link delays required by the PCIe spec" Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 110/123] NFSv4: Ensure state recovery handles ETIMEDOUT correctly Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 111/123] libata: have ata_scsi_rw_xlat() fail invalid passthrough requests Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 112/123] libata: add SG safety checks in SFF pio transfers Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 113/123] x86/lib/cpu: Address missing prototypes warning Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 114/123] drm/vmwgfx: fix memory leak when too many retries have occurred Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 115/123] block: aoe: Fix kernel crash due to atomic sleep when exiting Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 116/123] block, bfq: handle NULL return value by bfq_init_rq() Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 117/123] perf ftrace: Fix failure to set cpumask when only one cpu is present Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 118/123] perf cpumap: Fix writing to illegal memory in handling cpumap mask Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 119/123] perf pmu-events: Fix missing "cpu_clk_unhalted.core" event Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 120/123] dt-bindings: riscv: fix the schema compatible string for the HiFive Unleashed board Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 121/123] KVM: arm64: Don't write junk to sysregs on reset Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 122/123] KVM: arm: Don't write junk to CP15 registers " Sasha Levin 2019-08-14 2:10 ` [PATCH AUTOSEL 5.2 123/123] selftests: kvm: Adding config fragments 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=20190814021047.14828-82-sashal@kernel.org \ --to=sashal@kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-nfs@vger.kernel.org \ --cc=stable@vger.kernel.org \ --cc=trond.myklebust@hammerspace.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
Stable Archive on lore.kernel.org Archives are clonable: git clone --mirror https://lore.kernel.org/stable/0 stable/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 stable stable/ https://lore.kernel.org/stable \ stable@vger.kernel.org public-inbox-index stable Example config snippet for mirrors Newsgroup available over NNTP: nntp://nntp.lore.kernel.org/org.kernel.vger.stable AGPL code for this site: git clone https://public-inbox.org/public-inbox.git