I'm really disappointed that this bug hasn't been resolved yet. What's the status of this?
* Martin Michlmayr <[email protected]> [2009-12-04 23:27]: > Package: cryptsetup > Version: 2:1.1.0~rc2-1 > Severity: important > Tags: patch > > After installing cryptsetup on my armel machine, the initramfs grew > from 4.5 MB to 15 MB, causing an error because the ramdisk no longer > fit in flash. All modules were copied to the ramdisk! > > This is because armel (and some other arches) don't have a kernel/arch > directory, and you do: > > archcrypto="$(find "$MODULESDIR/kernel/arch" -type d -name "crypto")" > copy_modules_dir "${archcrypto##*${MODULESDIR}/}" > > In my case, copy_modules_dir is executed with an empty argument, > apparently leading to all modules being copied. > > The fix is to check if $archcrypto is empty. > > I also added some checks for the kernel/arch dir because otherwise > your find calls generate "No such file or directory" messages. > > --- cryptroot~ 2009-12-04 23:13:44.319569469 +0000 > +++ cryptroot 2009-12-04 23:13:39.679818772 +0000 > @@ -442,12 +442,14 @@ > # > # d) /lib/modules/$VERSION/kernel/drivers/crypto/$specific-$mod.ko > > - for file in $(find "$MODULESDIR/kernel/arch/" -name "$mod-*.ko"); do > - altmod="${file##*/}" > - altmod="${altmod%.ko}" > - manual_add_modules "$altmod" > - found="yes" > - done > + if [ -e "$MODULESDIR/kernel/arch/" ]; then > + for file in $(find "$MODULESDIR/kernel/arch/" -name > "$mod-*.ko"); do > + altmod="${file##*/}" > + altmod="${altmod%.ko}" > + manual_add_modules "$altmod" > + found="yes" > + done > + fi > > for file in $(find "$MODULESDIR/kernel/crypto/" -name > "${mod}_generic.ko"); do > altmod="${file##*/}" > @@ -499,8 +501,12 @@ > setup="yes" > > if [ "$MODULES" = "most" ]; then > - archcrypto="$(find "$MODULESDIR/kernel/arch" -type d -name > "crypto")" > - copy_modules_dir "${archcrypto##*${MODULESDIR}/}" > + if [ -e "$MODULESDIR/kernel/arch" ]; then > + archcrypto="$(find "$MODULESDIR/kernel/arch" -type d > -name "crypto")" > + if [ -n "$archcrypto" ]; then > + copy_modules_dir > "${archcrypto##*${MODULESDIR}/}" > + fi > + fi > copy_modules_dir "kernel/crypto" > else > for mod in $modules; do > > -- > Martin Michlmayr > http://www.cyrius.com/ > > > -- Martin Michlmayr http://www.cyrius.com/ -- To UNSUBSCRIBE, email to [email protected] with a subject of "unsubscribe". Trouble? Contact [email protected]

