[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <1484606094.27533.35.camel@dubeyko.com>
Date: Mon, 16 Jan 2017 14:34:54 -0800
From: Viacheslav Dubeyko <slava@...eyko.com>
To: Dan Carpenter <dan.carpenter@...cle.com>
Cc: Chengyu Song <csong84@...ech.edu>,
Andrew Morton <akpm@...ux-foundation.org>,
David Howells <dhowells@...hat.com>,
Al Viro <viro@...iv.linux.org.uk>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org,
kernel-janitors@...r.kernel.org
Subject: Re: [patch] hfs: fix hfs_readdir()
On Mon, 2017-01-16 at 17:22 +0300, Dan Carpenter wrote:
> I was reviewing old warnings and I stumbled across this one again.
> Although I wrote that &fd.key->cat and "fd.key" are equivalent, I
> feel
> that actually we should be doing the former. fd.key is a union but
> we
> want the ->cat member of the union.
>
> On Tue, Jan 26, 2016 at 01:54:06PM -0800, Viacheslav Dubeyko wrote:
> >
> > On Tue, 2016-01-26 at 22:18 +0300, Dan Carpenter wrote:
> > >
> > > Hm, I completely didn't see that it was a union instead of a
> > > struct. I
> > > still think my fix is actually correct though. Now that you
> > > point out
> > > the union, I see that my change is equivalent to just removing
> > > the '&'
> > > char.
> > >
> > > - memcpy(&rd->key, &fd.key, sizeof(struct hfs_cat_key));
> > > + memcpy(&rd->key, fd.key, sizeof(struct hfs_cat_key));
> > >
> > Yeahh, it looks correct right now. The rd is the pointer that
> > includes
> > struct hfs_cat_key object. So, we need to use &rd->key. But on
> > another
> > side we have struct hfs_find_data object on the stack. And this
> > object
> > includes the pointer on union btree_key. We want to copy struct
> > hfs_cat_key object and we should use sizeof(struct hfs_cat_key).
> I've read this paragraph several times now and I think you are saying
> that the patch is correct.
>
Yes, I've said that patch looks good. I think it's better to resend the
patch again.
Thanks,
Vyacheslav Dubeyko.
Powered by blists - more mailing lists