linux-mtd.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 1/4] mtd: block2mtd: char mtd major check
@ 2014-01-23 19:49 Fabian Frederick
  2014-01-24 22:10 ` Ezequiel Garcia
  0 siblings, 1 reply; 3+ messages in thread
From: Fabian Frederick @ 2014-01-23 19:49 UTC (permalink / raw)
  To: linux-mtd; +Cc: akpm, rdunlap, joern, linux-kernel, ezequiel.garcia

Deny use of a char mtd device to map as a block device.

Signed-off-by: Fabian Frederick <fabf@skynet.be>
---
 drivers/mtd/devices/block2mtd.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/mtd/devices/block2mtd.c b/drivers/mtd/devices/block2mtd.c
index d9fd87a..0efee5b 100644
--- a/drivers/mtd/devices/block2mtd.c
+++ b/drivers/mtd/devices/block2mtd.c
@@ -244,7 +244,8 @@ static struct block2mtd_dev *add_device(char *devname, int erase_size)
 	}
 	dev->blkdev = bdev;
 
-	if (MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) {
+	if ((MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) ||
+	    (MAJOR(bdev->bd_dev) == MTD_CHAR_MAJOR)) {
 		pr_err("attempting to use an MTD device as a block device\n");
 		goto devinit_err;
 	}
-- 
1.8.1.4

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

* Re: [PATCH 1/4] mtd: block2mtd: char mtd major check
  2014-01-23 19:49 [PATCH 1/4] mtd: block2mtd: char mtd major check Fabian Frederick
@ 2014-01-24 22:10 ` Ezequiel Garcia
  2014-01-25  2:53   ` Fabian Frederick
  0 siblings, 1 reply; 3+ messages in thread
From: Ezequiel Garcia @ 2014-01-24 22:10 UTC (permalink / raw)
  To: Fabian Frederick; +Cc: joern, akpm, rdunlap, linux-mtd, linux-kernel

On Thu, Jan 23, 2014 at 08:49:47PM +0100, Fabian Frederick wrote:
> Deny use of a char mtd device to map as a block device.
> 
> Signed-off-by: Fabian Frederick <fabf@skynet.be>
> ---
>  drivers/mtd/devices/block2mtd.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/mtd/devices/block2mtd.c b/drivers/mtd/devices/block2mtd.c
> index d9fd87a..0efee5b 100644
> --- a/drivers/mtd/devices/block2mtd.c
> +++ b/drivers/mtd/devices/block2mtd.c
> @@ -244,7 +244,8 @@ static struct block2mtd_dev *add_device(char *devname, int erase_size)
>  	}
>  	dev->blkdev = bdev;
>  
> -	if (MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) {
> +	if ((MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) ||
> +	    (MAJOR(bdev->bd_dev) == MTD_CHAR_MAJOR)) {
>  		pr_err("attempting to use an MTD device as a block device\n");
>  		goto devinit_err;
>  	}
> -- 
> 1.8.1.4

Now that the changes are separated on a per-patch basis they're much
much easier to review. Thanks!

Regarding this changes, it seems to me it's not needed. Are you sure
you can attach "block2mtd" to a char MTD device?

That would be odd, given this function calls blkdev_get_by_{path/dev};
which will check the device is of block type in the first place.

What's your motivation for this change?
-- 
Ezequiel García, Free Electrons
Embedded Linux, Kernel and Android Engineering
http://free-electrons.com

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

* Re: [PATCH 1/4] mtd: block2mtd: char mtd major check
  2014-01-24 22:10 ` Ezequiel Garcia
@ 2014-01-25  2:53   ` Fabian Frederick
  0 siblings, 0 replies; 3+ messages in thread
From: Fabian Frederick @ 2014-01-25  2:53 UTC (permalink / raw)
  To: Ezequiel Garcia; +Cc: joern, akpm, rdunlap, linux-mtd, linux-kernel

On Fri, 24 Jan 2014 19:10:11 -0300
Ezequiel Garcia <ezequiel.garcia@free-electrons.com> wrote:

> On Thu, Jan 23, 2014 at 08:49:47PM +0100, Fabian Frederick wrote:
> > Deny use of a char mtd device to map as a block device.
> > 
> > Signed-off-by: Fabian Frederick <fabf@skynet.be>
> > ---
> >  drivers/mtd/devices/block2mtd.c | 3 ++-
> >  1 file changed, 2 insertions(+), 1 deletion(-)
> > 
> > diff --git a/drivers/mtd/devices/block2mtd.c b/drivers/mtd/devices/block2mtd.c
> > index d9fd87a..0efee5b 100644
> > --- a/drivers/mtd/devices/block2mtd.c
> > +++ b/drivers/mtd/devices/block2mtd.c
> > @@ -244,7 +244,8 @@ static struct block2mtd_dev *add_device(char *devname, int erase_size)
> >  	}
> >  	dev->blkdev = bdev;
> >  
> > -	if (MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) {
> > +	if ((MAJOR(bdev->bd_dev) == MTD_BLOCK_MAJOR) ||
> > +	    (MAJOR(bdev->bd_dev) == MTD_CHAR_MAJOR)) {
> >  		pr_err("attempting to use an MTD device as a block device\n");
> >  		goto devinit_err;
> >  	}
> > -- 
> > 1.8.1.4
> 
> Now that the changes are separated on a per-patch basis they're much
> much easier to review. Thanks!
> 
> Regarding this changes, it seems to me it's not needed. Are you sure
> you can attach "block2mtd" to a char MTD device?
> 
> That would be odd, given this function calls blkdev_get_by_{path/dev};
> which will check the device is of block type in the first place.
> 
You're absoletly right.Thanks for your time checking these small patches.
As only patch 2 seems useful , I've sent version 2 with new error names.

Regards,
Fabian

> What's your motivation for this change?
> -- 
> Ezequiel García, Free Electrons
> Embedded Linux, Kernel and Android Engineering
> http://free-electrons.com

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

end of thread, other threads:[~2014-01-25 10:53 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-01-23 19:49 [PATCH 1/4] mtd: block2mtd: char mtd major check Fabian Frederick
2014-01-24 22:10 ` Ezequiel Garcia
2014-01-25  2:53   ` Fabian Frederick

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).