[...] > diff --git a/makedumpfile.h b/makedumpfile.h >> index 951ed1b..dfad569 100644 >> --- a/makedumpfile.h >> +++ b/makedumpfile.h >> @@ -816,6 +816,13 @@ struct mem_map_data { >> unsigned long long pfn_start; >> unsigned long long pfn_end; >> unsigned long mem_map; >> + >> + /* >> + * for excluding multi-page regions >> + */ >> + unsigned long exclude_pfn_start; >> + unsigned long exclude_pfn_end; > >unsigned long long exclude_pfn_start; >unsigned long long exclude_pfn_end; > >The integers representing page frame numbers need to be defined as >unsigned long long for architectures where physical address can have >64-bit length but unsigned long has 32-bit only, such as x86 PAE. > >Kumagai-san, I saw this sometimes in the past. How about introducing >specific abstract type for page frame number like below? > >typedef unsigned long long pfn_t; Good idea! We should do it. >maybe with some prefix. I think this also helps code readability >because unsigned long long is too long. > >> + unsigned long long *exclude_pfn_counter; >> }; > >Also, it seems to me better to introduce a new type for this >processing rather than extending existing code. struct mem_map_data is >not specific for the excluding processing. I agree, too. Thanks Atsushi Kumagai