Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 8ef32955 authored by Petr Vandrovec's avatar Petr Vandrovec Committed by Anna Schumaker
Browse files

NFS: Ignore connections that have cl_rpcclient uninitialized



cl_rpcclient starts as ERR_PTR(-EINVAL), and connections like that
are floating freely through the system.  Most places check whether
pointer is valid before dereferencing it, but newly added code
in nfs_match_client does not.

Which causes crashes when more than one NFS mount point is present.

Signed-off-by: default avatarPetr Vandrovec <petr@vandrovec.name>
Signed-off-by: default avatarAnna Schumaker <Anna.Schumaker@Netapp.com>
parent bb29dd84
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -314,7 +314,8 @@ static struct nfs_client *nfs_match_client(const struct nfs_client_initdata *dat
		/* Match the full socket address */
		/* Match the full socket address */
		if (!rpc_cmp_addr_port(sap, clap))
		if (!rpc_cmp_addr_port(sap, clap))
			/* Match all xprt_switch full socket addresses */
			/* 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))
							   sap))
				continue;
				continue;