[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#762007: Kernel command line handling change breaks d-i user-params functionality



On Sat, 2014-09-27 at 14:01 +0100, Ian Campbell wrote:
> On Wed, 2014-09-17 at 18:45 +0100, Ian Campbell wrote:
> > Not sure what we can do about this. Perhaps choose another separator
> > ("=="?) and make user-params support both?
> 
> Reading the kernel source it seems it only checks for exactly "--". So I
> propose we support "---" in addition to "--", something like the
> following (untested) patch.

I've built an di-utils with this patch and built a di using that
package. I booted (on x86 FWIW) with a command line ending
        "--- quiet console=ttyS0,115200n8"
instead of "-- quiet console=ttyS0,115200n8".

Dropping straight to a shell and running user-params returns those two
options as expected.

I've left a complete install running but I'm pretty confident that it
will succeed.

As well as this fix I think we need to investigate which of these need
fixing too (i.e. with s/--/---/ in appropriate places):
      * The pxe/grub etc configs in debian-installer.git
      * Debian-cd
      * Installation guide

I'm sure that list must be incomplete but it was all I could come up
with. Sadly, as you might imagine, "--" is not terribly amenable to grep
or codesearch.d.o.

Ian.

> 
> diff --git a/user-params b/user-params
> index 53677b5..2d41e05 100755
> --- a/user-params
> +++ b/user-params
> @@ -14,7 +14,7 @@ for item in $(sed -e 's/[^ =]*="[^"]*[ ][^"]*"//g' \
>  	# Remove trailing '?' for debconf variables set with '?='
>  	var="${var%\?}"
>  
> -	if [ "$item" = "--" ]; then
> +	if [ "$item" = "--" ] || [ "$item" = "---" ]; then
>  		inuser=1
>  		collect=""
>  	elif [ "$inuser" ]; then
> 
> Ian.
> 
> 


Reply to: