@@ -133,6 +133,7 @@ struct nfs_parsed_mount_data {
/* mount_clnt.c */
struct nfs_mount_request {
struct sockaddr *sap;
+ struct sockaddr *srcaddr;
size_t salen;
char *hostname;
char *dirpath;
@@ -155,6 +155,7 @@ int nfs_mount(struct nfs_mount_request *info)
struct rpc_create_args args = {
.net = &init_net,
.protocol = info->protocol,
+ .saddress = info->srcaddr,
.address = info->sap,
.addrsize = info->salen,
.servername = info->hostname,
@@ -1600,6 +1600,8 @@ static int nfs_try_mount(struct nfs_parsed_mount_data *args,
struct nfs_mount_request request = {
.sap = (struct sockaddr *)
&args->mount_server.address,
+ .salen = args->mount_server.addrlen,
+ .srcaddr = (struct sockaddr *)&args->srcaddr.address,
.dirpath = args->nfs_server.export_path,
.protocol = args->mount_server.protocol,
.fh = root_fh,