From: Jeff Layton <jlayton@redhat.com>
To: smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org
Cc: Fengguang Wu
<fengguang.wu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>,
kernel-janitors-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [cifs:for-next 50/71] fs/cifs/file.c:3157:23-27: ERROR: invalid reference to the index variable
Date: Wed, 19 Sep 2012 18:05:18 +0000 [thread overview]
Message-ID: <20120919110518.05b707e5@corrin.poochiereds.net> (raw)
In-Reply-To: <20120919062508.70ba65eb-4QP7MXygkU+dMjc06nkz3ljfA9RmPOcC@public.gmane.org>
On Wed, 19 Sep 2012 06:25:08 -0700
Jeff Layton <jlayton@redhat.com> wrote:
> On Wed, 19 Sep 2012 13:08:02 +0800
> Fengguang Wu <fengguang.wu@intel.com> wrote:
>
> > Hi Jeff,
> >
> > FYI, there are new coccinelle warnings show up in
> >
> > tree: git://git.samba.org/sfrench/cifs-2.6.git for-next
> > head: 324b53bbcd1d9795062f00e92064296169c9b081
> > commit: a4a23914d0d1736eb6d98049d303d551131df83c [50/71] cifs: turn the pages list in cifs_readdata into an array
> >
> > All coccinelle warnings:
> >
> > + fs/cifs/file.c:3157:23-27: ERROR: invalid reference to the index variable of the iterator on line 3149
> >
> > vim +3157 fs/cifs/file.c
> > 3147 rdata->marshal_iov = cifs_readpages_marshal_iov;
> > 3148
> > > 3149 list_for_each_entry_safe(page, tpage, &tmplist, lru) {
> > 3150 list_del(&page->lru);
> > 3151 rdata->pages[rdata->nr_pages++] = page;
> > 3152 }
> > 3153
> > 3154 rc = cifs_retry_async_readv(rdata);
> > 3155 if (rc != 0) {
> > 3156 for (i = 0; i < rdata->nr_pages; i++) {
> > > 3157 lru_cache_add_file(page);
> > 3158 unlock_page(page);
> > 3159 page_cache_release(page);
> > 3160 }
> > 3161 kref_put(&rdata->refcount, cifs_readdata_release);
> > 3162 break;
> > 3163 }
> > 3164
> > 3165 kref_put(&rdata->refcount, cifs_readdata_release);
> > 3166 }
> > 3167
> >
> > ---
> > 0-DAY kernel build testing backend Open Source Technology Centre
> > Fengguang Wu, Yuanhan Liu Intel Corporation
>
>
> Thanks Wu, good catch. I've got a fix that I'll push to Steve today.
>
FWIW, here's the (trivial) patch to fix this. Steve, I've respun the
patch that introduced this bug and pushed it out to my cifs-next
branch. This should be the only difference.
You If you'd rather do a patch on top of your tree instead, let me
know...
---------------------------[snip]-----------------------------
diff --git a/fs/cifs/file.c b/fs/cifs/file.c
index 1d43303..075f7cf 100644
--- a/fs/cifs/file.c
+++ b/fs/cifs/file.c
@@ -3280,6 +3280,7 @@ static int cifs_readpages(struct file *file, struct address_space *mapping,
rc = cifs_retry_async_readv(rdata);
if (rc != 0) {
for (i = 0; i < rdata->nr_pages; i++) {
+ page = rdata->pages[i];
lru_cache_add_file(page);
unlock_page(page);
page_cache_release(page);
next prev parent reply other threads:[~2012-09-19 18:05 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-09-19 5:08 [cifs:for-next 50/71] fs/cifs/file.c:3157:23-27: ERROR: invalid reference to the index variable of t Fengguang Wu
2012-09-19 13:25 ` [cifs:for-next 50/71] fs/cifs/file.c:3157:23-27: ERROR: invalid reference to the index variable Jeff Layton
[not found] ` <20120919062508.70ba65eb-4QP7MXygkU+dMjc06nkz3ljfA9RmPOcC@public.gmane.org>
2012-09-19 18:05 ` Jeff Layton [this message]
[not found] ` <20120919110518.05b707e5-4QP7MXygkU+dMjc06nkz3ljfA9RmPOcC@public.gmane.org>
2012-09-19 19:42 ` Steve French
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20120919110518.05b707e5@corrin.poochiereds.net \
--to=jlayton@redhat.com \
--cc=fengguang.wu-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org \
--cc=kernel-janitors-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-cifs-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=smfrench-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox