Cannot mount ubifs partition
Quoted 8 lines · Brian Norris
Quoted 7 lines · Michael N
I am using a Zynq7000 with NAND 512MB and I am trying to deploy Linux on NAND memory. I use a custom built kernel with minimal features (UBI and UBIFS support are enabled and mtd-utils installed). I can ubiformat an mtd partition, I
can ubiattach and ubidetach it but whenever I try to mount the partition I get this error.
Quoted 6 lines
Quoted 2 lines
mount: mounting /dev/ubi0:ubi-rootfs on
/mnt/ubifsfailed:
No such deviceWhat's the exact mount command you're running? Did you take a look at the MTD FAQ?
I am running this command:
$ mount -t ubifs ubi0:ubi-rootfs /mnt/ubifs
Quoted 3 lines
Quoted 1 line
(ubi-rootfs is the name of the partition, I am sure about it)
Brian
Quoted 18 lines · Michael Niarchos
Quoted 17 lines · Brian Norris
Quoted 11 lines · Michael N
I am using a Zynq7000 with NAND 512MB and I am trying to deploy Linux on NAND
memory. I use a custom built kernel with minimal features (UBI and UBIFS support are enabled and mtd-utils installed). I can ubiformat an mtd partition, I
can ubiattach and ubidetach it but whenever I try to mount the partition I get this error.mount: mounting /dev/ubi0:ubi-rootfs on
/mnt/ubifsfailed:
No such deviceWhat's the exact mount command you're running? Did you take a look at the MTD FAQ?
Quoted 6 lines
I am running this command:
$ mount -t ubifs ubi0:ubi-rootfs /mnt/ubifs
Does it work if you use the device node? i.e. /dev/ubi0_X? Is it attached?
Signature · 2 lines
Thanks, //richard
Quoted 23 lines · Richard Weinberger
Quoted 21 lines · Michael Niarchos
Quoted 18 lines · Brian Norris
Quoted 11 lines · Michael N
I am using a Zynq7000 with NAND 512MB and I am trying to deploy Linux on NAND
memory. I use a custom built kernel with minimal features (UBI and UBIFS support are enabled and mtd-utils installed). I can ubiformat an mtd partition, I
can ubiattach and ubidetach it but whenever I try to mount the partition I get this error.mount: mounting /dev/ubi0:ubi-rootfs on
/mnt/ubifsfailed:
No such deviceWhat's the exact mount command you're running? Did you take a look at the MTD FAQ?
Quoted 6 lines
Quoted 3 lines
I am running this command:
$ mount -t ubifs ubi0:ubi-rootfs /mnt/ubifsDoes it work if you use the device node? i.e.
/dev/ubi0_X? Is it attached?
root@zx3-pm3-zynq7:~# ubiattach /dev/ubi_ctrl -m 2 [ 115.549805] UBI: attaching mtd2 to ubi0 [ 115.787102] mmc0: Card removed during transfer! [ 115.791560] mmc0: Resetting controller. [ 115.803396] mmc0: Card removed during transfer! [ 115.807853] mmc0: Resetting controller. [ 119.024116] UBI: scanning is finished [ 119.056419] UBI: attached mtd2 (name "nand-rootfs", size 506 MiB) to ubi0 [ 119.063272] UBI: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes [ 119.070053] UBI: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 [ 119.076670] UBI: VID header offset: 2048 (aligned 2048), data offset: 4096 [ 119.083579] UBI: good PEBs: 4044, bad PEBs: 4, corrupted PEBs: 0 [ 119.089580] UBI: user volume: 1, internal volumes: 1, max. volumes count: 128 [ 119.096636] UBI: max/mean erase counter: 6/2, WL threshold: 4096, image sequence number: 1208887967 [ 119.105709] UBI: available PEBs: 0, total reserved PEBs: 4044, PEBs reserved for bad PEB handling: 76 [ 119.115500] UBI: background thread "ubi_bgt0d" started, PID 933 UBI device number 0, total 4044 LEBs (513490944 bytes, 489.7 MiB), available 0 LEBs (0 bytes), LEB size 126976 bytes (124.0 KiB) root@zx3-pm3-zynq7:~# mount -t ubifs /dev/ubi0_0 /mnt/ mount: mounting /dev/ubi0_0 on /mnt/ failed: No such device
Richard Weinberger
maintainerAm 13.05.2015 um 10:48 schrieb Michael Niarchos:
Quoted 44 lines · Richard Weinberger
Quoted 23 lines
Quoted 21 lines · Michael Niarchos
Quoted 18 lines · Brian Norris
Quoted 11 lines · Michael N
I am using a Zynq7000 with NAND 512MB and I am trying to deploy Linux on NAND
memory. I use a custom built kernel with minimal features (UBI and UBIFS support are enabled and mtd-utils installed). I can ubiformat an mtd partition, I
can ubiattach and ubidetach it but whenever I try to mount the partition I get this error.mount: mounting /dev/ubi0:ubi-rootfs on
/mnt/ubifsfailed:
No such deviceWhat's the exact mount command you're running? Did you take a look at the MTD FAQ?
Quoted 6 lines
Quoted 3 lines
I am running this command:
$ mount -t ubifs ubi0:ubi-rootfs /mnt/ubifsDoes it work if you use the device node? i.e.
/dev/ubi0_X? Is it attached?root@zx3-pm3-zynq7:~# ubiattach /dev/ubi_ctrl -m 2 [ 115.549805] UBI: attaching mtd2 to ubi0 [ 115.787102] mmc0: Card removed during transfer! [ 115.791560] mmc0: Resetting controller. [ 115.803396] mmc0: Card removed during transfer! [ 115.807853] mmc0: Resetting controller. [ 119.024116] UBI: scanning is finished [ 119.056419] UBI: attached mtd2 (name "nand-rootfs", size 506 MiB) to ubi0 [ 119.063272] UBI: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes [ 119.070053] UBI: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 [ 119.076670] UBI: VID header offset: 2048 (aligned 2048), data offset: 4096
Quoted 8 lines
[ 119.083579] UBI: good PEBs: 4044, bad PEBs: 4, corrupted PEBs: 0 [ 119.089580] UBI: user volume: 1, internal volumes: 1, max. volumes count: 128 [ 119.096636] UBI: max/mean erase counter: 6/2, WL threshold: 4096, image sequence number: 1208887967 [ 119.105709] UBI: available PEBs: 0, total reserved PEBs: 4044, PEBs reserved for bad PEB handling: 76 [ 119.115500] UBI: background thread "ubi_bgt0d" started, PID 933 UBI device number 0, total 4044 LEBs (513490944 bytes, 489.7 MiB), available 0 LEBs (0 bytes), LEB size 126976 bytes (124.0 KiB) root@zx3-pm3-zynq7:~# mount -t ubifs /dev/ubi0_0 /mnt/ mount: mounting /dev/ubi0_0 on /mnt/ failed: No such device
Ahh, -m 2...
What does ubinfo -a print?
Thanks,
//richard
Quoted 54 lines · Richard Weinberger
Am 13.05.2015 um 10:48 schrieb Michael Niarchos:
Quoted 44 lines · Richard Weinberger
Quoted 23 lines
Quoted 21 lines · Michael Niarchos
Quoted 18 lines · Brian Norris
Quoted 11 lines · Michael N
I am using a Zynq7000 with NAND 512MB and I am trying to deploy Linux on NAND
memory. I use a custom built kernel with minimal features (UBI and UBIFS support are enabled and mtd-utils installed). I can ubiformat an mtd partition, I
can ubiattach and ubidetach it but whenever I try to mount the partition I get this error.mount: mounting /dev/ubi0:ubi-rootfs on
/mnt/ubifsfailed:
No such deviceWhat's the exact mount command you're running? Did you take a look at the MTD FAQ?
Quoted 6 lines
Quoted 3 lines
I am running this command:
$ mount -t ubifs ubi0:ubi-rootfs /mnt/ubifsDoes it work if you use the device node? i.e.
/dev/ubi0_X? Is it attached?root@zx3-pm3-zynq7:~# ubiattach /dev/ubi_ctrl -m 2 [ 115.549805] UBI: attaching mtd2 to ubi0 [ 115.787102] mmc0: Card removed during transfer! [ 115.791560] mmc0: Resetting controller. [ 115.803396] mmc0: Card removed during transfer! [ 115.807853] mmc0: Resetting controller. [ 119.024116] UBI: scanning is finished [ 119.056419] UBI: attached mtd2 (name "nand-rootfs", size 506 MiB) to ubi0 [ 119.063272] UBI: PEB size: 131072 bytes (128 KiB), LEB size: 126976 bytes [ 119.070053] UBI: min./max. I/O unit sizes: 2048/2048, sub-page size 2048 [ 119.076670] UBI: VID header offset: 2048 (aligned 2048), data offset: 4096Quoted 8 lines
[ 119.083579] UBI: good PEBs: 4044, bad PEBs: 4, corrupted PEBs: 0 [ 119.089580] UBI: user volume: 1, internal volumes: 1, max. volumes count: 128 [ 119.096636] UBI: max/mean erase counter: 6/2, WL threshold: 4096, image sequence number: 1208887967 [ 119.105709] UBI: available PEBs: 0, total reserved PEBs: 4044, PEBs reserved for bad PEB handling: 76 [ 119.115500] UBI: background thread "ubi_bgt0d" started, PID 933 UBI device number 0, total 4044 LEBs (513490944 bytes, 489.7 MiB), available 0 LEBs (0 bytes), LEB size 126976 bytes (124.0 KiB) root@zx3-pm3-zynq7:~# mount -t ubifs /dev/ubi0_0 /mnt/ mount: mounting /dev/ubi0_0 on /mnt/ failed: No such device
Quoted 6 lines
Ahh, -m 2...
What does ubinfo -a print?Thanks,
//richard
root@zx3-pm3-zynq7:~# ubinfo -a UBI version: 1 Count of UBI devices: 1 UBI control device major/minor: 10:59 Present UBI devices: ubi0
ubi0
Volumes count: 1 Logical eraseblock size: 126976 bytes, 124.0 KiB Total amount of logical eraseblocks: 4044 (513490944 bytes, 489.7 MiB) Amount of available logical eraseblocks: 0 (0 bytes) Maximum count of volumes 128 Count of bad physical eraseblocks: 4 Count of reserved physical eraseblocks: 76 Current maximum erase counter value: 6 Minimum input/output unit size: 2048 bytes Character device major/minor: 246:0 Present volumes: 0
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1
Richard Weinberger
maintainerAm 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1
Is the device node present?
Thanks,
//richard
Richard Weinberger
maintainerAm 13.05.2015 um 11:06 schrieb Michael Niarchos:
Quoted 17 lines · Richard Weinberger
Quoted 9 lines
Am 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1Quoted 5 lines
Is the device node present?
Thanks,
//richard
Quoted 6 lines
Yes, it is present
root@zx3-pm3-zynq7:~# find /dev -name "ubi*" /dev/ubi0_0 /dev/ubi0 /dev/ubi_ctrl
Can you use them using ubiupdatevol, etc...?
Something is fishy here or we're all missing something obvious. :)
Thanks,
//richard
Quoted 9 lines · Richard Weinberger
Am 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1
Quoted 5 lines
Is the device node present?
Thanks,
//richard
Yes, it is present
root@zx3-pm3-zynq7:~# find /dev -name "ubi*" /dev/ubi0_0 /dev/ubi0 /dev/ubi_ctrl
Thanks,
Michael
Richard Weinberger
maintainerAm 13.05.2015 um 11:06 schrieb Michael Niarchos:
Quoted 17 lines · Richard Weinberger
Quoted 9 lines
Am 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1Quoted 5 lines
Is the device node present?
Thanks,
//richard
Quoted 6 lines
Yes, it is present
root@zx3-pm3-zynq7:~# find /dev -name "ubi*" /dev/ubi0_0 /dev/ubi0 /dev/ubi_ctrl
BTW: Have you created the nodes by hand? Do major/minor numbers match?
Thanks,
//richard
Quoted 25 lines · Richard Weinberger
Am 13.05.2015 um 11:06 schrieb Michael Niarchos:
Quoted 17 lines · Richard Weinberger
Quoted 9 lines
Am 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1Quoted 5 lines
Is the device node present?
Thanks,
//richardQuoted 6 lines
Yes, it is present
root@zx3-pm3-zynq7:~# find /dev -name "ubi*" /dev/ubi0_0 /dev/ubi0 /dev/ubi_ctrl
Quoted 7 lines
Can you use them using ubiupdatevol, etc...?
Something is fishy here or we're all missing something obvious. :)
Thanks,
//richard
root@zx3-pm3-zynq7:/var/volatile/tmp# ubiupdatevol /dev/ubi0_0 /tmp/zx3-image.ubifs [ 272.730913] mmc0: Card removed during transfer! [ 272.735368] mmc0: Resetting controller.
This messages are been printed many times, but no error for ubi updatevol is returned or something.
I 've been thinking the same thing :)
I don't know if this is going to help but when I first tried to load root filesystem from NAND, kernel printed that the rootfs variable was not set right and that the available options are:
mtdblock0
mtdblock1
mtdblock2
I get this when I run
root@zx3-pm3-zynq7:/var/volatile/tmp# cat /proc/partitions major minor #blocks name
31 0 5120 mtdblock0 31 1 1024 mtdblock1 31 2 518144 mtdblock2
Also,
root@zx3-pm3-zynq7:/var/volatile/tmp# cat /proc/mtd dev: size erasesize name mtd0: 00500000 00020000 "nand-linux" mtd1: 00100000 00020000 "nand-device-tree" mtd2: 1fa00000 00020000 "nand-rootfs"
I don't know what's going on :)
Quoted 18 lines · Richard Weinberger
Am 13.05.2015 um 11:06 schrieb Michael Niarchos:
Quoted 17 lines · Richard Weinberger
Quoted 14 lines
Am 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1Is the device node present?
Thanks,
//richard
Quoted 9 lines
Quoted 6 lines
Yes, it is present
root@zx3-pm3-zynq7:~# find /dev -name "ubi*" /dev/ubi0_0 /dev/ubi0 /dev/ubi_ctrlBTW: Have you created the nodes by hand? Do major/minor numbers match?
No, I have not created the nodes by hand
Richard Weinberger
maintainerAm 13.05.2015 um 11:43 schrieb Michael Niarchos:
Quoted 3 lines
Quoted 2 lines
BTW: Have you created the nodes by hand? Do major/minor numbers match?
No, I have not created the nodes by hand
Please answer all my questions. Also from the other mails.
Thanks,
//richard
Quoted 6 lines · Richard Weinberger
Am 13.05.2015 um 12:33 schrieb Michael Niarchos:
Quoted 5 lines · Richard Weinberger
Quoted 4 lines
Am 13.05.2015 um 11:43 schrieb Michael Niarchos:
Quoted 2 lines
Quoted 2 lines
BTW: Have you created the nodes by hand? Do major/minor numbers match?
Quoted 8 lines
Quoted 6 lines
Quoted 6 lines
Quoted 1 line
No, I have not created the nodes by hand
Please answer all my questions. Also from the other mails.
Thanks,
//richardDo the minor/major numbers match?
Yes they do match.
$ ls -l /dev/ubi0_0 crw------- 1 root root 246, 1 May 11 16:19 /dev/ubi0_0
Quoted 1 line
Does ubiupdatevol succeed?
I run the following command:
$ ubiupdatevol /dev/ubi0_0 /tmp/zx3-image.ubifs
and nothing is printed, so I suppose that it succeeds :)
Quoted 2 lines
If all ubitools work but mounting ubifs not, it is maybe an ubifs issue. Is the ubifs module loaded? :)
There is a problem with loading ubifs module (other modules as well)
$ modprobe ubifs modprobe: module ubifs not found in modules.dep
I think that this is a problem of my minimal built kernel.
Michael
Richard Weinberger
maintainerAm 13.05.2015 um 12:58 schrieb Michael Niarchos:
Quoted 4 lines
$ modprobe ubifs modprobe: module ubifs not found in modules.depI think that this is a problem of my minimal built kernel.
*gnahhhh*. No ubifs for you.
Thus is why mount is failing...
Thanks,
//richard
Quoted 6 lines · Richard Weinberger
Am 13.05.2015 um 12:58 schrieb Michael Niarchos:
Quoted 4 lines
$ modprobe ubifs modprobe: module ubifs not found in modules.depI think that this is a problem of my minimal built kernel.
I checked my kernel build configuration and it seems that UBI and UBIFS are built-in in the kernel and should not be loaded as modules. :S I 'll look it up anyway.
Thanks
Hi, folks,
Quoted 18 lines · Richard Weinberger
Am 13.05.2015 um 11:06 schrieb Michael Niarchos:
Quoted 17 lines · Richard Weinberger
Quoted 14 lines
Am 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1Is the device node present?
Thanks,
//richard
Quoted 8 lines
Quoted 6 lines
Yes, it is present
root@zx3-pm3-zynq7:~# find /dev -name "ubi*" /dev/ubi0_0 /dev/ubi0 /dev/ubi_ctrlBTW: Have you created the nodes by hand? Do major/minor numbers match?
If we create the dev node by hand, it is hard for kernel to notice that.
UBI (and even driver base) seems doesn't know and doesn't care if device nodes already exist. UBI just checks the ubi_devices, registers devices, and tells udev to make node. Although everything seems ok, `mount' will fail because of wrong device node. However, the "device node" is removed when detaching without any warning or error message. In this way, UBI could delete the file without user's permission.
Is this appropriate? Shall we add some code in ubidetach to detect whether the "device node" to be removed is correct?
thanks,
Sheng
Quoted 9 lines
Thanks,
//richard______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Richard Weinberger
maintainerAm 14.05.2015 um 05:45 schrieb Sheng Yong:
Quoted 29 lines
Hi, folks,
Quoted 26 lines · Richard Weinberger
Am 13.05.2015 um 11:06 schrieb Michael Niarchos:
Quoted 17 lines · Richard Weinberger
Quoted 9 lines
Am 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1Quoted 5 lines
Is the device node present?
Thanks,
//richardQuoted 6 lines
Yes, it is present
root@zx3-pm3-zynq7:~# find /dev -name "ubi*" /dev/ubi0_0 /dev/ubi0 /dev/ubi_ctrlBTW: Have you created the nodes by hand? Do major/minor numbers match?
Michael's problem was that ubifs was not loaded.
He confirmed that off-list.
Quoted 11 lines
If we create the dev node by hand, it is hard for kernel to notice that.
UBI (and even driver base) seems doesn't know and doesn't care if device nodes already exist. UBI just checks the
ubi_devices, registers devices, and tells udev to make node. Although everything seems ok, `mount' will fail because of wrong device node. However, the "device node" is removed when detaching without any warning or error message. In this way, UBI could delete the file without user's permission.Is this appropriate? Shall we add some code in ubidetach to detect whether the "device node" to be removed is correct?
Isn't this the behavior that all device drivers have? Maybe I miss something as my uptime is less than 15min. ;)
Thanks,
//richard
Quoted 43 lines · Richard Weinberger
Am 14.05.2015 um 05:45 schrieb Sheng Yong:
Quoted 29 lines
Hi, folks,
Quoted 26 lines · Richard Weinberger
Am 13.05.2015 um 11:06 schrieb Michael Niarchos:
Quoted 17 lines · Richard Weinberger
Quoted 9 lines
Am 13.05.2015 um 10:56 schrieb Michael Niarchos:
Quoted 7 lines
Volume ID: 0 (on ubi0) Type: dynamic Alignment: 1 Size: 3964 LEBs (503332864 bytes, 480.0 MiB) State: OK Name: ubi-rootfs Character device major/minor: 246:1Quoted 5 lines
Is the device node present?
Thanks,
//richardQuoted 6 lines
Yes, it is present
root@zx3-pm3-zynq7:~# find /dev -name "ubi*" /dev/ubi0_0 /dev/ubi0 /dev/ubi_ctrlBTW: Have you created the nodes by hand? Do major/minor numbers match?
Michael's problem was that ubifs was not loaded.
He confirmed that off-list.Quoted 9 lines
If we create the dev node by hand, it is hard for kernel to notice that.
UBI (and even driver base) seems doesn't know and doesn't care if device nodes already exist. UBI just checks the
ubi_devices, registers devices, and tells udev to make node. Although everything seems ok, `mount' will fail because of wrong device node. However, the "device node" is removed when detaching without any warning or error message. In this way, UBI could delete the file without user's permission.
Quoted 4 lines
Quoted 2 lines
Is this appropriate? Shall we add some code in ubidetach to detect whether the "device node" to be removed is correct?
Isn't this the behavior that all device drivers have?
Yes, I think so. I just considered that is there any point to do something to avoid this, when I read the mail that you suggest Michael to check the device node. :-)
thanks,
Sheng
Quoted 10 lines
Maybe I miss something as my uptime is less than 15min. ;)
Thanks,
//richard______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/
Richard Weinberger
maintainerAm 14.05.2015 um 10:24 schrieb Sheng Yong:
Quoted 4 lines
Quoted 1 line
Isn't this the behavior that all device drivers have?
Yes, I think so. I just considered that is there any point to do something to avoid this, when I read the mail that you suggest Michael to check the device node. :-)
We already have a solution for that, udev and devtmpfs. If you create the nodes by hand you're on your own. Sadly some embedded folks still do, that's why I was asking...
Thanks,
//richard