On 04/10/2014 07:28 PM, Dave Young wrote:
>>  
>> +static void add_e820_map_from_mr(struct x86_linux_param_header *real_mode,
>> +                    struct e820entry *e820, struct memory_range *range, int 
>> nr_range)
>> +{
>> +    int i;
>> +
>> +    for (i = 0; i < nr_range; i++) {
>> +            e820[i].addr = range[i].start;
>> +            e820[i].size = range[i].end - range[i].start;
> 
> I see it's same as original code but I still feel it should be end - start + 
> 1;
> 

I can't see how it could possibly be +1.

How do you encode range[].end?  If it is inclusive it should be end -
start - 1, if it is a semiclosed range (the normal thing in computer
contexts) then the code above is correct.

        -hpa



_______________________________________________
kexec mailing list
[email protected]
http://lists.infradead.org/mailman/listinfo/kexec

Reply via email to