public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [2.6 patch] fs/attr.c: fix check after use
@ 2005-03-24  1:10 Adrian Bunk
  2005-03-24  3:18 ` Chris Wright
  0 siblings, 1 reply; 3+ messages in thread
From: Adrian Bunk @ 2005-03-24  1:10 UTC (permalink / raw)
  To: linux-kernel

This patch fixes a check after use found by the Coverity checker.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

--- linux-2.6.12-rc1-mm1-full/fs/attr.c.old	2005-03-23 04:44:40.000000000 +0100
+++ linux-2.6.12-rc1-mm1-full/fs/attr.c	2005-03-23 04:45:40.000000000 +0100
@@ -112,7 +112,7 @@
 int notify_change(struct dentry * dentry, struct iattr * attr)
 {
 	struct inode *inode = dentry->d_inode;
-	mode_t mode = inode->i_mode;
+	mode_t mode;
 	int error;
 	struct timespec now = current_fs_time(inode->i_sb);
 	unsigned int ia_valid = attr->ia_valid;
@@ -120,6 +120,8 @@
 	if (!inode)
 		BUG();
 
+	mode = inode->i_mode;
+
 	attr->ia_ctime = now;
 	if (!(ia_valid & ATTR_ATIME_SET))
 		attr->ia_atime = now;


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [2.6 patch] fs/attr.c: fix check after use
  2005-03-24  1:10 [2.6 patch] fs/attr.c: fix check after use Adrian Bunk
@ 2005-03-24  3:18 ` Chris Wright
  2005-03-25  0:15   ` Adrian Bunk
  0 siblings, 1 reply; 3+ messages in thread
From: Chris Wright @ 2005-03-24  3:18 UTC (permalink / raw)
  To: Adrian Bunk; +Cc: linux-kernel

* Adrian Bunk (bunk@stusta.de) wrote:
> --- linux-2.6.12-rc1-mm1-full/fs/attr.c.old	2005-03-23 04:44:40.000000000 +0100
> +++ linux-2.6.12-rc1-mm1-full/fs/attr.c	2005-03-23 04:45:40.000000000 +0100
> @@ -112,7 +112,7 @@
>  int notify_change(struct dentry * dentry, struct iattr * attr)
>  {
>  	struct inode *inode = dentry->d_inode;
> -	mode_t mode = inode->i_mode;
> +	mode_t mode;
>  	int error;
>  	struct timespec now = current_fs_time(inode->i_sb);

looks like same issue here too?

>  	unsigned int ia_valid = attr->ia_valid;
> @@ -120,6 +120,8 @@
>  	if (!inode)
>  		BUG();
>  
> +	mode = inode->i_mode;
> +

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [2.6 patch] fs/attr.c: fix check after use
  2005-03-24  3:18 ` Chris Wright
@ 2005-03-25  0:15   ` Adrian Bunk
  0 siblings, 0 replies; 3+ messages in thread
From: Adrian Bunk @ 2005-03-25  0:15 UTC (permalink / raw)
  To: Chris Wright; +Cc: linux-kernel

On Wed, Mar 23, 2005 at 07:18:45PM -0800, Chris Wright wrote:
> * Adrian Bunk (bunk@stusta.de) wrote:
> > --- linux-2.6.12-rc1-mm1-full/fs/attr.c.old	2005-03-23 04:44:40.000000000 +0100
> > +++ linux-2.6.12-rc1-mm1-full/fs/attr.c	2005-03-23 04:45:40.000000000 +0100
> > @@ -112,7 +112,7 @@
> >  int notify_change(struct dentry * dentry, struct iattr * attr)
> >  {
> >  	struct inode *inode = dentry->d_inode;
> > -	mode_t mode = inode->i_mode;
> > +	mode_t mode;
> >  	int error;
> >  	struct timespec now = current_fs_time(inode->i_sb);
> 
> looks like same issue here too?
>...

You forgot to a attach a brown paperbag.  ;-)

Corrected patch below.

cu
Adrian


<--  snip  -->


This patch fixes a check after use found by the Coverity checker.

Signed-off-by: Adrian Bunk <bunk@stusta.de>

--- linux-2.6.12-rc1-mm2-full/fs/attr.c.old	2005-03-25 01:02:32.000000000 +0100
+++ linux-2.6.12-rc1-mm2-full/fs/attr.c	2005-03-25 01:05:18.000000000 +0100
@@ -112,14 +112,17 @@
 int notify_change(struct dentry * dentry, struct iattr * attr)
 {
 	struct inode *inode = dentry->d_inode;
-	mode_t mode = inode->i_mode;
+	mode_t mode;
 	int error;
-	struct timespec now = current_fs_time(inode->i_sb);
+	struct timespec now;
 	unsigned int ia_valid = attr->ia_valid;
 
 	if (!inode)
 		BUG();
 
+	mode = inode->i_mode;
+	now = current_fs_time(inode->i_sb);
+
 	attr->ia_ctime = now;
 	if (!(ia_valid & ATTR_ATIME_SET))
 		attr->ia_atime = now;


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2005-03-25  1:58 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2005-03-24  1:10 [2.6 patch] fs/attr.c: fix check after use Adrian Bunk
2005-03-24  3:18 ` Chris Wright
2005-03-25  0:15   ` Adrian Bunk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox