From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Zhihao Cheng <chengzhihao1@huawei.com>
Cc: <richard@nod.at>, <vigneshr@ti.com>, <bbrezillon@kernel.org>,
<linux-mtd@lists.infradead.org>, <linux-kernel@vger.kernel.org>,
<yukuai3@huawei.com>, <sfr@canb.auug.org.au>
Subject: Re: [PATCH v2] mtd: mtdconcat: Check existence of _read|_write from subdev'master device before assigning
Date: Tue, 17 Aug 2021 12:04:01 +0200 [thread overview]
Message-ID: <20210817120401.1ccf98bd@xps13> (raw)
In-Reply-To: <8b315831-84c5-38f3-d3b7-bb53f52c28b8@huawei.com>
Hi Zhihao,
Zhihao Cheng <chengzhihao1@huawei.com> wrote on Tue, 17 Aug 2021
10:45:55 +0800:
> 在 2021/8/17 10:45, Zhihao Cheng 写道:
> Hi Miquel,
> I found a better way to fix the "WARNING" on _read|_read_oob checking. Since sub-mtd device has been registered successfully, we can check against the existence of _read|_read_oob callbacks by subdev's master device.
> BTW, fix missing space between the SHA1 and the subject suggested by Stephen.
I am a bit lost, I need to see the big picture again. I will drop the
current patches that applied, please resend the full series with a
changelog.
> > Since 2431c4f5b46c3 ("mtd: Implement mtd_{read,write}() as wrappers
> > around mtd_{read,write}_oob()") don't allow _write|_read and
> > _write_oob|_read_oob existing at the same time. We should check the
, we
> > existence of callbacks "_read and _write" from subdev's master device
> > (We can trust master device since it has been registered) before
> > assigning, otherwise following warning occurs while making
> > concatenated device:
> >
> > WARNING: CPU: 2 PID: 6728 at drivers/mtd/mtdcore.c:595
> > add_mtd_device+0x7f/0x7b0
> >
> > Fixes: 2431c4f5b46c3 ("mtd: Implement mtd_{read,write}() around ...")
^
Wrong commit message
> > Signed-off-by: Zhihao Cheng <chengzhihao1@huawei.com>
> > ---
Also, please shorten a bit the two commit titles, like:
mtd: mtdconcat: Judge callback existence based on the master
Finally, in the other patch, there is a typo in the example
reproduce.c (combine misspelled).
> > drivers/mtd/mtdconcat.c | 6 ++++--
> > 1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/mtd/mtdconcat.c b/drivers/mtd/mtdconcat.c
> > index af51eee6b5e8..f685a581df48 100644
> > --- a/drivers/mtd/mtdconcat.c
> > +++ b/drivers/mtd/mtdconcat.c
> > @@ -694,6 +694,10 @@ struct mtd_info *mtd_concat_create(struct mtd_info *subdev[], /* subdevices to c
> > concat->mtd._block_markbad = concat_block_markbad;
> > if (subdev_master->_panic_write)
> > concat->mtd._panic_write = concat_panic_write;
> > + if (subdev_master->_read)
> > + concat->mtd._read = concat_read;
> > + if (subdev_master->_write)
> > + concat->mtd._write = concat_write;
> > > concat->mtd.ecc_stats.badblocks = subdev[0]->ecc_stats.badblocks;
> > > @@ -755,8 +759,6 @@ struct mtd_info *mtd_concat_create(struct mtd_info *subdev[], /* subdevices to c
> > concat->mtd.name = name;
> > > concat->mtd._erase = concat_erase;
> > - concat->mtd._read = concat_read;
> > - concat->mtd._write = concat_write;
> > concat->mtd._sync = concat_sync;
> > concat->mtd._lock = concat_lock;
> > concat->mtd._unlock = concat_unlock;
>
>
Thanks,
Miquèl
______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
WARNING: multiple messages have this Message-ID (diff)
From: Miquel Raynal <miquel.raynal@bootlin.com>
To: Zhihao Cheng <chengzhihao1@huawei.com>
Cc: <richard@nod.at>, <vigneshr@ti.com>, <bbrezillon@kernel.org>,
<linux-mtd@lists.infradead.org>, <linux-kernel@vger.kernel.org>,
<yukuai3@huawei.com>, <sfr@canb.auug.org.au>
Subject: Re: [PATCH v2] mtd: mtdconcat: Check existence of _read|_write from subdev'master device before assigning
Date: Tue, 17 Aug 2021 12:04:01 +0200 [thread overview]
Message-ID: <20210817120401.1ccf98bd@xps13> (raw)
In-Reply-To: <8b315831-84c5-38f3-d3b7-bb53f52c28b8@huawei.com>
Hi Zhihao,
Zhihao Cheng <chengzhihao1@huawei.com> wrote on Tue, 17 Aug 2021
10:45:55 +0800:
> 在 2021/8/17 10:45, Zhihao Cheng 写道:
> Hi Miquel,
> I found a better way to fix the "WARNING" on _read|_read_oob checking. Since sub-mtd device has been registered successfully, we can check against the existence of _read|_read_oob callbacks by subdev's master device.
> BTW, fix missing space between the SHA1 and the subject suggested by Stephen.
I am a bit lost, I need to see the big picture again. I will drop the
current patches that applied, please resend the full series with a
changelog.
> > Since 2431c4f5b46c3 ("mtd: Implement mtd_{read,write}() as wrappers
> > around mtd_{read,write}_oob()") don't allow _write|_read and
> > _write_oob|_read_oob existing at the same time. We should check the
, we
> > existence of callbacks "_read and _write" from subdev's master device
> > (We can trust master device since it has been registered) before
> > assigning, otherwise following warning occurs while making
> > concatenated device:
> >
> > WARNING: CPU: 2 PID: 6728 at drivers/mtd/mtdcore.c:595
> > add_mtd_device+0x7f/0x7b0
> >
> > Fixes: 2431c4f5b46c3 ("mtd: Implement mtd_{read,write}() around ...")
^
Wrong commit message
> > Signed-off-by: Zhihao Cheng <chengzhihao1@huawei.com>
> > ---
Also, please shorten a bit the two commit titles, like:
mtd: mtdconcat: Judge callback existence based on the master
Finally, in the other patch, there is a typo in the example
reproduce.c (combine misspelled).
> > drivers/mtd/mtdconcat.c | 6 ++++--
> > 1 file changed, 4 insertions(+), 2 deletions(-)
> >
> > diff --git a/drivers/mtd/mtdconcat.c b/drivers/mtd/mtdconcat.c
> > index af51eee6b5e8..f685a581df48 100644
> > --- a/drivers/mtd/mtdconcat.c
> > +++ b/drivers/mtd/mtdconcat.c
> > @@ -694,6 +694,10 @@ struct mtd_info *mtd_concat_create(struct mtd_info *subdev[], /* subdevices to c
> > concat->mtd._block_markbad = concat_block_markbad;
> > if (subdev_master->_panic_write)
> > concat->mtd._panic_write = concat_panic_write;
> > + if (subdev_master->_read)
> > + concat->mtd._read = concat_read;
> > + if (subdev_master->_write)
> > + concat->mtd._write = concat_write;
> > > concat->mtd.ecc_stats.badblocks = subdev[0]->ecc_stats.badblocks;
> > > @@ -755,8 +759,6 @@ struct mtd_info *mtd_concat_create(struct mtd_info *subdev[], /* subdevices to c
> > concat->mtd.name = name;
> > > concat->mtd._erase = concat_erase;
> > - concat->mtd._read = concat_read;
> > - concat->mtd._write = concat_write;
> > concat->mtd._sync = concat_sync;
> > concat->mtd._lock = concat_lock;
> > concat->mtd._unlock = concat_unlock;
>
>
Thanks,
Miquèl
next prev parent reply other threads:[~2021-08-17 10:04 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-17 2:45 [PATCH v2] mtd: mtdconcat: Check existence of _read|_write from subdev'master device before assigning Zhihao Cheng
2021-08-17 2:45 ` Zhihao Cheng
2021-08-17 2:45 ` Zhihao Cheng
2021-08-17 2:45 ` Zhihao Cheng
2021-08-17 10:04 ` Miquel Raynal [this message]
2021-08-17 10:04 ` Miquel Raynal
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=20210817120401.1ccf98bd@xps13 \
--to=miquel.raynal@bootlin.com \
--cc=bbrezillon@kernel.org \
--cc=chengzhihao1@huawei.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=richard@nod.at \
--cc=sfr@canb.auug.org.au \
--cc=vigneshr@ti.com \
--cc=yukuai3@huawei.com \
/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 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.