Re: [PATCH v2] MIPS: Clean up the calculation of VMLINUZ_LOAD_ADDRESS

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

 



Hi,

* Wu Zhangjin <wuzhangjin@xxxxxxxxx> [2010-06-01 21:11:56+0800]:
>
> Changes:
> 
> v1 -> v2:
>   o make it more portable (feedback from Alexander Clouter)
>     use EXIT_SUCCESS and EXIT_FAILURE as the return value, and use uint64_t
>     instead of "unsigned long long".
>   o add a missing return value (feedback from Alexander Clouter)
>     return EXIT_FAILURE if (n != 1).
> 
> We have calculated VMLINUZ_LOAD_ADDRESS in shell, which is awful. This patch
> rewrites it in C.
> 
s/awful/indecipherable/

:)

> Signed-off-by: Wu Zhangjin <wuzhangjin@xxxxxxxxx>
> ---
>  arch/mips/boot/.gitignore                          |    1 +
>  arch/mips/boot/compressed/Makefile                 |   22 ++++----
>  arch/mips/boot/compressed/calc_vmlinuz_load_addr.c |   55 ++++++++++++++++++++
>  3 files changed, 66 insertions(+), 12 deletions(-)
>  create mode 100644 arch/mips/boot/compressed/calc_vmlinuz_load_addr.c
> 
> diff --git a/arch/mips/boot/compressed/calc_vmlinuz_load_addr.c b/arch/mips/boot/compressed/calc_vmlinuz_load_addr.c
> new file mode 100644
> index 0000000..81176b1
> --- /dev/null
> +++ b/arch/mips/boot/compressed/calc_vmlinuz_load_addr.c
> @@ -0,0 +1,55 @@
>
> [snipped]
>
> +
> +	/* Convert hex characters to dec number */
> +	errno = 0;
> +	n = sscanf(argv[2], "%llx", &vmlinux_load_addr);
> +	if (n != 1) {
>
you can drop the 'n' with:

if (sscanf(argv[2], "%llx", &vmlinux_load_addr) != 1) {

> +		if (errno != 0)
> +			perror("sscanf");
> +		else
> +			fprintf(stderr, "No matching characters\n");
> +
> +		return EXIT_FAILURE;
> +	}
> +
> +	vmlinux_size = (unsigned long long)sb.st_size;
>
I'm guessing this should probably be uint64_t also?

Other than that, makes me happy :)

Cheers

-- 
Alexander Clouter
.sigmonster says: And furthermore, my bowling average is unimpeachable!!!



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux