dracut: Generlize microcode early cpio usage

ACPI early table override also may need to place files into an early cpio.
Reflect this in variable and file names.
This change is renaming only and does not introduce any real change.

Reviewed-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Signed-off-by: Thomas Renninger <trenn@suse.de>
Thomas Renninger 2013-09-27 20:10:37 +02:00 committed by Harald Hoyer
parent 764b520994
commit 4b1aa19fa0
1 changed files with 9 additions and 8 deletions

View File

@ -704,9 +704,9 @@ readonly initdir="$(mktemp --tmpdir="$TMPDIR/" -d -t initramfs.XXXXXX)"
} }


if [[ $early_microcode = yes ]]; then if [[ $early_microcode = yes ]]; then
readonly microcode_dir="$(mktemp --tmpdir="$TMPDIR/" -d -t early_microcode.XXXXXX)" readonly early_cpio_dir="$(mktemp --tmpdir="$TMPDIR/" -d -t early_cpio.XXXXXX)"
[ -d "$microcode_dir" ] || { [ -d "$early_cpio_dir" ] || {
printf "%s\n" "dracut: mktemp --tmpdir=\"$TMPDIR/\" -d -t early_microcode.XXXXXX failed." >&2 printf "%s\n" "dracut: mktemp --tmpdir=\"$TMPDIR/\" -d -t early_cpio.XXXXXX failed." >&2
exit 1 exit 1
} }
fi fi
@ -715,7 +715,7 @@ trap '
ret=$?; ret=$?;
[[ $outfile ]] && [[ -f $outfile.$$ ]] && rm -f -- "$outfile.$$"; [[ $outfile ]] && [[ -f $outfile.$$ ]] && rm -f -- "$outfile.$$";
[[ $keep ]] && echo "Not removing $initdir." >&2 || { [[ $initdir ]] && rm -rf -- "$initdir"; }; [[ $keep ]] && echo "Not removing $initdir." >&2 || { [[ $initdir ]] && rm -rf -- "$initdir"; };
[[ $keep ]] && echo "Not removing $microcode_dir." >&2 || { [[ $microcode_dir ]] && rm -Rf -- "$microcode_dir"; }; [[ $keep ]] && echo "Not removing $early_cpio_dir." >&2 || { [[ $early_cpio_dir ]] && rm -Rf -- "$early_cpio_dir"; };
[[ $_dlogdir ]] && rm -Rf -- "$_dlogdir"; [[ $_dlogdir ]] && rm -Rf -- "$_dlogdir";
exit $ret; exit $ret;
' EXIT ' EXIT
@ -1311,7 +1311,7 @@ if [[ $early_microcode = yes ]]; then
dinfo "*** Generating early-microcode cpio image ***" dinfo "*** Generating early-microcode cpio image ***"
ucode_dir=(amd-ucode intel-ucode) ucode_dir=(amd-ucode intel-ucode)
ucode_dest=(AuthenticAMD.bin GenuineIntel.bin) ucode_dest=(AuthenticAMD.bin GenuineIntel.bin)
_dest_dir="$microcode_dir/d/kernel/x86/microcode" _dest_dir="$early_cpio_dir/d/kernel/x86/microcode"
_dest_idx="0 1" _dest_idx="0 1"
mkdir -p $_dest_dir mkdir -p $_dest_dir
if [[ $hostonly ]]; then if [[ $hostonly ]]; then
@ -1331,14 +1331,15 @@ if [[ $early_microcode = yes ]]; then
fi fi
done done
done done
(cd "$microcode_dir/d"; find . -print0 | cpio --null -o -H newc --quiet >../ucode.cpio) create_early_cpio="yes"
fi fi


rm -f -- "$outfile" rm -f -- "$outfile"
dinfo "*** Creating image file ***" dinfo "*** Creating image file ***"
if [[ $early_microcode = yes ]]; then if [[ $create_early_cpio = yes ]]; then
# The microcode blob is _before_ the initramfs blob, not after # The microcode blob is _before_ the initramfs blob, not after
mv $microcode_dir/ucode.cpio $outfile.$$ (cd "$early_cpio_dir/d"; find . -print0 | cpio --null -o -H newc --quiet >../early.cpio)
mv $early_cpio_dir/early.cpio $outfile.$$
fi fi
if ! ( umask 077; cd "$initdir"; find . -print0 | cpio --null -R 0:0 -H newc -o --quiet| \ if ! ( umask 077; cd "$initdir"; find . -print0 | cpio --null -R 0:0 -H newc -o --quiet| \
$compress >> "$outfile.$$"; ); then $compress >> "$outfile.$$"; ); then