Re: [PATCH V2] x86/mm: Fix zone ranges boot printout

From: Xishi Qiu
Date: Tue Dec 09 2014 - 20:40:22 EST


On 2014/12/10 6:50, Andrew Morton wrote:

> On Tue, 9 Dec 2014 11:27:20 +0800 Xishi Qiu <qiuxishi@xxxxxxxxxx> wrote:
>
>> Changelog:
>> V2:
>> -fix building warnings of min(...).
>>
>> ...
>>
>> --- a/arch/x86/mm/init.c
>> +++ b/arch/x86/mm/init.c
>> @@ -674,10 +674,12 @@ void __init zone_sizes_init(void)
>> memset(max_zone_pfns, 0, sizeof(max_zone_pfns));
>>
>> #ifdef CONFIG_ZONE_DMA
>> - max_zone_pfns[ZONE_DMA] = MAX_DMA_PFN;
>> + max_zone_pfns[ZONE_DMA] = min_t(unsigned long,
>> + max_low_pfn, MAX_DMA_PFN);
>
> MAX_DMA_PFN has type int.
>
>> #endif
>> #ifdef CONFIG_ZONE_DMA32
>> - max_zone_pfns[ZONE_DMA32] = MAX_DMA32_PFN;
>> + max_zone_pfns[ZONE_DMA32] = min_t(unsigned long,
>> + max_low_pfn, MAX_DMA32_PFN);
>
> MAX_DMA32_PFN has type UL (I think?) so there's no need for min_t here.
>
>> #endif
>> max_zone_pfns[ZONE_NORMAL] = max_low_pfn;
>> #ifdef CONFIG_HIGHMEM
>
>
> Let's try to get the types correct, rather than hacking around fixing
> up fallout from earlier incorrect type choices?
>
> What is the type of a pfn? Unsigned long, generally, when we bother
> thinking about it.
>
> So how about we make MAX_DMA_PFN have type UL? I assume that fixes the
> warning?
>
> If we do this, we should also be able to undo the min_t hackery in
> arch/x86/kernel/e820.c:memblock_find_dma_reserve().
>

Hi Andrew,

Thanks for your suggestion, I'll resend V3.

Thanks,
Xishi Qiu

>
> .
>



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/