Message ID | 4A759CF3.2010908@vtxmail.ch |
---|---|
State | New, archived |
Headers | show |
On Sun, Aug 2, 2009 at 10:04, Daniel Neukomm wrote: > patch for mkfs.ubifs devtable.c increment in dev_table is wrongly > interpreted > > with the device table one can add /dev entries to the root file system > image. > The device table file contains among others the fields minor, start, > increment and count. > If there is an entry with minor=0 start=0 increment =32 and count=4 the > mkfs.ubifs makes > 128 device entries, with minor numbers from 0 to 127 > The correct version makes 4 entries with minor number 0,32,64,96. > > /dev/mtd c 640 0 0 90 0 0 2 7 > This gives 14 devices /dev/mtdXX instead of 7 devices. > Due to this error mtd_debug info /dev/mtd3 delivers the information of > /dev/mtd1 instead of. > diff --git a/mkfs.ubifs/devtable.c b/mkfs.ubifs/devtable.c > index 236a6e7..e2d96dc 100644 all patches should include signed-off-by tags. please read the Documentation/SubmittingPatches file in the linux kernel source code for some guidelines. -mike
On Sun, 2009-08-02 at 16:04 +0200, Daniel Neukomm wrote: > patch for mkfs.ubifs devtable.c increment in dev_table is wrongly > interpreted > > with the device table one can add /dev entries to the root file system > image. > The device table file contains among others the fields minor, start, > increment and count. > If there is an entry with minor=0 start=0 increment =32 and count=4 the > mkfs.ubifs makes > 128 device entries, with minor numbers from 0 to 127 > The correct version makes 4 entries with minor number 0,32,64,96. > > /dev/mtd c 640 0 0 90 0 0 2 7 > This gives 14 devices /dev/mtdXX instead of 7 devices. > Due to this error mtd_debug info /dev/mtd3 delivers the information of > /dev/mtd1 instead of. > > diff --git a/mkfs.ubifs/devtable.c b/mkfs.ubifs/devtable.c > index 236a6e7..e2d96dc 100644 > --- a/mkfs.ubifs/devtable.c > +++ b/mkfs.ubifs/devtable.c > @@ -248,7 +248,7 @@ static int interpret_table_entry(const char *line) > goto out_free; > } > } else { > - int i, num = start + increment * count, len = > strlen(name) + 20; > + int i, num = start + count, len = strlen(name) + 20; > char *nm; > > for (i = start; i < num; i++) { > @@ -262,7 +262,7 @@ static int interpret_table_entry(const char *line) > nh_elt->mode = mode; > nh_elt->uid = uid; > nh_elt->gid = gid; > - nh_elt->dev = makedev(major, minor + i - start); > + nh_elt->dev = makedev(major, minor + (i - > start)*increment); > > nm = malloc(len); > if (!nm) { Hi, thanks for the patch. Are you planning to re-send it properly with no line-wrapping and with signed-off-by?
diff --git a/mkfs.ubifs/devtable.c b/mkfs.ubifs/devtable.c index 236a6e7..e2d96dc 100644 --- a/mkfs.ubifs/devtable.c +++ b/mkfs.ubifs/devtable.c @@ -248,7 +248,7 @@ static int interpret_table_entry(const char *line) goto out_free; } } else { - int i, num = start + increment * count, len = strlen(name) + 20; + int i, num = start + count, len = strlen(name) + 20; char *nm;