I have repartitioned my eMMC and now I have 10 partitions on it.
Partition managers like sfdisk and parted correctly see all partitions but unfortunately Maemo recognizes only first seven partitions (no /dev/mmcblk0p8, /dev/mmcblk0p9, /dev/mmcblk0p10).
I think it is something related to udev's configuration, but where is the value to change ?
I have repartitioned my eMMC and now I have 10 partitions on it.
Partition managers like sfdisk and parted correctly see all partitions but unfortunately Maemo recognizes only first seven partitions (no /dev/mmcblk0p8, /dev/mmcblk0p9, /dev/mmcblk0p10).
I think it is something related to udev's configuration, but where is the value to change ?
The mmc kernel driver only supports 7 partitions per device. You need to modify this driver in order to use more partitions. This might have compatibility issues, since the block minor number of your /dev/mmcblk0p9 will likely be the same as standard /dev/mmcblk1p1.
Another option is to use dm (device mapper) which can move all partitioning to user space. See kpartx.
/dev/mmcblk0p5 is a 2GB logical partition (which now contains Nitdroid 0.0.9 manually installed)
/dev/mmcblk0p6 is a 2GB logical partition for testing purpose (i.e. reserved for Gingerbread)
/dev/mmcblk0p7 is a 4GB logical partition for testing purpose (i.e kubuntu, fedora, ...etc)
/dev/mmcblk0p8 is a 4GB logical partition for testing purpose (i.e kubuntu, fedora, ...etc)
/dev/mmcblk0p9 is a near 256MB logical partition for u-boot files (kernels, scripts, emergency rescue system, ...etc)
/dev/mmcblk0p10 is a 2GB logical partition for testing purpose (i.e. reserved for MeeGo 1.2).
This partition is here also because in the future I will always be able to delete it and then extend OptFS from 4GB to 6GB
The mmc kernel driver only supports 7 partitions per device. You need to modify this driver in order to use more partitions. This might have compatibility issues, since the block minor number of your /dev/mmcblk0p9 will likely be the same as standard /dev/mmcblk1p1.
Another option is to use dm (device mapper) which can move all partitioning to user space. See kpartx.
I have seen that the problem is still present under MeeGo's kernel.
So since one partition slot is lost by extended partition the max number under N900 is six partitions.
or gnu parted (that comes with libdevmapper.so.1.02 too)
look in my sig
Yes Parted sees all partitions (I have used it to make them) but then is the kernel that doesn't load a dev node for all partitions with number beyond of 7 so you can't mount them
Yes Parted sees all partitions (I have used it to make them) but then is the kernel that doesn't load a dev node for all partitions with number beyond of 7 so you can't mount them
its good to see we are on the same page. look at what i quoted i've have to had read that post
Device mapper is a kernel subsystem that allows creating virtual block devices and mapping them to real devices.
You can for example create a device called /dev/dm9 which is a device of size 4GB starting at 24GB of /dev/mmcblk0. This way, even if you don't have an mmc block device for this partition, you can still use it.
kpartx is a tool that automates this. You point it to a block device, and it creates a dm device for each partition on the device, regardless of partition number limitations of the underlying block device driver.