All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH/RFC] base-files: add noatime to rootfs mount options
@ 2009-03-15 20:47 Dmitry Artamonow
  2009-03-16  0:08 ` Stanislav Brabec
                   ` (2 more replies)
  0 siblings, 3 replies; 10+ messages in thread
From: Dmitry Artamonow @ 2009-03-15 20:47 UTC (permalink / raw)
  To: openembedded-devel

In most machines' fstabs rootfs mounted with 'defaults' option.
This implies that atime logging is on - i.e. on every read from
filesystem kernel writes atime stamp to files' metadata.
Here in embedded world, where rootfs is usually stored on some
kind of flash (internal NAND/NOR, or external SD/MMC/CF card)
it is a real problem, because higher number of writes causes
flash wearing, higher system load and higher chance of filesystem
corruption.

Fix it by adding noatime to rootfs mount options in fstab.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
---
 packages/base-files/base-files/akita/fstab         |    2 +-
 packages/base-files/base-files/c7x0/fstab          |    2 +-
 packages/base-files/base-files/efika/fstab         |    2 +-
 packages/base-files/base-files/ep93xx/fstab        |    2 +-
 packages/base-files/base-files/fstab               |    2 +-
 .../base-files/base-files/gumstix-connex/fstab     |    2 +-
 .../base-files/base-files/gumstix-verdex/fstab     |    2 +-
 packages/base-files/base-files/h2200/fstab         |    2 +-
 packages/base-files/base-files/h3600/fstab         |    2 +-
 packages/base-files/base-files/h3900/fstab         |    2 +-
 packages/base-files/base-files/h5000/fstab         |    2 +-
 packages/base-files/base-files/h6300/fstab         |    2 +-
 packages/base-files/base-files/htcuniversal/fstab  |    2 +-
 packages/base-files/base-files/hx4700/fstab        |    2 +-
 packages/base-files/base-files/mtx-1/fstab         |    2 +-
 packages/base-files/base-files/mtx-2/fstab         |    2 +-
 packages/base-files/base-files/mx31moboard/fstab   |    2 +-
 packages/base-files/base-files/netbook-pro/fstab   |    2 +-
 packages/base-files/base-files/om-3d7k/fstab       |    2 +-
 packages/base-files/base-files/omap5912osk/fstab   |    2 +-
 packages/base-files/base-files/openprotium/fstab   |    2 +-
 packages/base-files/base-files/poodle/fstab        |    2 +-
 packages/base-files/base-files/simpad/fstab        |    2 +-
 packages/base-files/base-files/slugos/fstab        |    2 +-
 packages/base-files/base-files/spitz/fstab         |    2 +-
 packages/base-files/base-files/tosa/fstab          |    2 +-
 packages/base-files/base-files/wrt54/fstab         |    2 +-
 packages/base-files/base-files/xxs1500/fstab       |    2 +-
 packages/base-files/base-files_3.0.14.bb           |    2 +-
 29 files changed, 29 insertions(+), 29 deletions(-)

diff --git a/packages/base-files/base-files/akita/fstab b/packages/base-files/base-files/akita/fstab
index 3b488cf..9b8e209 100644
--- a/packages/base-files/base-files/akita/fstab
+++ b/packages/base-files/base-files/akita/fstab
@@ -1,4 +1,4 @@
-rootfs      /       auto    defaults        1  1
+rootfs      /       auto    defaults,noatime        1  1
 #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
 proc		/proc	proc	defaults	0  0
 /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
diff --git a/packages/base-files/base-files/c7x0/fstab b/packages/base-files/base-files/c7x0/fstab
index ea38eab..8d6332f 100644
--- a/packages/base-files/base-files/c7x0/fstab
+++ b/packages/base-files/base-files/c7x0/fstab
@@ -1,4 +1,4 @@
-rootfs      /       auto    defaults        1  1
+rootfs      /       auto    defaults,noatime        1  1
 #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
 proc		/proc	proc	defaults	0  0
 /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
diff --git a/packages/base-files/base-files/efika/fstab b/packages/base-files/base-files/efika/fstab
index c7bf023..17fdb20 100644
--- a/packages/base-files/base-files/efika/fstab
+++ b/packages/base-files/base-files/efika/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1 1
+rootfs               /                    auto       defaults,noatime              1 1
 proc                 /proc                proc       defaults              0 0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
 usbfs                /proc/bus/usb        usbfs      auto                0 0
diff --git a/packages/base-files/base-files/ep93xx/fstab b/packages/base-files/base-files/ep93xx/fstab
index c7bf023..17fdb20 100644
--- a/packages/base-files/base-files/ep93xx/fstab
+++ b/packages/base-files/base-files/ep93xx/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1 1
+rootfs               /                    auto       defaults,noatime              1 1
 proc                 /proc                proc       defaults              0 0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
 usbfs                /proc/bus/usb        usbfs      auto                0 0
diff --git a/packages/base-files/base-files/fstab b/packages/base-files/base-files/fstab
index 628a9e9..a4c8610 100644
--- a/packages/base-files/base-files/fstab
+++ b/packages/base-files/base-files/fstab
@@ -1,6 +1,6 @@
 # stock fstab - you probably want to override this with a machine specific one
 
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,noatime      1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs                /proc/bus/usb        usbfs      defaults              0  0
diff --git a/packages/base-files/base-files/gumstix-connex/fstab b/packages/base-files/base-files/gumstix-connex/fstab
index 418f997..9067bae 100644
--- a/packages/base-files/base-files/gumstix-connex/fstab
+++ b/packages/base-files/base-files/gumstix-connex/fstab
@@ -1,6 +1,6 @@
 # fstab for gumstix-connex
 
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,noatime              1  1
 proc                 /proc                proc       defaults              0  0
 sysfs                /sys                 sysfs      defaults              0  0
 tmpfs                /dev                 tmpfs      defaults              0  0
diff --git a/packages/base-files/base-files/gumstix-verdex/fstab b/packages/base-files/base-files/gumstix-verdex/fstab
index 9b5f00c..207b84e 100644
--- a/packages/base-files/base-files/gumstix-verdex/fstab
+++ b/packages/base-files/base-files/gumstix-verdex/fstab
@@ -1,6 +1,6 @@
 # fstab for gumstix-verdex
 
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,noatime              1  1
 proc                 /proc                proc       defaults              0  0
 sysfs                /sys                 sysfs      defaults              0  0
 tmpfs                /dev                 tmpfs      defaults              0  0
diff --git a/packages/base-files/base-files/h2200/fstab b/packages/base-files/base-files/h2200/fstab
index 5063f84..9b70f9d 100644
--- a/packages/base-files/base-files/h2200/fstab
+++ b/packages/base-files/base-files/h2200/fstab
@@ -1,4 +1,4 @@
-rootfs		/		auto	defaults	1  1		
+rootfs		/		auto	defaults,noatime	1  1		
 proc            /proc		proc    defaults        0  0
 sys             /sys		sysfs	defaults        0  0
 tmpfs		/var/volatile	tmpfs	mode=0755	0  0
diff --git a/packages/base-files/base-files/h3600/fstab b/packages/base-files/base-files/h3600/fstab
index 9ec7df1..e0b5443 100644
--- a/packages/base-files/base-files/h3600/fstab
+++ b/packages/base-files/base-files/h3600/fstab
@@ -1,4 +1,4 @@
-rootfs		/ 		auto	defaults	1  1 
+rootfs		/ 		auto	defaults,noatime	1  1 
 proc            /proc   proc    defaults        0  0
 /dev/hda1	/media/cf	auto	defaults,noauto,noatime,user,exec,suid	0  0
 /dev/mmc/part1	/media/card	auto	defaults,noauto,noatime,user,exec,suid	0  0
diff --git a/packages/base-files/base-files/h3900/fstab b/packages/base-files/base-files/h3900/fstab
index 9ec7df1..e0b5443 100644
--- a/packages/base-files/base-files/h3900/fstab
+++ b/packages/base-files/base-files/h3900/fstab
@@ -1,4 +1,4 @@
-rootfs		/ 		auto	defaults	1  1 
+rootfs		/ 		auto	defaults,noatime	1  1 
 proc            /proc   proc    defaults        0  0
 /dev/hda1	/media/cf	auto	defaults,noauto,noatime,user,exec,suid	0  0
 /dev/mmc/part1	/media/card	auto	defaults,noauto,noatime,user,exec,suid	0  0
diff --git a/packages/base-files/base-files/h5000/fstab b/packages/base-files/base-files/h5000/fstab
index ad05f3b..846b1ba 100644
--- a/packages/base-files/base-files/h5000/fstab
+++ b/packages/base-files/base-files/h5000/fstab
@@ -1,4 +1,4 @@
-rootfs		/ 	auto	defaults	1  1 
+rootfs		/ 	auto	defaults,noatime	1  1 
 #breaks h51xx
 /dev/mtdblock2 /home   jffs2   defaults        1  1
 proc            /proc   proc    defaults        0  0
diff --git a/packages/base-files/base-files/h6300/fstab b/packages/base-files/base-files/h6300/fstab
index f9b94d1..176df03 100644
--- a/packages/base-files/base-files/h6300/fstab
+++ b/packages/base-files/base-files/h6300/fstab
@@ -1,4 +1,4 @@
-rootfs       	/		auto	defaults	1  1
+rootfs       	/		auto	defaults,noatime	1  1
 proc            /proc		proc    defaults        0  0
 sys             /sys		sysfs	defaults        0  0
 tmpfs		/var/volatile	tmpfs	mode=0755	0  0
diff --git a/packages/base-files/base-files/htcuniversal/fstab b/packages/base-files/base-files/htcuniversal/fstab
index b4aa259..c551a19 100644
--- a/packages/base-files/base-files/htcuniversal/fstab
+++ b/packages/base-files/base-files/htcuniversal/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,noatime              1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs               /proc/bus/usb         usbfs      defaults              0  0
diff --git a/packages/base-files/base-files/hx4700/fstab b/packages/base-files/base-files/hx4700/fstab
index 49b5c96..c3364a1 100644
--- a/packages/base-files/base-files/hx4700/fstab
+++ b/packages/base-files/base-files/hx4700/fstab
@@ -1,4 +1,4 @@
-rootfs	 	/		auto	defaults		1  1		
+rootfs	 	/		auto	defaults,noatime		1  1		
 /dev/mtdblock3 	/home   jffs2   defaults        1  1
 
 proc            /proc		proc    defaults        0  0
diff --git a/packages/base-files/base-files/mtx-1/fstab b/packages/base-files/base-files/mtx-1/fstab
index 5c0e2b3..d2ccb5c 100644
--- a/packages/base-files/base-files/mtx-1/fstab
+++ b/packages/base-files/base-files/mtx-1/fstab
@@ -1,7 +1,7 @@
 # /etc/fstab: static file system information. mtx-1
 #
 # <file system> <mount pt>     <type>     <options>         <dump> <pass>
-rootfs          /              auto       defaults          1      1
+rootfs          /              auto       defaults,noatime          1      1
 tmpfs           /var/volatile  tmpfs      mode=0755,size=10m 0      0
 proc            /proc          proc       defaults          0      0
 devpts          /dev/pts       devpts     mode=0620,gid=5   0      0
diff --git a/packages/base-files/base-files/mtx-2/fstab b/packages/base-files/base-files/mtx-2/fstab
index 8b9ad0f..9fac143 100644
--- a/packages/base-files/base-files/mtx-2/fstab
+++ b/packages/base-files/base-files/mtx-2/fstab
@@ -1,7 +1,7 @@
 # /etc/fstab: static file system information. mtx-2
 #
 # <file system> <mount pt>     <type>     <options>         <dump> <pass>
-rootfs          /              auto       defaults          1      1
+rootfs          /              auto       defaults,noatime          1      1
 tmpfs           /var/volatile  tmpfs      mode=0755,size=10m 0      0
 proc            /proc          proc       defaults          0      0
 devpts          /dev/pts       devpts     mode=0620,gid=5   0      0
diff --git a/packages/base-files/base-files/mx31moboard/fstab b/packages/base-files/base-files/mx31moboard/fstab
index 1ec0fd5..0e0d7c2 100644
--- a/packages/base-files/base-files/mx31moboard/fstab
+++ b/packages/base-files/base-files/mx31moboard/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,noatime              1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs                /proc/bus/usb        usbfs      defaults              0  0
diff --git a/packages/base-files/base-files/netbook-pro/fstab b/packages/base-files/base-files/netbook-pro/fstab
index c7bf023..17fdb20 100644
--- a/packages/base-files/base-files/netbook-pro/fstab
+++ b/packages/base-files/base-files/netbook-pro/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1 1
+rootfs               /                    auto       defaults,noatime              1 1
 proc                 /proc                proc       defaults              0 0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
 usbfs                /proc/bus/usb        usbfs      auto                0 0
diff --git a/packages/base-files/base-files/om-3d7k/fstab b/packages/base-files/base-files/om-3d7k/fstab
index 48aefde..c6ab4d5 100644
--- a/packages/base-files/base-files/om-3d7k/fstab
+++ b/packages/base-files/base-files/om-3d7k/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,noatime              1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs                /proc/bus/usb        usbfs      defaults              0  0
diff --git a/packages/base-files/base-files/omap5912osk/fstab b/packages/base-files/base-files/omap5912osk/fstab
index 5e881f7..5a51e61 100644
--- a/packages/base-files/base-files/omap5912osk/fstab
+++ b/packages/base-files/base-files/omap5912osk/fstab
@@ -1,6 +1,6 @@
 # fstab for omap5912osk
 
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,noatime              1  1
 proc                 /proc                proc       defaults              0  0
 sysfs                /sys                 sysfs      defaults              0  0
 tmpfs                /dev                 tmpfs      defaults              0  0
diff --git a/packages/base-files/base-files/openprotium/fstab b/packages/base-files/base-files/openprotium/fstab
index 96b0e2a..9003736 100644
--- a/packages/base-files/base-files/openprotium/fstab
+++ b/packages/base-files/base-files/openprotium/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,noatime              1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs                /proc/bus/usb        usbfs      defaults              0  0
diff --git a/packages/base-files/base-files/poodle/fstab b/packages/base-files/base-files/poodle/fstab
index 733b13f..f5b6c26 100644
--- a/packages/base-files/base-files/poodle/fstab
+++ b/packages/base-files/base-files/poodle/fstab
@@ -1,4 +1,4 @@
-rootfs      /       auto    defaults        1  1
+rootfs      /       auto    defaults,noatime        1  1
 #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
 proc		/proc	proc	defaults	0  0
 /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
diff --git a/packages/base-files/base-files/simpad/fstab b/packages/base-files/base-files/simpad/fstab
index 3e57ae3..38fd892 100644
--- a/packages/base-files/base-files/simpad/fstab
+++ b/packages/base-files/base-files/simpad/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1 1
+rootfs               /                    auto       defaults,noatime              1 1
 proc                 /proc                proc       defaults              0 0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
 tmpfs                /dev/shm             tmpfs      mode=0777             0  0
diff --git a/packages/base-files/base-files/slugos/fstab b/packages/base-files/base-files/slugos/fstab
index e00f057..af99764 100644
--- a/packages/base-files/base-files/slugos/fstab
+++ b/packages/base-files/base-files/slugos/fstab
@@ -1,4 +1,4 @@
-rootfs		/		jffs2	defaults	1  1
+rootfs		/		jffs2	defaults,noatime	1  1
 sysfs		/sys		sysfs	defaults	0  0
 proc		/proc		proc	defaults	0  0
 tmpfs		/var/volatile	tmpfs	mode=0755	0  0
diff --git a/packages/base-files/base-files/spitz/fstab b/packages/base-files/base-files/spitz/fstab
index 324fb78..e71d5fe 100644
--- a/packages/base-files/base-files/spitz/fstab
+++ b/packages/base-files/base-files/spitz/fstab
@@ -1,7 +1,7 @@
 # don't mount /dev/mtdblock2 since Spitz uses pivot_root
 # or 2.6 directly boots from the hdd
 # /dev/mtdblock2     /            jffs2   rw,noatime              1  1
-rootfs             /            auto    defaults                1  1
+rootfs             /            auto    defaults,noatime                1  1
 proc               /proc        proc    defaults                0  0
 # we can use a normal var filesystem with a microdrive
 # tmpfs              /var/volatiles         tmpfs   defaults                0  0
diff --git a/packages/base-files/base-files/tosa/fstab b/packages/base-files/base-files/tosa/fstab
index f256c74..8063edd 100644
--- a/packages/base-files/base-files/tosa/fstab
+++ b/packages/base-files/base-files/tosa/fstab
@@ -1,4 +1,4 @@
-rootfs      /       auto    defaults        1  1
+rootfs      /       auto    defaults,noatime        1  1
 #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
 proc		/proc	proc	defaults	0  0
 /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
diff --git a/packages/base-files/base-files/wrt54/fstab b/packages/base-files/base-files/wrt54/fstab
index 0e64d30..d848d00 100644
--- a/packages/base-files/base-files/wrt54/fstab
+++ b/packages/base-files/base-files/wrt54/fstab
@@ -1,7 +1,7 @@
 # /etc/fstab: static file system information. wrt
 #
 # <file system> <mount pt>     <type>     <options>         <dump> <pass>
-rootfs          /              auto       defaults          1      1
+rootfs          /              auto       defaults,noatime          1      1
 tmpfs           /var/volatile  tmpfs      mode=0755,size=50% 0      0
 tmpfs                /dev/shm             tmpfs      mode=0777             0  0
 proc            /proc          proc       defaults          0      0
diff --git a/packages/base-files/base-files/xxs1500/fstab b/packages/base-files/base-files/xxs1500/fstab
index 655ea97..2bc6d47 100644
--- a/packages/base-files/base-files/xxs1500/fstab
+++ b/packages/base-files/base-files/xxs1500/fstab
@@ -1,7 +1,7 @@
 # /etc/fstab: static file system information.
 #
 # <file system> <mount pt>     <type>     <options>         <dump> <pass>
-rootfs          /              auto       defaults          1      1
+rootfs          /              auto       defaults,noatime          1      1
 tmpfs           /var/volatile  tmpfs      mode=0755,size=10m 0      0
 proc            /proc          proc       defaults          0      0
 devpts          /dev/pts       devpts     mode=0620,gid=5   0      0
diff --git a/packages/base-files/base-files_3.0.14.bb b/packages/base-files/base-files_3.0.14.bb
index 460fd63..0d012c7 100644
--- a/packages/base-files/base-files_3.0.14.bb
+++ b/packages/base-files/base-files_3.0.14.bb
@@ -1,7 +1,7 @@
 DESCRIPTION = "Miscellaneous files for the base system."
 SECTION = "base"
 PRIORITY = "required"
-PR = "r85"
+PR = "r86"
 LICENSE = "GPL"
 
 SRC_URI = " \
-- 
1.6.0.6




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

* Re: [PATCH/RFC] base-files: add noatime to rootfs mount options
  2009-03-15 20:47 [PATCH/RFC] base-files: add noatime to rootfs mount options Dmitry Artamonow
@ 2009-03-16  0:08 ` Stanislav Brabec
  2009-03-29 10:39   ` Dmitry Artamonow
  2009-03-16 15:43 ` Florian Boor
  2009-03-29 11:48 ` Koen Kooi
  2 siblings, 1 reply; 10+ messages in thread
From: Stanislav Brabec @ 2009-03-16  0:08 UTC (permalink / raw)
  To: openembedded-devel

Dmitry Artamonow wrote in Sun 03/15 2009 at 23:47 +0300:
> In most machines' fstabs rootfs mounted with 'defaults' option.
> This implies that atime logging is on - i.e. on every read from
> filesystem kernel writes atime stamp to files' metadata.
> Here in embedded world, where rootfs is usually stored on some
> kind of flash (internal NAND/NOR, or external SD/MMC/CF card)
> it is a real problem, because higher number of writes causes
> flash wearing, higher system load and higher chance of filesystem
> corruption.
> 
> Fix it by adding noatime to rootfs mount options in fstab.

Good idea. On Zaurus it even prevents regular hard disc waking up while
executing scripts and significantly increases speed of writing of large
amount of small files.

Patching of udev mount.sh script would be useful as well.


________________________________________________________________________
Stanislav Brabec
http://www.penguin.cz/~utx/zaurus




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

* Re: [PATCH/RFC] base-files: add noatime to rootfs mount options
  2009-03-15 20:47 [PATCH/RFC] base-files: add noatime to rootfs mount options Dmitry Artamonow
  2009-03-16  0:08 ` Stanislav Brabec
@ 2009-03-16 15:43 ` Florian Boor
  2009-03-29 11:48 ` Koen Kooi
  2 siblings, 0 replies; 10+ messages in thread
From: Florian Boor @ 2009-03-16 15:43 UTC (permalink / raw)
  To: openembedded-devel; +Cc: openembedded-devel

Hi,

Dmitry Artamonow schrieb:
> Fix it by adding noatime to rootfs mount options in fstab.

+1 from me

Greetings

Florian

-- 
The dream of yesterday                  Florian Boor
is the hope of today                    Tel: +49 271-771091-15
and the reality of tomorrow.            Fax: +49 271-771091-19
[Robert Hutchings Goddard, 1904]        florian.boor@kernelconcepts.de
                                        http://www.kernelconcepts.de/en



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

* Re: [PATCH/RFC] base-files: add noatime to rootfs mount options
  2009-03-16  0:08 ` Stanislav Brabec
@ 2009-03-29 10:39   ` Dmitry Artamonow
  0 siblings, 0 replies; 10+ messages in thread
From: Dmitry Artamonow @ 2009-03-29 10:39 UTC (permalink / raw)
  To: openembedded-devel

On 01:08 Mon 16 Mar     , Stanislav Brabec wrote:
> Dmitry Artamonow wrote in Sun 03/15 2009 at 23:47 +0300:
> > In most machines' fstabs rootfs mounted with 'defaults' option.
> > This implies that atime logging is on - i.e. on every read from
> > filesystem kernel writes atime stamp to files' metadata.
> > Here in embedded world, where rootfs is usually stored on some
> > kind of flash (internal NAND/NOR, or external SD/MMC/CF card)
> > it is a real problem, because higher number of writes causes
> > flash wearing, higher system load and higher chance of filesystem
> > corruption.
> > 
> > Fix it by adding noatime to rootfs mount options in fstab.

If there's no objections, can somebody apply this?
(hint: I don't have a commit rights)

I can send updated patch if needed - though changing 'packages' to
'recipes' with sed shouldn't be too hard:
 sed -i 's:a/packages/:a/recipes/:g' *.patch
 sed -i 's:b/packages/:b/recipes/:g' *.patch

> 
> Good idea. On Zaurus it even prevents regular hard disc waking up while
> executing scripts and significantly increases speed of writing of large
> amount of small files.
> 
> Patching of udev mount.sh script would be useful as well.

Yes. I'll try too look into this.

-- 
Best regards,
Dmitry "MAD" Artamonow




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

* Re: [PATCH/RFC] base-files: add noatime to rootfs mount options
  2009-03-15 20:47 [PATCH/RFC] base-files: add noatime to rootfs mount options Dmitry Artamonow
  2009-03-16  0:08 ` Stanislav Brabec
  2009-03-16 15:43 ` Florian Boor
@ 2009-03-29 11:48 ` Koen Kooi
  2009-04-04  9:09   ` Dmitry Artamonow
  2 siblings, 1 reply; 10+ messages in thread
From: Koen Kooi @ 2009-03-29 11:48 UTC (permalink / raw)
  To: openembedded-devel

On 15-03-09 21:47, Dmitry Artamonow wrote:
> In most machines' fstabs rootfs mounted with 'defaults' option.
> This implies that atime logging is on - i.e. on every read from
> filesystem kernel writes atime stamp to files' metadata.
> Here in embedded world, where rootfs is usually stored on some
> kind of flash (internal NAND/NOR, or external SD/MMC/CF card)
> it is a real problem, because higher number of writes causes
> flash wearing, higher system load and higher chance of filesystem
> corruption.
>
> Fix it by adding noatime to rootfs mount options in fstab.

Isn't 'relatime' a better option?

regards,

Koen




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

* Re: [PATCH/RFC] base-files: add noatime to rootfs mount options
  2009-03-29 11:48 ` Koen Kooi
@ 2009-04-04  9:09   ` Dmitry Artamonow
  2009-04-04 17:53     ` Otavio Salvador
  0 siblings, 1 reply; 10+ messages in thread
From: Dmitry Artamonow @ 2009-04-04  9:09 UTC (permalink / raw)
  To: openembedded-devel

On 13:48 Sun 29 Mar     , Koen Kooi wrote:
> On 15-03-09 21:47, Dmitry Artamonow wrote:
>> In most machines' fstabs rootfs mounted with 'defaults' option.
>> This implies that atime logging is on - i.e. on every read from
>> filesystem kernel writes atime stamp to files' metadata.
>> Here in embedded world, where rootfs is usually stored on some
>> kind of flash (internal NAND/NOR, or external SD/MMC/CF card)
>> it is a real problem, because higher number of writes causes
>> flash wearing, higher system load and higher chance of filesystem
>> corruption.
>>
>> Fix it by adding noatime to rootfs mount options in fstab.
>
> Isn't 'relatime' a better option?

Maybe yes, but we need more care in this case, because relatime has
been introduced in 2.6.20 [1], and there's still can be machines using
older kernels (judging solely by looking at the recipes in recipes/linux).
I fear that we may break booting on these machines by passing
unsupported option to mount.

[1] http://kernelnewbies.org/Linux_2_6_20#head-6804816ab4f07548635032afbedd3e1f4eb3d1d7

> regards,
>
> Koen
>

-- 
Best regards,
Dmitry "MAD" Artamonow




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

* Re: [PATCH/RFC] base-files: add noatime to rootfs mount options
  2009-04-04  9:09   ` Dmitry Artamonow
@ 2009-04-04 17:53     ` Otavio Salvador
  2009-04-15 10:21       ` Dmitry Artamonow
  0 siblings, 1 reply; 10+ messages in thread
From: Otavio Salvador @ 2009-04-04 17:53 UTC (permalink / raw)
  To: openembedded-devel; +Cc: openembedded-devel

On Sat, Apr 4, 2009 at 6:09 AM, Dmitry Artamonow <mad_soft@inbox.ru> wrote:
> On 13:48 Sun 29 Mar     , Koen Kooi wrote:
>> On 15-03-09 21:47, Dmitry Artamonow wrote:
[...]
>>> Fix it by adding noatime to rootfs mount options in fstab.
>>
>> Isn't 'relatime' a better option?
>
> Maybe yes, but we need more care in this case, because relatime has
> been introduced in 2.6.20 [1], and there's still can be machines using
> older kernels (judging solely by looking at the recipes in recipes/linux).
> I fear that we may break booting on these machines by passing
> unsupported option to mount.
>
> [1] http://kernelnewbies.org/Linux_2_6_20#head-6804816ab4f07548635032afbedd3e1f4eb3d1d7

I belive that if those machines still uses old kernels they have the
responsability to deal with those things; besides that it is very
common for machines to provide custom fstab files so it won't
hurt to put a specific one to workaround it if required.

Regards,

-- 
Otavio Salvador                  O.S. Systems
E-mail: otavio@ossystems.com.br  http://www.ossystems.com.br
Mobile: +55 53 9981-7854         http://projetos.ossystems.com.br



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

* Re: [PATCH/RFC] base-files: add noatime to rootfs mount options
  2009-04-04 17:53     ` Otavio Salvador
@ 2009-04-15 10:21       ` Dmitry Artamonow
  2009-04-15 10:27         ` [PATCH] base-files: add relatime " Dmitry Artamonow
  0 siblings, 1 reply; 10+ messages in thread
From: Dmitry Artamonow @ 2009-04-15 10:21 UTC (permalink / raw)
  To: openembedded-devel

On 14:53 Sat 04 Apr     , Otavio Salvador wrote:
> On Sat, Apr 4, 2009 at 6:09 AM, Dmitry Artamonow <mad_soft@inbox.ru> wrote:
> > On 13:48 Sun 29 Mar     , Koen Kooi wrote:
> >> On 15-03-09 21:47, Dmitry Artamonow wrote:
> [...]
> >>> Fix it by adding noatime to rootfs mount options in fstab.
> >>
> >> Isn't 'relatime' a better option?
> >
> > Maybe yes, but we need more care in this case, because relatime has
> > been introduced in 2.6.20 [1], and there's still can be machines using
> > older kernels (judging solely by looking at the recipes in recipes/linux).
> > I fear that we may break booting on these machines by passing
> > unsupported option to mount.
> >
> > [1] http://kernelnewbies.org/Linux_2_6_20#head-6804816ab4f07548635032afbedd3e1f4eb3d1d7
> 
> I belive that if those machines still uses old kernels they have the
> responsability to deal with those things; besides that it is very
> common for machines to provide custom fstab files so it won't
> hurt to put a specific one to workaround it if required.

In case with default fstab - yes, probably you are right, since it can
be easily overrided by custom version for specific machine/distro.
But we need to carefully check which of the pre-existing
machine-specific fstabs can be modified to use relatime.

I've made some investigations by running this script:
 ls recipes/base-files/base-files/*/fstab | cut -d/ -f4 | \
 while read MACHINE  ; do echo $MACHINE; \
 bitbake -c setscene -n -vv virtual/kernel | grep setscene ; done
and then reformatting output by hand. Here's the results
(checked with Angstrom distro):

akita		linux-rp_2.6.26.bb
amsdelta	linux-amsdelta-2.6_2.6.16-omap2.bb
armzone-qt2410
c7x0		linux-rp_2.6.26.bb
efika		linux-rt_2.6.25.bb
ep93xx		linux_2.6.29+2.6.30-rc1.bb
epia		linux-epia_2.6.19.2.bb
gumstix-connex	gumstix-kernel_2.6.21.bb
gumstix-verdex	gumstix-kernel_2.6.21.bb
h2200		linux-handhelds-2.6_2.6.21-hh20.bb
h3600		linux-handhelds-2.6_2.6.21-hh20.bb
h3900		linux-handhelds-2.6_2.6.21-hh20.bb
h5000		linux-handhelds-2.6_2.6.21-hh20.bb
h6300		linux-h6300-omap1_2.6.16.16.bb
htcuniversal	linux-handhelds-2.6_2.6.21-hh20.bb
hx4700		linux-handhelds-2.6_2.6.21-hh20.bb
jornada56x	linux-handhelds-2.6_2.6.21-hh20.bb
jornada6xx	linux-jlime-jornada6xx_2.6.25.bb
jornada7xx	linux-jlime-jornada7xx_2.6.19rc6.bb
mtx-1		linux-mtx-1_2.4.27.bb
mtx-2		linux-mtx-2_2.4.27.bb
mx31moboard	linux_2.6.22.6.bb
netbook-pro	netbook-pro-kernel_2.6.17.bb
netvista	linux_2.6.23.bb
nokia770	linux-nokia800_2.6.18-osso40.bb
om-3d7k		linux-openmoko-devel_git.bb
om-gta01	linux-openmoko-2.6.24_git.bb
om-gta02	linux-openmoko-2.6.28_git.bb
omap5912osk	linux-omap_2.6.28.bb
openmn
openprotium
poodle		linux-rp_2.6.24.bb
simpad		linux_2.6.24.bb
slugos
spitz		linux-rp_2.6.26.bb
tosa		linux_2.6.29.bb
wrt54		linux-wrt_2.4.30.bb
xxs1500		linux-xxs1500_2.4.21.bb

As you can see there's still a lot of machines with 2.6.19, 2.6.16 and
even 2.4 kernels.

Anyway, I've redone patch by leaving out fstab for machines with
kernel <2.6.20 and also non-machine-fstabs (probably distro-specific -
openmn, openprotium, slugos, armzone-qt2410).

I'll send current version in following mail.

-- 
Best regards,
Dmitry "MAD" Artamonow




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

* [PATCH] base-files: add relatime to rootfs mount options
  2009-04-15 10:21       ` Dmitry Artamonow
@ 2009-04-15 10:27         ` Dmitry Artamonow
  2009-04-15 11:02           ` Koen Kooi
  0 siblings, 1 reply; 10+ messages in thread
From: Dmitry Artamonow @ 2009-04-15 10:27 UTC (permalink / raw)
  To: openembedded-devel

In most machines' fstabs rootfs mounted with 'defaults' option.
This implies that atime logging is on - i.e. on every read from
filesystem kernel writes atime stamp to files' metadata.
Here in embedded world, where rootfs is usually stored on some
kind of flash (internal NAND/NOR, or external SD/MMC/CF card)
it is a real problem, because higher number of writes causes
flash wearing, higher system load and higher chance of filesystem
corruption.

Fix it by adding relatime to rootfs mount options.

NOTE: since relatime option only available on 2.6.20+ kernels,
following fstabs weren't touched, as these machines seem to use
older kernels (kernel versions checked against Angstrom distro, other
distros may vary):
 amsdelta	linux-amsdelta-2.6_2.6.16-omap2.bb
 epia		linux-epia_2.6.19.2.bb
 h6300		linux-h6300-omap1_2.6.16.16.bb
 jornada7xx	linux-jlime-jornada7xx_2.6.19rc6.bb
 mtx-1		linux-mtx-1_2.4.27.bb
 mtx-2		linux-mtx-2_2.4.27.bb
 netbook-pro	netbook-pro-kernel_2.6.17.bb
 nokia770	linux-nokia800_2.6.18-osso40.bb
 wrt54		linux-wrt_2.4.30.bb
 xxs1500	linux-xxs1500_2.4.21.bb
Users of these machines may want to use noatime flag instead.
Also expect breakage if your machine uses old kernel and default fstab.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
---
 recipes/base-files/base-files/akita/fstab          |    2 +-
 recipes/base-files/base-files/c7x0/fstab           |    2 +-
 recipes/base-files/base-files/efika/fstab          |    2 +-
 recipes/base-files/base-files/ep93xx/fstab         |    2 +-
 recipes/base-files/base-files/fstab                |    2 +-
 recipes/base-files/base-files/gumstix-connex/fstab |    2 +-
 recipes/base-files/base-files/gumstix-verdex/fstab |    2 +-
 recipes/base-files/base-files/h2200/fstab          |    2 +-
 recipes/base-files/base-files/h3600/fstab          |    2 +-
 recipes/base-files/base-files/h3900/fstab          |    2 +-
 recipes/base-files/base-files/h5000/fstab          |    2 +-
 recipes/base-files/base-files/htcuniversal/fstab   |    2 +-
 recipes/base-files/base-files/hx4700/fstab         |    2 +-
 recipes/base-files/base-files/mx31moboard/fstab    |    2 +-
 recipes/base-files/base-files/om-3d7k/fstab        |    2 +-
 recipes/base-files/base-files/omap5912osk/fstab    |    2 +-
 recipes/base-files/base-files/openprotium/fstab    |    2 +-
 recipes/base-files/base-files/poodle/fstab         |    2 +-
 recipes/base-files/base-files/simpad/fstab         |    2 +-
 recipes/base-files/base-files/slugos/fstab         |    2 +-
 recipes/base-files/base-files/spitz/fstab          |    2 +-
 recipes/base-files/base-files/tosa/fstab           |    2 +-
 recipes/base-files/base-files_3.0.14.bb            |    2 +-
 23 files changed, 23 insertions(+), 23 deletions(-)

diff --git a/recipes/base-files/base-files/akita/fstab b/recipes/base-files/base-files/akita/fstab
index 3b488cf..bf8075e 100644
--- a/recipes/base-files/base-files/akita/fstab
+++ b/recipes/base-files/base-files/akita/fstab
@@ -1,4 +1,4 @@
-rootfs      /       auto    defaults        1  1
+rootfs      /       auto    defaults,relatime        1  1
 #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
 proc		/proc	proc	defaults	0  0
 /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
diff --git a/recipes/base-files/base-files/c7x0/fstab b/recipes/base-files/base-files/c7x0/fstab
index ea38eab..a4b2873 100644
--- a/recipes/base-files/base-files/c7x0/fstab
+++ b/recipes/base-files/base-files/c7x0/fstab
@@ -1,4 +1,4 @@
-rootfs      /       auto    defaults        1  1
+rootfs      /       auto    defaults,relatime        1  1
 #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
 proc		/proc	proc	defaults	0  0
 /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
diff --git a/recipes/base-files/base-files/efika/fstab b/recipes/base-files/base-files/efika/fstab
index c7bf023..45bbd09 100644
--- a/recipes/base-files/base-files/efika/fstab
+++ b/recipes/base-files/base-files/efika/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1 1
+rootfs               /                    auto       defaults,relatime              1 1
 proc                 /proc                proc       defaults              0 0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
 usbfs                /proc/bus/usb        usbfs      auto                0 0
diff --git a/recipes/base-files/base-files/ep93xx/fstab b/recipes/base-files/base-files/ep93xx/fstab
index c7bf023..45bbd09 100644
--- a/recipes/base-files/base-files/ep93xx/fstab
+++ b/recipes/base-files/base-files/ep93xx/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1 1
+rootfs               /                    auto       defaults,relatime              1 1
 proc                 /proc                proc       defaults              0 0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
 usbfs                /proc/bus/usb        usbfs      auto                0 0
diff --git a/recipes/base-files/base-files/fstab b/recipes/base-files/base-files/fstab
index 628a9e9..f941f6d 100644
--- a/recipes/base-files/base-files/fstab
+++ b/recipes/base-files/base-files/fstab
@@ -1,6 +1,6 @@
 # stock fstab - you probably want to override this with a machine specific one
 
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,relatime      1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs                /proc/bus/usb        usbfs      defaults              0  0
diff --git a/recipes/base-files/base-files/gumstix-connex/fstab b/recipes/base-files/base-files/gumstix-connex/fstab
index 418f997..689cd28 100644
--- a/recipes/base-files/base-files/gumstix-connex/fstab
+++ b/recipes/base-files/base-files/gumstix-connex/fstab
@@ -1,6 +1,6 @@
 # fstab for gumstix-connex
 
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,relatime              1  1
 proc                 /proc                proc       defaults              0  0
 sysfs                /sys                 sysfs      defaults              0  0
 tmpfs                /dev                 tmpfs      defaults              0  0
diff --git a/recipes/base-files/base-files/gumstix-verdex/fstab b/recipes/base-files/base-files/gumstix-verdex/fstab
index 9b5f00c..9c0aed7 100644
--- a/recipes/base-files/base-files/gumstix-verdex/fstab
+++ b/recipes/base-files/base-files/gumstix-verdex/fstab
@@ -1,6 +1,6 @@
 # fstab for gumstix-verdex
 
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,relatime              1  1
 proc                 /proc                proc       defaults              0  0
 sysfs                /sys                 sysfs      defaults              0  0
 tmpfs                /dev                 tmpfs      defaults              0  0
diff --git a/recipes/base-files/base-files/h2200/fstab b/recipes/base-files/base-files/h2200/fstab
index 5063f84..2b97e45 100644
--- a/recipes/base-files/base-files/h2200/fstab
+++ b/recipes/base-files/base-files/h2200/fstab
@@ -1,4 +1,4 @@
-rootfs		/		auto	defaults	1  1		
+rootfs		/		auto	defaults,relatime	1  1		
 proc            /proc		proc    defaults        0  0
 sys             /sys		sysfs	defaults        0  0
 tmpfs		/var/volatile	tmpfs	mode=0755	0  0
diff --git a/recipes/base-files/base-files/h3600/fstab b/recipes/base-files/base-files/h3600/fstab
index 9ec7df1..181faad 100644
--- a/recipes/base-files/base-files/h3600/fstab
+++ b/recipes/base-files/base-files/h3600/fstab
@@ -1,4 +1,4 @@
-rootfs		/ 		auto	defaults	1  1 
+rootfs		/ 		auto	defaults,relatime	1  1 
 proc            /proc   proc    defaults        0  0
 /dev/hda1	/media/cf	auto	defaults,noauto,noatime,user,exec,suid	0  0
 /dev/mmc/part1	/media/card	auto	defaults,noauto,noatime,user,exec,suid	0  0
diff --git a/recipes/base-files/base-files/h3900/fstab b/recipes/base-files/base-files/h3900/fstab
index 9ec7df1..181faad 100644
--- a/recipes/base-files/base-files/h3900/fstab
+++ b/recipes/base-files/base-files/h3900/fstab
@@ -1,4 +1,4 @@
-rootfs		/ 		auto	defaults	1  1 
+rootfs		/ 		auto	defaults,relatime	1  1 
 proc            /proc   proc    defaults        0  0
 /dev/hda1	/media/cf	auto	defaults,noauto,noatime,user,exec,suid	0  0
 /dev/mmc/part1	/media/card	auto	defaults,noauto,noatime,user,exec,suid	0  0
diff --git a/recipes/base-files/base-files/h5000/fstab b/recipes/base-files/base-files/h5000/fstab
index ad05f3b..2b28120 100644
--- a/recipes/base-files/base-files/h5000/fstab
+++ b/recipes/base-files/base-files/h5000/fstab
@@ -1,4 +1,4 @@
-rootfs		/ 	auto	defaults	1  1 
+rootfs		/ 	auto	defaults,relatime	1  1 
 #breaks h51xx
 /dev/mtdblock2 /home   jffs2   defaults        1  1
 proc            /proc   proc    defaults        0  0
diff --git a/recipes/base-files/base-files/htcuniversal/fstab b/recipes/base-files/base-files/htcuniversal/fstab
index b4aa259..c2a5a86 100644
--- a/recipes/base-files/base-files/htcuniversal/fstab
+++ b/recipes/base-files/base-files/htcuniversal/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,relatime              1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs               /proc/bus/usb         usbfs      defaults              0  0
diff --git a/recipes/base-files/base-files/hx4700/fstab b/recipes/base-files/base-files/hx4700/fstab
index 49b5c96..c37827d 100644
--- a/recipes/base-files/base-files/hx4700/fstab
+++ b/recipes/base-files/base-files/hx4700/fstab
@@ -1,4 +1,4 @@
-rootfs	 	/		auto	defaults		1  1		
+rootfs	 	/		auto	defaults,relatime		1  1		
 /dev/mtdblock3 	/home   jffs2   defaults        1  1
 
 proc            /proc		proc    defaults        0  0
diff --git a/recipes/base-files/base-files/mx31moboard/fstab b/recipes/base-files/base-files/mx31moboard/fstab
index 1ec0fd5..5271a0e 100644
--- a/recipes/base-files/base-files/mx31moboard/fstab
+++ b/recipes/base-files/base-files/mx31moboard/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,relatime              1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs                /proc/bus/usb        usbfs      defaults              0  0
diff --git a/recipes/base-files/base-files/om-3d7k/fstab b/recipes/base-files/base-files/om-3d7k/fstab
index 48aefde..825cac4 100644
--- a/recipes/base-files/base-files/om-3d7k/fstab
+++ b/recipes/base-files/base-files/om-3d7k/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,relatime              1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs                /proc/bus/usb        usbfs      defaults              0  0
diff --git a/recipes/base-files/base-files/omap5912osk/fstab b/recipes/base-files/base-files/omap5912osk/fstab
index 5e881f7..cb1e388 100644
--- a/recipes/base-files/base-files/omap5912osk/fstab
+++ b/recipes/base-files/base-files/omap5912osk/fstab
@@ -1,6 +1,6 @@
 # fstab for omap5912osk
 
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,relatime              1  1
 proc                 /proc                proc       defaults              0  0
 sysfs                /sys                 sysfs      defaults              0  0
 tmpfs                /dev                 tmpfs      defaults              0  0
diff --git a/recipes/base-files/base-files/openprotium/fstab b/recipes/base-files/base-files/openprotium/fstab
index 96b0e2a..a695354 100644
--- a/recipes/base-files/base-files/openprotium/fstab
+++ b/recipes/base-files/base-files/openprotium/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1  1
+rootfs               /                    auto       defaults,relatime              1  1
 proc                 /proc                proc       defaults              0  0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
 usbfs                /proc/bus/usb        usbfs      defaults              0  0
diff --git a/recipes/base-files/base-files/poodle/fstab b/recipes/base-files/base-files/poodle/fstab
index 733b13f..aa88081 100644
--- a/recipes/base-files/base-files/poodle/fstab
+++ b/recipes/base-files/base-files/poodle/fstab
@@ -1,4 +1,4 @@
-rootfs      /       auto    defaults        1  1
+rootfs      /       auto    defaults,relatime        1  1
 #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
 proc		/proc	proc	defaults	0  0
 /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
diff --git a/recipes/base-files/base-files/simpad/fstab b/recipes/base-files/base-files/simpad/fstab
index 3e57ae3..8df3054 100644
--- a/recipes/base-files/base-files/simpad/fstab
+++ b/recipes/base-files/base-files/simpad/fstab
@@ -1,4 +1,4 @@
-rootfs               /                    auto       defaults              1 1
+rootfs               /                    auto       defaults,relatime              1 1
 proc                 /proc                proc       defaults              0 0
 devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
 tmpfs                /dev/shm             tmpfs      mode=0777             0  0
diff --git a/recipes/base-files/base-files/slugos/fstab b/recipes/base-files/base-files/slugos/fstab
index e00f057..986c172 100644
--- a/recipes/base-files/base-files/slugos/fstab
+++ b/recipes/base-files/base-files/slugos/fstab
@@ -1,4 +1,4 @@
-rootfs		/		jffs2	defaults	1  1
+rootfs		/		jffs2	defaults,relatime	1  1
 sysfs		/sys		sysfs	defaults	0  0
 proc		/proc		proc	defaults	0  0
 tmpfs		/var/volatile	tmpfs	mode=0755	0  0
diff --git a/recipes/base-files/base-files/spitz/fstab b/recipes/base-files/base-files/spitz/fstab
index 324fb78..e5190e3 100644
--- a/recipes/base-files/base-files/spitz/fstab
+++ b/recipes/base-files/base-files/spitz/fstab
@@ -1,7 +1,7 @@
 # don't mount /dev/mtdblock2 since Spitz uses pivot_root
 # or 2.6 directly boots from the hdd
 # /dev/mtdblock2     /            jffs2   rw,noatime              1  1
-rootfs             /            auto    defaults                1  1
+rootfs             /            auto    defaults,relatime                1  1
 proc               /proc        proc    defaults                0  0
 # we can use a normal var filesystem with a microdrive
 # tmpfs              /var/volatiles         tmpfs   defaults                0  0
diff --git a/recipes/base-files/base-files/tosa/fstab b/recipes/base-files/base-files/tosa/fstab
index f256c74..2f1db3a 100644
--- a/recipes/base-files/base-files/tosa/fstab
+++ b/recipes/base-files/base-files/tosa/fstab
@@ -1,4 +1,4 @@
-rootfs      /       auto    defaults        1  1
+rootfs      /       auto    defaults,relatime        1  1
 #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
 proc		/proc	proc	defaults	0  0
 /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
diff --git a/recipes/base-files/base-files_3.0.14.bb b/recipes/base-files/base-files_3.0.14.bb
index 460fd63..0d012c7 100644
--- a/recipes/base-files/base-files_3.0.14.bb
+++ b/recipes/base-files/base-files_3.0.14.bb
@@ -1,7 +1,7 @@
 DESCRIPTION = "Miscellaneous files for the base system."
 SECTION = "base"
 PRIORITY = "required"
-PR = "r85"
+PR = "r86"
 LICENSE = "GPL"
 
 SRC_URI = " \
-- 
1.6.0.6




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

* Re: [PATCH] base-files: add relatime to rootfs mount options
  2009-04-15 10:27         ` [PATCH] base-files: add relatime " Dmitry Artamonow
@ 2009-04-15 11:02           ` Koen Kooi
  0 siblings, 0 replies; 10+ messages in thread
From: Koen Kooi @ 2009-04-15 11:02 UTC (permalink / raw)
  To: openembedded-devel

On 15-04-09 12:27, Dmitry Artamonow wrote:
> In most machines' fstabs rootfs mounted with 'defaults' option.
> This implies that atime logging is on - i.e. on every read from
> filesystem kernel writes atime stamp to files' metadata.
> Here in embedded world, where rootfs is usually stored on some
> kind of flash (internal NAND/NOR, or external SD/MMC/CF card)
> it is a real problem, because higher number of writes causes
> flash wearing, higher system load and higher chance of filesystem
> corruption.
>
> Fix it by adding relatime to rootfs mount options.

Looks good to me. When there isn't much fallout from this change, I'd 
like to have this in stable/2009 as well.

regards,

Koen

>
> NOTE: since relatime option only available on 2.6.20+ kernels,
> following fstabs weren't touched, as these machines seem to use
> older kernels (kernel versions checked against Angstrom distro, other
> distros may vary):
>   amsdelta	linux-amsdelta-2.6_2.6.16-omap2.bb
>   epia		linux-epia_2.6.19.2.bb
>   h6300		linux-h6300-omap1_2.6.16.16.bb
>   jornada7xx	linux-jlime-jornada7xx_2.6.19rc6.bb
>   mtx-1		linux-mtx-1_2.4.27.bb
>   mtx-2		linux-mtx-2_2.4.27.bb
>   netbook-pro	netbook-pro-kernel_2.6.17.bb
>   nokia770	linux-nokia800_2.6.18-osso40.bb
>   wrt54		linux-wrt_2.4.30.bb
>   xxs1500	linux-xxs1500_2.4.21.bb
> Users of these machines may want to use noatime flag instead.
> Also expect breakage if your machine uses old kernel and default fstab.
>
> Signed-off-by: Dmitry Artamonow<mad_soft@inbox.ru>
> ---
>   recipes/base-files/base-files/akita/fstab          |    2 +-
>   recipes/base-files/base-files/c7x0/fstab           |    2 +-
>   recipes/base-files/base-files/efika/fstab          |    2 +-
>   recipes/base-files/base-files/ep93xx/fstab         |    2 +-
>   recipes/base-files/base-files/fstab                |    2 +-
>   recipes/base-files/base-files/gumstix-connex/fstab |    2 +-
>   recipes/base-files/base-files/gumstix-verdex/fstab |    2 +-
>   recipes/base-files/base-files/h2200/fstab          |    2 +-
>   recipes/base-files/base-files/h3600/fstab          |    2 +-
>   recipes/base-files/base-files/h3900/fstab          |    2 +-
>   recipes/base-files/base-files/h5000/fstab          |    2 +-
>   recipes/base-files/base-files/htcuniversal/fstab   |    2 +-
>   recipes/base-files/base-files/hx4700/fstab         |    2 +-
>   recipes/base-files/base-files/mx31moboard/fstab    |    2 +-
>   recipes/base-files/base-files/om-3d7k/fstab        |    2 +-
>   recipes/base-files/base-files/omap5912osk/fstab    |    2 +-
>   recipes/base-files/base-files/openprotium/fstab    |    2 +-
>   recipes/base-files/base-files/poodle/fstab         |    2 +-
>   recipes/base-files/base-files/simpad/fstab         |    2 +-
>   recipes/base-files/base-files/slugos/fstab         |    2 +-
>   recipes/base-files/base-files/spitz/fstab          |    2 +-
>   recipes/base-files/base-files/tosa/fstab           |    2 +-
>   recipes/base-files/base-files_3.0.14.bb            |    2 +-
>   23 files changed, 23 insertions(+), 23 deletions(-)
>
> diff --git a/recipes/base-files/base-files/akita/fstab b/recipes/base-files/base-files/akita/fstab
> index 3b488cf..bf8075e 100644
> --- a/recipes/base-files/base-files/akita/fstab
> +++ b/recipes/base-files/base-files/akita/fstab
> @@ -1,4 +1,4 @@
> -rootfs      /       auto    defaults        1  1
> +rootfs      /       auto    defaults,relatime        1  1
>   #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
>   proc		/proc	proc	defaults	0  0
>   /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
> diff --git a/recipes/base-files/base-files/c7x0/fstab b/recipes/base-files/base-files/c7x0/fstab
> index ea38eab..a4b2873 100644
> --- a/recipes/base-files/base-files/c7x0/fstab
> +++ b/recipes/base-files/base-files/c7x0/fstab
> @@ -1,4 +1,4 @@
> -rootfs      /       auto    defaults        1  1
> +rootfs      /       auto    defaults,relatime        1  1
>   #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
>   proc		/proc	proc	defaults	0  0
>   /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
> diff --git a/recipes/base-files/base-files/efika/fstab b/recipes/base-files/base-files/efika/fstab
> index c7bf023..45bbd09 100644
> --- a/recipes/base-files/base-files/efika/fstab
> +++ b/recipes/base-files/base-files/efika/fstab
> @@ -1,4 +1,4 @@
> -rootfs               /                    auto       defaults              1 1
> +rootfs               /                    auto       defaults,relatime              1 1
>   proc                 /proc                proc       defaults              0 0
>   devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
>   usbfs                /proc/bus/usb        usbfs      auto                0 0
> diff --git a/recipes/base-files/base-files/ep93xx/fstab b/recipes/base-files/base-files/ep93xx/fstab
> index c7bf023..45bbd09 100644
> --- a/recipes/base-files/base-files/ep93xx/fstab
> +++ b/recipes/base-files/base-files/ep93xx/fstab
> @@ -1,4 +1,4 @@
> -rootfs               /                    auto       defaults              1 1
> +rootfs               /                    auto       defaults,relatime              1 1
>   proc                 /proc                proc       defaults              0 0
>   devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
>   usbfs                /proc/bus/usb        usbfs      auto                0 0
> diff --git a/recipes/base-files/base-files/fstab b/recipes/base-files/base-files/fstab
> index 628a9e9..f941f6d 100644
> --- a/recipes/base-files/base-files/fstab
> +++ b/recipes/base-files/base-files/fstab
> @@ -1,6 +1,6 @@
>   # stock fstab - you probably want to override this with a machine specific one
>
> -rootfs               /                    auto       defaults              1  1
> +rootfs               /                    auto       defaults,relatime      1  1
>   proc                 /proc                proc       defaults              0  0
>   devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
>   usbfs                /proc/bus/usb        usbfs      defaults              0  0
> diff --git a/recipes/base-files/base-files/gumstix-connex/fstab b/recipes/base-files/base-files/gumstix-connex/fstab
> index 418f997..689cd28 100644
> --- a/recipes/base-files/base-files/gumstix-connex/fstab
> +++ b/recipes/base-files/base-files/gumstix-connex/fstab
> @@ -1,6 +1,6 @@
>   # fstab for gumstix-connex
>
> -rootfs               /                    auto       defaults              1  1
> +rootfs               /                    auto       defaults,relatime              1  1
>   proc                 /proc                proc       defaults              0  0
>   sysfs                /sys                 sysfs      defaults              0  0
>   tmpfs                /dev                 tmpfs      defaults              0  0
> diff --git a/recipes/base-files/base-files/gumstix-verdex/fstab b/recipes/base-files/base-files/gumstix-verdex/fstab
> index 9b5f00c..9c0aed7 100644
> --- a/recipes/base-files/base-files/gumstix-verdex/fstab
> +++ b/recipes/base-files/base-files/gumstix-verdex/fstab
> @@ -1,6 +1,6 @@
>   # fstab for gumstix-verdex
>
> -rootfs               /                    auto       defaults              1  1
> +rootfs               /                    auto       defaults,relatime              1  1
>   proc                 /proc                proc       defaults              0  0
>   sysfs                /sys                 sysfs      defaults              0  0
>   tmpfs                /dev                 tmpfs      defaults              0  0
> diff --git a/recipes/base-files/base-files/h2200/fstab b/recipes/base-files/base-files/h2200/fstab
> index 5063f84..2b97e45 100644
> --- a/recipes/base-files/base-files/h2200/fstab
> +++ b/recipes/base-files/base-files/h2200/fstab
> @@ -1,4 +1,4 @@
> -rootfs		/		auto	defaults	1  1		
> +rootfs		/		auto	defaults,relatime	1  1		
>   proc            /proc		proc    defaults        0  0
>   sys             /sys		sysfs	defaults        0  0
>   tmpfs		/var/volatile	tmpfs	mode=0755	0  0
> diff --git a/recipes/base-files/base-files/h3600/fstab b/recipes/base-files/base-files/h3600/fstab
> index 9ec7df1..181faad 100644
> --- a/recipes/base-files/base-files/h3600/fstab
> +++ b/recipes/base-files/base-files/h3600/fstab
> @@ -1,4 +1,4 @@
> -rootfs		/ 		auto	defaults	1  1
> +rootfs		/ 		auto	defaults,relatime	1  1
>   proc            /proc   proc    defaults        0  0
>   /dev/hda1	/media/cf	auto	defaults,noauto,noatime,user,exec,suid	0  0
>   /dev/mmc/part1	/media/card	auto	defaults,noauto,noatime,user,exec,suid	0  0
> diff --git a/recipes/base-files/base-files/h3900/fstab b/recipes/base-files/base-files/h3900/fstab
> index 9ec7df1..181faad 100644
> --- a/recipes/base-files/base-files/h3900/fstab
> +++ b/recipes/base-files/base-files/h3900/fstab
> @@ -1,4 +1,4 @@
> -rootfs		/ 		auto	defaults	1  1
> +rootfs		/ 		auto	defaults,relatime	1  1
>   proc            /proc   proc    defaults        0  0
>   /dev/hda1	/media/cf	auto	defaults,noauto,noatime,user,exec,suid	0  0
>   /dev/mmc/part1	/media/card	auto	defaults,noauto,noatime,user,exec,suid	0  0
> diff --git a/recipes/base-files/base-files/h5000/fstab b/recipes/base-files/base-files/h5000/fstab
> index ad05f3b..2b28120 100644
> --- a/recipes/base-files/base-files/h5000/fstab
> +++ b/recipes/base-files/base-files/h5000/fstab
> @@ -1,4 +1,4 @@
> -rootfs		/ 	auto	defaults	1  1
> +rootfs		/ 	auto	defaults,relatime	1  1
>   #breaks h51xx
>   /dev/mtdblock2 /home   jffs2   defaults        1  1
>   proc            /proc   proc    defaults        0  0
> diff --git a/recipes/base-files/base-files/htcuniversal/fstab b/recipes/base-files/base-files/htcuniversal/fstab
> index b4aa259..c2a5a86 100644
> --- a/recipes/base-files/base-files/htcuniversal/fstab
> +++ b/recipes/base-files/base-files/htcuniversal/fstab
> @@ -1,4 +1,4 @@
> -rootfs               /                    auto       defaults              1  1
> +rootfs               /                    auto       defaults,relatime              1  1
>   proc                 /proc                proc       defaults              0  0
>   devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
>   usbfs               /proc/bus/usb         usbfs      defaults              0  0
> diff --git a/recipes/base-files/base-files/hx4700/fstab b/recipes/base-files/base-files/hx4700/fstab
> index 49b5c96..c37827d 100644
> --- a/recipes/base-files/base-files/hx4700/fstab
> +++ b/recipes/base-files/base-files/hx4700/fstab
> @@ -1,4 +1,4 @@
> -rootfs	 	/		auto	defaults		1  1		
> +rootfs	 	/		auto	defaults,relatime		1  1		
>   /dev/mtdblock3 	/home   jffs2   defaults        1  1
>
>   proc            /proc		proc    defaults        0  0
> diff --git a/recipes/base-files/base-files/mx31moboard/fstab b/recipes/base-files/base-files/mx31moboard/fstab
> index 1ec0fd5..5271a0e 100644
> --- a/recipes/base-files/base-files/mx31moboard/fstab
> +++ b/recipes/base-files/base-files/mx31moboard/fstab
> @@ -1,4 +1,4 @@
> -rootfs               /                    auto       defaults              1  1
> +rootfs               /                    auto       defaults,relatime              1  1
>   proc                 /proc                proc       defaults              0  0
>   devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
>   usbfs                /proc/bus/usb        usbfs      defaults              0  0
> diff --git a/recipes/base-files/base-files/om-3d7k/fstab b/recipes/base-files/base-files/om-3d7k/fstab
> index 48aefde..825cac4 100644
> --- a/recipes/base-files/base-files/om-3d7k/fstab
> +++ b/recipes/base-files/base-files/om-3d7k/fstab
> @@ -1,4 +1,4 @@
> -rootfs               /                    auto       defaults              1  1
> +rootfs               /                    auto       defaults,relatime              1  1
>   proc                 /proc                proc       defaults              0  0
>   devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
>   usbfs                /proc/bus/usb        usbfs      defaults              0  0
> diff --git a/recipes/base-files/base-files/omap5912osk/fstab b/recipes/base-files/base-files/omap5912osk/fstab
> index 5e881f7..cb1e388 100644
> --- a/recipes/base-files/base-files/omap5912osk/fstab
> +++ b/recipes/base-files/base-files/omap5912osk/fstab
> @@ -1,6 +1,6 @@
>   # fstab for omap5912osk
>
> -rootfs               /                    auto       defaults              1  1
> +rootfs               /                    auto       defaults,relatime              1  1
>   proc                 /proc                proc       defaults              0  0
>   sysfs                /sys                 sysfs      defaults              0  0
>   tmpfs                /dev                 tmpfs      defaults              0  0
> diff --git a/recipes/base-files/base-files/openprotium/fstab b/recipes/base-files/base-files/openprotium/fstab
> index 96b0e2a..a695354 100644
> --- a/recipes/base-files/base-files/openprotium/fstab
> +++ b/recipes/base-files/base-files/openprotium/fstab
> @@ -1,4 +1,4 @@
> -rootfs               /                    auto       defaults              1  1
> +rootfs               /                    auto       defaults,relatime              1  1
>   proc                 /proc                proc       defaults              0  0
>   devpts               /dev/pts             devpts     mode=0620,gid=5       0  0
>   usbfs                /proc/bus/usb        usbfs      defaults              0  0
> diff --git a/recipes/base-files/base-files/poodle/fstab b/recipes/base-files/base-files/poodle/fstab
> index 733b13f..aa88081 100644
> --- a/recipes/base-files/base-files/poodle/fstab
> +++ b/recipes/base-files/base-files/poodle/fstab
> @@ -1,4 +1,4 @@
> -rootfs      /       auto    defaults        1  1
> +rootfs      /       auto    defaults,relatime        1  1
>   #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
>   proc		/proc	proc	defaults	0  0
>   /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
> diff --git a/recipes/base-files/base-files/simpad/fstab b/recipes/base-files/base-files/simpad/fstab
> index 3e57ae3..8df3054 100644
> --- a/recipes/base-files/base-files/simpad/fstab
> +++ b/recipes/base-files/base-files/simpad/fstab
> @@ -1,4 +1,4 @@
> -rootfs               /                    auto       defaults              1 1
> +rootfs               /                    auto       defaults,relatime              1 1
>   proc                 /proc                proc       defaults              0 0
>   devpts               /dev/pts             devpts     mode=0620,gid=5       0 0
>   tmpfs                /dev/shm             tmpfs      mode=0777             0  0
> diff --git a/recipes/base-files/base-files/slugos/fstab b/recipes/base-files/base-files/slugos/fstab
> index e00f057..986c172 100644
> --- a/recipes/base-files/base-files/slugos/fstab
> +++ b/recipes/base-files/base-files/slugos/fstab
> @@ -1,4 +1,4 @@
> -rootfs		/		jffs2	defaults	1  1
> +rootfs		/		jffs2	defaults,relatime	1  1
>   sysfs		/sys		sysfs	defaults	0  0
>   proc		/proc		proc	defaults	0  0
>   tmpfs		/var/volatile	tmpfs	mode=0755	0  0
> diff --git a/recipes/base-files/base-files/spitz/fstab b/recipes/base-files/base-files/spitz/fstab
> index 324fb78..e5190e3 100644
> --- a/recipes/base-files/base-files/spitz/fstab
> +++ b/recipes/base-files/base-files/spitz/fstab
> @@ -1,7 +1,7 @@
>   # don't mount /dev/mtdblock2 since Spitz uses pivot_root
>   # or 2.6 directly boots from the hdd
>   # /dev/mtdblock2     /            jffs2   rw,noatime              1  1
> -rootfs             /            auto    defaults                1  1
> +rootfs             /            auto    defaults,relatime                1  1
>   proc               /proc        proc    defaults                0  0
>   # we can use a normal var filesystem with a microdrive
>   # tmpfs              /var/volatiles         tmpfs   defaults                0  0
> diff --git a/recipes/base-files/base-files/tosa/fstab b/recipes/base-files/base-files/tosa/fstab
> index f256c74..2f1db3a 100644
> --- a/recipes/base-files/base-files/tosa/fstab
> +++ b/recipes/base-files/base-files/tosa/fstab
> @@ -1,4 +1,4 @@
> -rootfs      /       auto    defaults        1  1
> +rootfs      /       auto    defaults,relatime        1  1
>   #/dev/mtdblock3	/home 	jffs2	defaults,noatime	1  2
>   proc		/proc	proc	defaults	0  0
>   /dev/hda1	/media/cf	auto	defaults,sync,noauto	0  0
> diff --git a/recipes/base-files/base-files_3.0.14.bb b/recipes/base-files/base-files_3.0.14.bb
> index 460fd63..0d012c7 100644
> --- a/recipes/base-files/base-files_3.0.14.bb
> +++ b/recipes/base-files/base-files_3.0.14.bb
> @@ -1,7 +1,7 @@
>   DESCRIPTION = "Miscellaneous files for the base system."
>   SECTION = "base"
>   PRIORITY = "required"
> -PR = "r85"
> +PR = "r86"
>   LICENSE = "GPL"
>
>   SRC_URI = " \





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

end of thread, other threads:[~2009-04-15 11:06 UTC | newest]

Thread overview: 10+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-15 20:47 [PATCH/RFC] base-files: add noatime to rootfs mount options Dmitry Artamonow
2009-03-16  0:08 ` Stanislav Brabec
2009-03-29 10:39   ` Dmitry Artamonow
2009-03-16 15:43 ` Florian Boor
2009-03-29 11:48 ` Koen Kooi
2009-04-04  9:09   ` Dmitry Artamonow
2009-04-04 17:53     ` Otavio Salvador
2009-04-15 10:21       ` Dmitry Artamonow
2009-04-15 10:27         ` [PATCH] base-files: add relatime " Dmitry Artamonow
2009-04-15 11:02           ` Koen Kooi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.