* re: nilfs2: fix issue with flush kernel thread after remount in RO mode because of driver's internal error or metadata corruption
@ 2013-04-25 7:49 Dan Carpenter
[not found] ` <20130425074947.GB11880-mgFCXtclrQlZLf2FXnZxJA@public.gmane.org>
0 siblings, 1 reply; 5+ messages in thread
From: Dan Carpenter @ 2013-04-25 7:49 UTC (permalink / raw)
To: slava-yeENwD64cLxBDgjK7y7TUQ
Cc: linux-nilfs-u79uwXL29TY76Z2rM5mHXA, kbuild-JC7UmRfGjtg
[ It's weird that kbuild didn't catch this ].
Hello Vyacheslav Dubeyko,
The patch bb594c4767b0: "nilfs2: fix issue with flush kernel thread
after remount in RO mode because of driver's internal error or
metadata corruption" from Apr 18, 2013, leads to the following
warning:
"fs/nilfs2/inode.c:211 nilfs_writepage()
error: we previously assumed 'inode' could be null (see line 195)"
fs/nilfs2/inode.c
190 static int nilfs_writepage(struct page *page, struct writeback_control *wbc)
191 {
192 struct inode *inode = page->mapping->host;
193 int err;
194
195 if (inode && (inode->i_sb->s_flags & MS_RDONLY)) {
^^^^^
New check.
196 /*
197 * It means that filesystem was remounted in read-only
198 * mode because of error or metadata corruption. But we
199 * have dirty pages that try to be flushed in background.
200 * So, here we simply discard this dirty page.
201 */
202 nilfs_clear_dirty_page(page, false);
203 unlock_page(page);
204 return -EROFS;
205 }
206
207 redirty_page_for_writepage(wbc, page);
208 unlock_page(page);
209
210 if (wbc->sync_mode == WB_SYNC_ALL) {
211 err = nilfs_construct_segment(inode->i_sb);
^^^^^^^^^^^
Old dereference.
212 if (unlikely(err))
213 return err;
214 } else if (wbc->for_reclaim)
215 nilfs_flush_segment(inode->i_sb, inode->i_ino);
^^^^^^^^^^^
Old dereference.
216
217 return 0;
218 }
regards,
dan carpenter
--
To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
^ permalink raw reply [flat|nested] 5+ messages in thread[parent not found: <20130425074947.GB11880-mgFCXtclrQlZLf2FXnZxJA@public.gmane.org>]
* [PATCH] nilfs2: fix warning in nilfs_writepage() [not found] ` <20130425074947.GB11880-mgFCXtclrQlZLf2FXnZxJA@public.gmane.org> @ 2013-04-25 9:38 ` Vyacheslav Dubeyko 2013-04-25 20:46 ` Andrew Morton 2013-04-25 14:00 ` [kbuild] nilfs2: fix issue with flush kernel thread after remount in RO mode because of driver's internal error or metadata corruption Fengguang Wu 1 sibling, 1 reply; 5+ messages in thread From: Vyacheslav Dubeyko @ 2013-04-25 9:38 UTC (permalink / raw) To: Dan Carpenter Cc: linux-nilfs-u79uwXL29TY76Z2rM5mHXA, kbuild-JC7UmRfGjtg, Ryusuke Konishi, Andrew Morton On Thu, 2013-04-25 at 10:49 +0300, Dan Carpenter wrote: > [ It's weird that kbuild didn't catch this ]. > > Hello Vyacheslav Dubeyko, > > The patch bb594c4767b0: "nilfs2: fix issue with flush kernel thread > after remount in RO mode because of driver's internal error or > metadata corruption" from Apr 18, 2013, leads to the following > warning: > "fs/nilfs2/inode.c:211 nilfs_writepage() > error: we previously assumed 'inode' could be null (see line 195)" > Please, find below the patch with fix. Thanks, Vyacheslav Dubeyko. -- From: Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org> Subject: [PATCH] nilfs2: fix warning in nilfs_writepage() The patch fixes warning: "fs/nilfs2/inode.c:211 nilfs_writepage() error: we previously assumed 'inode' could be null (see line 195)". Reported-by: Dan Carpenter <dan.carpenter-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org> Signed-off-by: Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org> CC: Ryusuke Konishi <konishi.ryusuke-Zyj7fXuS5i5L9jVzuh4AOg@public.gmane.org> --- fs/nilfs2/inode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/fs/nilfs2/inode.c b/fs/nilfs2/inode.c index ba7a1da..cf02f55 100644 --- a/fs/nilfs2/inode.c +++ b/fs/nilfs2/inode.c @@ -192,7 +192,7 @@ static int nilfs_writepage(struct page *page, struct writeback_control *wbc) struct inode *inode = page->mapping->host; int err; - if (inode && (inode->i_sb->s_flags & MS_RDONLY)) { + if (inode->i_sb->s_flags & MS_RDONLY) { /* * It means that filesystem was remounted in read-only * mode because of error or metadata corruption. But we -- 1.7.9.5 -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH] nilfs2: fix warning in nilfs_writepage() 2013-04-25 9:38 ` [PATCH] nilfs2: fix warning in nilfs_writepage() Vyacheslav Dubeyko @ 2013-04-25 20:46 ` Andrew Morton [not found] ` <20130425134610.d26f087c0db29d0703736db3-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org> 0 siblings, 1 reply; 5+ messages in thread From: Andrew Morton @ 2013-04-25 20:46 UTC (permalink / raw) To: slava-yeENwD64cLxBDgjK7y7TUQ Cc: Dan Carpenter, linux-nilfs-u79uwXL29TY76Z2rM5mHXA, kbuild-JC7UmRfGjtg, Ryusuke Konishi On Thu, 25 Apr 2013 13:38:35 +0400 Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org> wrote: > On Thu, 2013-04-25 at 10:49 +0300, Dan Carpenter wrote: > > [ It's weird that kbuild didn't catch this ]. > > > > Hello Vyacheslav Dubeyko, > > > > The patch bb594c4767b0: "nilfs2: fix issue with flush kernel thread > > after remount in RO mode because of driver's internal error or > > metadata corruption" from Apr 18, 2013, leads to the following > > warning: > > "fs/nilfs2/inode.c:211 nilfs_writepage() > > error: we previously assumed 'inode' could be null (see line 195)" > > > > Please, find below the patch with fix. > > Thanks, > Vyacheslav Dubeyko. > -- > From: Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org> > Subject: [PATCH] nilfs2: fix warning in nilfs_writepage() > > The patch fixes warning: "fs/nilfs2/inode.c:211 nilfs_writepage() error: we previously assumed 'inode' could be null (see line 195)". The changelog doesn't tell us what tool emitted the warning. Was it sparse? > --- a/fs/nilfs2/inode.c > +++ b/fs/nilfs2/inode.c > @@ -192,7 +192,7 @@ static int nilfs_writepage(struct page *page, struct writeback_control *wbc) > struct inode *inode = page->mapping->host; > int err; > > - if (inode && (inode->i_sb->s_flags & MS_RDONLY)) { > + if (inode->i_sb->s_flags & MS_RDONLY) { > /* > * It means that filesystem was remounted in read-only > * mode because of error or metadata corruption. But we I'll going to fix up the patch description and subject. In particular, the objective of this patch isn't really to fix a warning - it's to remove some unneeded code. The warning merely alerted us to its presence. From: Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org> Subject: nilfs2: remove unneeded test in nilfs_writepage() page->mapping->host cannot be NULL in nilfs_writepage(), so remove the unneeded test. The fixes the sparse warning: "fs/nilfs2/inode.c:211 nilfs_writepage() error: we previously assumed 'inode' could be null (see line 195)". Reported-by: Dan Carpenter <dan.carpenter-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org> Signed-off-by: Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org> Cc: Ryusuke Konishi <konishi.ryusuke-Zyj7fXuS5i5L9jVzuh4AOg@public.gmane.org> Signed-off-by: Andrew Morton <akpm-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org> --- fs/nilfs2/inode.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff -puN fs/nilfs2/inode.c~nilfs2-fix-warning-in-nilfs_writepage fs/nilfs2/inode.c --- a/fs/nilfs2/inode.c~nilfs2-fix-warning-in-nilfs_writepage +++ a/fs/nilfs2/inode.c @@ -192,7 +192,7 @@ static int nilfs_writepage(struct page * struct inode *inode = page->mapping->host; int err; - if (inode && (inode->i_sb->s_flags & MS_RDONLY)) { + if (inode->i_sb->s_flags & MS_RDONLY) { /* * It means that filesystem was remounted in read-only * mode because of error or metadata corruption. But we _ -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 5+ messages in thread
[parent not found: <20130425134610.d26f087c0db29d0703736db3-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>]
* Re: [PATCH] nilfs2: fix warning in nilfs_writepage() [not found] ` <20130425134610.d26f087c0db29d0703736db3-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org> @ 2013-04-25 20:55 ` Dan Carpenter 0 siblings, 0 replies; 5+ messages in thread From: Dan Carpenter @ 2013-04-25 20:55 UTC (permalink / raw) To: Andrew Morton Cc: slava-yeENwD64cLxBDgjK7y7TUQ, linux-nilfs-u79uwXL29TY76Z2rM5mHXA, kbuild-JC7UmRfGjtg, Ryusuke Konishi On Thu, Apr 25, 2013 at 01:46:10PM -0700, Andrew Morton wrote: > On Thu, 25 Apr 2013 13:38:35 +0400 Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org> wrote: > > > On Thu, 2013-04-25 at 10:49 +0300, Dan Carpenter wrote: > > > [ It's weird that kbuild didn't catch this ]. > > > > > > Hello Vyacheslav Dubeyko, > > > > > > The patch bb594c4767b0: "nilfs2: fix issue with flush kernel thread > > > after remount in RO mode because of driver's internal error or > > > metadata corruption" from Apr 18, 2013, leads to the following > > > warning: > > > "fs/nilfs2/inode.c:211 nilfs_writepage() > > > error: we previously assumed 'inode' could be null (see line 195)" > > > > > > > Please, find below the patch with fix. > > > > Thanks, > > Vyacheslav Dubeyko. > > -- > > From: Vyacheslav Dubeyko <slava-yeENwD64cLxBDgjK7y7TUQ@public.gmane.org> > > Subject: [PATCH] nilfs2: fix warning in nilfs_writepage() > > > > The patch fixes warning: "fs/nilfs2/inode.c:211 nilfs_writepage() error: we previously assumed 'inode' could be null (see line 195)". > > The changelog doesn't tell us what tool emitted the warning. Was it sparse? > That's my fault. It's a Smatch warning. regards, dan carpenter -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [kbuild] nilfs2: fix issue with flush kernel thread after remount in RO mode because of driver's internal error or metadata corruption [not found] ` <20130425074947.GB11880-mgFCXtclrQlZLf2FXnZxJA@public.gmane.org> 2013-04-25 9:38 ` [PATCH] nilfs2: fix warning in nilfs_writepage() Vyacheslav Dubeyko @ 2013-04-25 14:00 ` Fengguang Wu 1 sibling, 0 replies; 5+ messages in thread From: Fengguang Wu @ 2013-04-25 14:00 UTC (permalink / raw) To: Dan Carpenter Cc: slava-yeENwD64cLxBDgjK7y7TUQ, kbuild-JC7UmRfGjtg, linux-nilfs-u79uwXL29TY76Z2rM5mHXA On Thu, Apr 25, 2013 at 10:49:47AM +0300, Dan Carpenter wrote: > [ It's weird that kbuild didn't catch this ]. Sorry about that! I made a big change in the test scripts and took several days to fixup the new bugs. Quite some branches missed the tests during the time.. Thanks, Fengguang -- To unsubscribe from this list: send the line "unsubscribe linux-nilfs" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2013-04-25 20:55 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-04-25 7:49 nilfs2: fix issue with flush kernel thread after remount in RO mode because of driver's internal error or metadata corruption Dan Carpenter
[not found] ` <20130425074947.GB11880-mgFCXtclrQlZLf2FXnZxJA@public.gmane.org>
2013-04-25 9:38 ` [PATCH] nilfs2: fix warning in nilfs_writepage() Vyacheslav Dubeyko
2013-04-25 20:46 ` Andrew Morton
[not found] ` <20130425134610.d26f087c0db29d0703736db3-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2013-04-25 20:55 ` Dan Carpenter
2013-04-25 14:00 ` [kbuild] nilfs2: fix issue with flush kernel thread after remount in RO mode because of driver's internal error or metadata corruption Fengguang Wu
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.