dd if=/dev/zero of=$LOWER_DIR2/d1/d2/d3/d4/f bs=4000 count=2 2>/dev/null
+# mount unionfs
+mount_union "" $LOWER_DIR0 $LOWER_DIR1 $LOWER_DIR2
+
+# check for chattr support after mount_union, because it may have changed
+# the underlying mounts to cramfs/squashfs.
+CHATTR=""
if havechattr $LOWER_DIR2 ; then
CHATTR=1
chattr +i $LOWER_DIR2/d1/d2/d3/d4/f
fi
-# mount unionfs
-mount_union "" $LOWER_DIR0 $LOWER_DIR1 $LOWER_DIR2
-
./progs/truncate -f $MOUNTPOINT/a 0
./progs/truncate -f $MOUNTPOINT/b 5000
dd if=/dev/zero of=$LOWER_DIR2/d1/d2/d3/d4/e bs=4000 count=2 2>/dev/null
dd if=/dev/zero of=$LOWER_DIR2/d1/d2/d3/d4/f bs=4000 count=2 2>/dev/null
-if [ ! -z "$CHATTR" ] ; then
- chattr +i $LOWER_DIR2/d1/d2/d3/d4/f
-fi
mount_union "" $LOWER_DIR0 $LOWER_DIR1=ro $LOWER_DIR2=ro
+# recheck for chattr support after mount_union, because it may have changed
+# the underlying mounts to cramfs/squashfs.
+CHATTR=""
+if havechattr $LOWER_DIR2 ; then
+ CHATTR=1
+ chattr +i $LOWER_DIR2/d1/d2/d3/d4/f
+fi
+
./progs/truncate -f $MOUNTPOINT/a 0
./progs/truncate -f $MOUNTPOINT/b 5000