[ 3.5.y.z extended stable ] Patch "nfs: fix null checking in nfs_get_option_str()" has been added to staging queue

Herton Ronaldo Krzesinski herton.krzesinski at canonical.com
Tue Jan 15 22:21:28 UTC 2013


This is a note to let you know that I have just added a patch titled

    nfs: fix null checking in nfs_get_option_str()

to the linux-3.5.y-queue branch of the 3.5.y.z extended stable tree 
which can be found at:

 http://kernel.ubuntu.com/git?p=ubuntu/linux.git;a=shortlog;h=refs/heads/linux-3.5.y-queue

If you, or anyone else, feels it should not be added to this tree, please 
reply to this email.

For more information about the 3.5.y.z tree, see
https://wiki.ubuntu.com/Kernel/Dev/ExtendedStable

Thanks.
-Herton

------

>From b78a1d109d8092041e1a82c55527862640c0df24 Mon Sep 17 00:00:00 2001
From: Xi Wang <xi.wang at gmail.com>
Date: Fri, 4 Jan 2013 03:22:57 -0500
Subject: [PATCH] nfs: fix null checking in nfs_get_option_str()

commit e25fbe380c4e3c09afa98bcdcd9d3921443adab8 upstream.

The following null pointer check is broken.

	*option = match_strdup(args);
	return !option;

The pointer `option' must be non-null, and thus `!option' is always false.
Use `!*option' instead.

The bug was introduced in commit c5cb09b6f8 ("Cleanup: Factor out some
cut-and-paste code.").

Signed-off-by: Xi Wang <xi.wang at gmail.com>
Signed-off-by: Trond Myklebust <Trond.Myklebust at netapp.com>
Signed-off-by: Herton Ronaldo Krzesinski <herton.krzesinski at canonical.com>
---
 fs/nfs/super.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/nfs/super.c b/fs/nfs/super.c
index d09f196..2292f7e 100644
--- a/fs/nfs/super.c
+++ b/fs/nfs/super.c
@@ -1148,7 +1148,7 @@ static int nfs_get_option_str(substring_t args[], char **option)
 {
 	kfree(*option);
 	*option = match_strdup(args);
-	return !option;
+	return !*option;
 }

 static int nfs_get_option_ul(substring_t args[], unsigned long *option)
--
1.7.9.5





More information about the kernel-team mailing list