[patch 2/3] Add flags parameter to reserve_bootmem_generic()

Johannes Weiner hannes at saeurebad.de
Sun Jun 8 18:01:15 EDT 2008


Hi,

Bernhard Walle <bwalle at suse.de> writes:

> --- a/arch/x86/mm/init_64.c
> +++ b/arch/x86/mm/init_64.c
> @@ -798,12 +798,13 @@ void free_initrd_mem(unsigned long start
>  }
>  #endif
>  
> -void __init reserve_bootmem_generic(unsigned long phys, unsigned len)
> +int __init reserve_bootmem_generic(unsigned long phys, unsigned len, int flags)
>  {
>  #ifdef CONFIG_NUMA
>  	int nid, next_nid;
>  #endif
>  	unsigned long pfn = phys >> PAGE_SHIFT;
> +	int ret;
>  
>  	if (pfn >= end_pfn) {
>  		/*
> @@ -811,11 +812,11 @@ void __init reserve_bootmem_generic(unsi
>  		 * firmware tables:
>  		 */
>  		if (pfn < max_pfn_mapped)
> -			return;
> +			return -EFAULT;

This seemed to be `just do nothing' behaviour.  Wouldn't 0 be more
correct here?  Or something else so there is a difference between the
path that does not print a warning (the one below) and the path that
does?

>  
>  		printk(KERN_ERR "reserve_bootmem: illegal reserve %lx %u\n",
>  				phys, len);
> -		return;
> +		return -EFAULT;
>  	}

	Hannes



More information about the kexec mailing list