Hi all! On an embedded device, we are using aufs overlaying a tmpfs and a file system on a disk. When the overlay gets full, it sometimes (but not always) happens that deleting files does not free space. Is this normal known (expected) behavior?
What can we do to avoid this? I include some technical information at the end. Best regards, Steffen - /var/log/syslog Aug 23 12:13:34 host kernel: [77130.880925] aufs au_xino_write:417:find[12379]: I/O Error, write failed (-5) Aug 23 12:13:40 host nd-cleanup[12403]: Cleaning up 218 MB shifted logs. Aug 23 12:13:40 host kernel: [77136.879899] aufs au_xino_do_write:381:find[12414]: I/O Error, write failed (4294967268) - /proc/mounts (instead of the output of mount(8)) rootfs / rootfs rw 0 0 sysfs /sys sysfs rw,nosuid,nodev,noexec,relatime 0 0 proc /proc proc rw,nosuid,nodev,noexec,relatime 0 0 udev /ro/dev devtmpfs rw,relatime,size=10240k,nr_inodes=128011,mode=755 0 0 devpts /ro/dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 tmpfs /run tmpfs rw,nosuid,noexec,relatime,size=103420k,mode=755 0 0 /dev/disk/by-uuid/bcdfba9e-fbed-4aa2-8db2-43d6f576d016 /ro ext4 ro,relatime,user_xattr,barrier=1,data=ordered 0 0 aufs-tmpfs /rw tmpfs rw,relatime 0 0 aufs / aufs rw,relatime,si=64ca10cb 0 0 tmpfs /run/lock tmpfs rw,nosuid,nodev,noexec,relatime,size=5120k 0 0 tmpfs /dev tmpfs rw,relatime,size=10240k,mode=755 0 0 tmpfs /run/shm tmpfs rw,nosuid,nodev,noexec,relatime,size=206820k 0 0 devpts /dev/pts devpts rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000 0 0 /dev/sda3 /persist ext4 rw,noatime,user_xattr,barrier=1 0 0 tmpfs /tmp tmpfs rw,nosuid,nodev,relatime,size=206820k 0 0 - /sys/module/aufs/* ==> /sys/module/aufs/initstate <== live ==> /sys/module/aufs/refcnt <== 63 ==> /sys/module/aufs/srcversion <== CD923A8FDD65AE0929495D6 ==> /sys/module/aufs/version <== 3.2-20130204 ==> /sys/module/aufs/parameters/brs <== 1 - /sys/fs/aufs/* (if you have them) ==> /sys/fs/aufs/config <== CONFIG_AUFS_FS=m CONFIG_AUFS_BRANCH_MAX_127=y CONFIG_AUFS_SBILIST=y CONFIG_AUFS_EXPORT=y CONFIG_AUFS_BR_HFSPLUS=y CONFIG_AUFS_BDEV_LOOP=y ==> /sys/fs/aufs/si_64ca10cb/br0 <== /rw=rw ==> /sys/fs/aufs/si_64ca10cb/br1 <== /ro=ro ==> /sys/fs/aufs/si_64ca10cb/xi_path <== /rw/.aufs.xino - /debug/aufs/* (if you have them) n/a - linux kernel version if your kernel is not plain, for example modified by distributor, the url where i can download its source is necessary too. root@NOMAD-BLN-test01Xstd:~# uname -v #1 SMP Debian 3.2.46-1 (Debian GNU/Linux 7.0 "Wheezy") - aufs version which was printed at loading the module or booting the system, instead of the date you downloaded. [ 3.031646] aufs: module is from the staging directory, the quality is unknown, you have been warned. [ 3.034721] aufs 3.2-20130204 - configuration (define/undefine CONFIG_AUFS_xxx) See /sys/fs/aufs/config above. - kernel configuration or /proc/config.gz (if you have it) n/a - behaviour which you think to be incorrect On a full disk, AUFS should not reach a state where only reboot recovers. - actual operation, reproducible one is better Spam log files and run "logrotate" manually. Disk will get full and logrotate will free a bit - until a certain point when this stops working. ------------------------------------------------------------------------------ Introducing Performance Central, a new site from SourceForge and AppDynamics. Performance Central is your source for news, insights, analysis and resources for efficient Application Performance Management. Visit us today! http://pubads.g.doubleclick.net/gampad/clk?id=48897511&iu=/4140/ostg.clktrk