On 10/22/18 at 05:29am, Fan, Chao wrote:
> On Sun, Oct 21, 2018 at 10:34:58AM +0800, Baoquan He wrote:
> >On 10/17/18 at 06:20pm, Chao Fan wrote:
> >> +  if (!cmdline_find_option_bool("movable_node") ||
> >> +      cmdline_find_option_arg("acpi", "off", 3))
> >> +          return;
> >> +
> >> +  table_header = get_acpi_srat_table();
> >> +  if (!table_header)
> >> +          return;
> >> +
> >> +  table_end = (unsigned long)table_header + table_header->length;
> >> +
> >> +  table = (struct acpi_subtable_header *)
> >> +          ((unsigned long)table_header + sizeof(struct acpi_table_srat));
> >> +
> >> +  while (((unsigned long)table) +
> >> +                 sizeof(struct acpi_subtable_header) < table_end) {
> >> +          if (table->type == ACPI_SRAT_TYPE_MEMORY_AFFINITY) {
> >> +                  ma = (struct acpi_srat_mem_affinity *)table;
> >> +                  if (!(ma->flags & ACPI_SRAT_MEM_HOT_PLUGGABLE)) {
> >> +                          immovable_mem[i].start = ma->base_address;
> >> +                          immovable_mem[i].size = ma->length;
> >> +                          i++;
> >> +                  }
> >> +
> >> +                  if (i >= MAX_NUMNODES*2)
> >             No warning message printed in this case?
> 
> I will add. BTW, what message is appropriate?
> I can't figure out in what condition, i >= MAX_NUMNODES*2.

Do you mean it's impossible to happen? 

Reply via email to