Skip to contentSkip to conversation

Fix mkfs.jffs2 --pagesize parameter usage.

PATCH New Michał Leśniewski 2 participants 2 messages May 19, 2015 – May 22, 2015 Journalling flash file system V2 (JFFS2)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Fix mkfs.jffs2 --pagesize parameter usage.

This fixes bug 8186 on Bugzilla.

The mkfs.jffs2 accepts a --pagesize parameter, which allows specifying the size of the virtual memory page size of the target machine, where the image will be used. (This is the value of the PAGE_SIZE macro in Linux.) In most cases the parameter doesn't need to be set as the default value of 4 kB is usually correct.

The parameter was used incorrectly in Buildroot -- it was set to the page size of flash memory chip -- this commit fixes this problem. Now the --pagesize parameter is not used at all (unless the user explicitly chooses to use a custom value during configuration). All defconfigs existing defconfigs were corrected to match the new configuration variable names.

---
 configs/mini2440_defconfig      |  2 +-
 configs/openblocks_a6_defconfig |  2 +-
 configs/sheevaplug_defconfig    |  2 +-
 fs/jffs2/Config.in              | 58 +++++++++++++++++++++--------------------
 fs/jffs2/jffs2.mk               |  5 +++-
 5 files changed, 37 insertions(+), 32 deletions(-)
configs/mini2440_defconfig +1 -1
index d7d9ab1..e8b55cd 100644
@@ -8,7 +8,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttySAC0"
 
 # Filesystem
 BR2_TARGET_ROOTFS_JFFS2=y
-BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
+BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_128K=y
 BR2_TARGET_ROOTFS_JFFS2_PAGESIZE=0x800
 BR2_TARGET_ROOTFS_JFFS2_EBSIZE=0x20000
 BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER=y
configs/openblocks_a6_defconfig +1 -1
index d9994f2..5147785 100644
@@ -9,7 +9,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
 
 # filesystem
 BR2_TARGET_ROOTFS_JFFS2=y
-BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
+BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_128K=y
 
 # Lock to 3.18 headers to avoid breaking with newer kernels
 BR2_KERNEL_HEADERS_VERSION=y
configs/sheevaplug_defconfig +1 -1
index 5422f67..9e272ff 100644
@@ -8,7 +8,7 @@ BR2_TARGET_GENERIC_GETTY_PORT="ttyS0"
 
 # filesystem
 BR2_TARGET_ROOTFS_JFFS2=y
-BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_2K_128K=y
+BR2_TARGET_ROOTFS_JFFS2_NANDFLASH_128K=y
 
 # Lock down headers to avoid breaking with new defaults
 BR2_KERNEL_HEADERS_VERSION=y
fs/jffs2/Config.in +30 -28

96 lines not on this page · raw message

fs/jffs2/jffs2.mk +4 -1
index 0232199..a9cd414 100644
@@ -26,7 +26,10 @@ JFFS2_OPTS += -b
 SUMTOOL_OPTS += -b
 endif
 
-JFFS2_OPTS += -s $(BR2_TARGET_ROOTFS_JFFS2_PAGESIZE)
+ifeq ($(BR2_TARGET_ROOTFS_JFFS2_USE_CUSTOM_PAGESIZE),y)
+JFFS2_OPTS += -s $(BR2_TARGET_ROOTFS_JFFS2_CUSTOM_PAGESIZE)
+endif
+
 ifeq ($(BR2_TARGET_ROOTFS_JFFS2_NOCLEANMARKER),y)
 JFFS2_OPTS += -n
 SUMTOOL_OPTS += -n
Signature · 1 line
2.1.4
#1 lore raw

PATCH 1/1 Fix mkfs.jffs2 --pagesize parameter usage.

Quoted 9 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Micha?" == Micha? Le?niewski <[email protected]> writes:

This fixes bug 8186 on Bugzilla.
The mkfs.jffs2 accepts a --pagesize parameter, which allows specifying the size of the virtual memory page size of the target machine, where the image will be used. (This is the value of the PAGE_SIZE macro in Linux.) In most cases the parameter doesn't need to be set as the default value of 4 kB is usually correct.

Quoted 7 lines

The parameter was used incorrectly in Buildroot -- it was set to the page size of flash memory chip -- this commit fixes this problem. Now the --pagesize parameter is not used at all (unless the user explicitly chooses to use a custom value during configuration). All defconfigs existing defconfigs were corrected to match the new configuration variable names.

Thanks, committed with a slightly reworded commit message and Config.in.legacy handling for the renamed symbols.

fs/jffs2/Config.in config BR2_TARGET_ROOTFS_JFFS2_SUMMARY · line 96

Quoted 3 lines
fs/jffs2/Config.in +3 -0
+config BR2_TARGET_ROOTFS_JFFS2_USE_CUSTOM_PAGESIZE
+	bool "Select custom virtual memory page size"
+	default false

NIT: bool symbols default to false, so this line isn't needed.

Signature · 1 line
Bye, Peter Korsgaard