mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-30 11:41:38 -04:00
NFS client bugfixes for Linux 4.9
Bugfixes: - Trim extra slashes in v4 nfs_paths to fix tools that use this - Fix a -Wmaybe-uninitialized warnings - Fix suspicious RCU usages - Fix Oops when mounting multiple servers at once - Suppress a false-positive pNFS error - Fix a DMAR failure in NFS over RDMA -----BEGIN PGP SIGNATURE----- iQIcBAABCAAGBQJYJOCbAAoJENfLVL+wpUDrbO0QAIkcxdUu2iQeOrk07VP48kDE UEfJTal8vbW/KtKyL9bIeRa1qCvYpSJXnnKcR/Uo5VHE5nMz/5omoJofWf5Zg0UM iEHyZfOsuGFieBbl1NBaLjEd6MCoJYpmWFUj+3drZ8zqSdqDTL+JgrP7k3XEU2Mx glKb7U0AKoclm3h1MKyCyo5TgDVeI5TOhi+i3VVw2IN79VY2CUp4lHWMY4vloghp h+GuJWeVFS1nBpfCF9PpTU6LdHDfg4o/J5+DrP+IjIffD1XGzGEjfFR0BX5HyDcN PgOSF3fc7uVOOUIBEAqHUHY/7XiKlv6TEMRPdM8ALVoCXZ6hPSSFxq8JBJSWoVEp r11ts66VgYxdQgHbs51Y5AaKudLBwU60KosWuddbdZVb4YPM0cn5WQzVezrpoQYu k4rfrpt+LFv23NGfIJa6JaTSFBzM+YXmggEGUI8TI/YUFSN+wEp4uzLB4r19nqAP ff32iunzV9Z5edpPQFDCf3/1HAhzrL5KWo7E8EvijpdQKZl5k5CnUJxbG22lh4ct QIyYg51LjhCayzbRH8Mu+TKUFT29ORlcSp851BotLjT8ZdUetWXcFab93nAkQI7g sMREml4DvcXWy8qFAOzi8mX1ddTBumxBfOD0m3skPg+odxwsl/KiwjLCRwfTrgwS jfSXsXmrwTniPCDWgKg3 =hFod -----END PGP SIGNATURE----- Merge tag 'nfs-for-4.9-3' of git://git.linux-nfs.org/projects/anna/linux-nfs Pull NFS client bugfixes from Anna Schumaker: "Most of these fix regressions in 4.9, and none are going to stable this time around. Bugfixes: - Trim extra slashes in v4 nfs_paths to fix tools that use this - Fix a -Wmaybe-uninitialized warnings - Fix suspicious RCU usages - Fix Oops when mounting multiple servers at once - Suppress a false-positive pNFS error - Fix a DMAR failure in NFS over RDMA" * tag 'nfs-for-4.9-3' of git://git.linux-nfs.org/projects/anna/linux-nfs: xprtrdma: Fix DMAR failure in frwr_op_map() after reconnect fs/nfs: Fix used uninitialized warn in nfs4_slot_seqid_in_use() NFS: Don't print a pNFS error if we aren't using pNFS NFS: Ignore connections that have cl_rpcclient uninitialized SUNRPC: Fix suspicious RCU usage NFSv4.1: work around -Wmaybe-uninitialized warning NFS: Trim extra slash in v4 nfs_path
This commit is contained in:
commit
ef5beed998
7 changed files with 41 additions and 25 deletions
|
|
@ -314,7 +314,8 @@ static struct nfs_client *nfs_match_client(const struct nfs_client_initdata *dat
|
|||
/* Match the full socket address */
|
||||
if (!rpc_cmp_addr_port(sap, clap))
|
||||
/* Match all xprt_switch full socket addresses */
|
||||
if (!rpc_clnt_xprt_switch_has_addr(clp->cl_rpcclient,
|
||||
if (IS_ERR(clp->cl_rpcclient) ||
|
||||
!rpc_clnt_xprt_switch_has_addr(clp->cl_rpcclient,
|
||||
sap))
|
||||
continue;
|
||||
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ rename_retry:
|
|||
return end;
|
||||
}
|
||||
namelen = strlen(base);
|
||||
if (flags & NFS_PATH_CANONICAL) {
|
||||
if (*end == '/') {
|
||||
/* Strip off excess slashes in base string */
|
||||
while (namelen > 0 && base[namelen - 1] == '/')
|
||||
namelen--;
|
||||
|
|
|
|||
|
|
@ -178,12 +178,14 @@ static int nfs4_slot_get_seqid(struct nfs4_slot_table *tbl, u32 slotid,
|
|||
__must_hold(&tbl->slot_tbl_lock)
|
||||
{
|
||||
struct nfs4_slot *slot;
|
||||
int ret;
|
||||
|
||||
slot = nfs4_lookup_slot(tbl, slotid);
|
||||
if (IS_ERR(slot))
|
||||
return PTR_ERR(slot);
|
||||
*seq_nr = slot->seq_nr;
|
||||
return 0;
|
||||
ret = PTR_ERR_OR_ZERO(slot);
|
||||
if (!ret)
|
||||
*seq_nr = slot->seq_nr;
|
||||
|
||||
return ret;
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
@ -196,7 +198,7 @@ static int nfs4_slot_get_seqid(struct nfs4_slot_table *tbl, u32 slotid,
|
|||
static bool nfs4_slot_seqid_in_use(struct nfs4_slot_table *tbl,
|
||||
u32 slotid, u32 seq_nr)
|
||||
{
|
||||
u32 cur_seq;
|
||||
u32 cur_seq = 0;
|
||||
bool ret = false;
|
||||
|
||||
spin_lock(&tbl->slot_tbl_lock);
|
||||
|
|
|
|||
|
|
@ -146,6 +146,8 @@ set_pnfs_layoutdriver(struct nfs_server *server, const struct nfs_fh *mntfh,
|
|||
u32 id;
|
||||
int i;
|
||||
|
||||
if (fsinfo->nlayouttypes == 0)
|
||||
goto out_no_driver;
|
||||
if (!(server->nfs_client->cl_exchange_flags &
|
||||
(EXCHGID4_FLAG_USE_NON_PNFS | EXCHGID4_FLAG_USE_PNFS_MDS))) {
|
||||
printk(KERN_ERR "NFS: %s: cl_exchange_flags 0x%x\n",
|
||||
|
|
|
|||
Loading…
Reference in a new issue