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

Re: [Xen-devel] [PATCH] xen/arch/x86: Fix early boot command line parsing



On 02/12/2013 19:15, Daniel Kiper wrote:
> There is no reliable way to encode nul character as a character so encode
> it as a number. Read: http://sourceware.org/binutils/docs/as/Characters.html.
> Octal and hex encoding does not work on at least my system (GNU assembler
> version 2.22 (x86_64-linux-gnu) using BFD version (GNU Binutils for Debian) 
> 2.22).
> Without this fix e.g. no-real-mode option at the end of xen.gz command line
> is not detected. Additionally, encode other characters accordingly to
> the gas documentation.
>
> Signed-off-by: Daniel Kiper <daniel.kiper@xxxxxxxxxx>
> ---
>  xen/arch/x86/boot/cmdline.S |    6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/xen/arch/x86/boot/cmdline.S b/xen/arch/x86/boot/cmdline.S
> index 05ffb94..4ea56b3 100644
> --- a/xen/arch/x86/boot/cmdline.S
> +++ b/xen/arch/x86/boot/cmdline.S
> @@ -138,11 +138,11 @@
>          call    .Lstrlen
>          add     $4,%esp
>          xadd    %eax,%ebx
> -        cmpb    $'\0',(%ebx)
> +        cmpb    $0,(%ebx)
>          je      3f
> -        cmpb    $' ',(%ebx)
> +        cmpb    $' ,(%ebx)
>          je      3f
> -        cmpb    $'=',(%ebx)
> +        cmpb    $'=,(%ebx)
>          jne     1b
>  3:      pop     %ebx
>          ret

My version of binutils 2.22 for Debian Wheezy does perfectly well with
these constants as-are.

What does the disassembly from your toolchain look like?  I find it
quite hard to believe that the above syntax has been broken by a recent
version of binutils.

~Andrew

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.