On Wed, Jan 16, 2019 at 3:53 PM Dave Hansen <dave.hansen@xxxxxxxxx> wrote: > > On 1/16/19 1:16 PM, Bjorn Helgaas wrote: > >> + /* > >> + * Set flags appropriate for System RAM. Leave ..._BUSY clear > >> + * so that add_memory() can add a child resource. > >> + */ > >> + new_res->flags = IORESOURCE_SYSTEM_RAM; > > IIUC, new_res->flags was set to "IORESOURCE_MEM | ..." in the > > devm_request_mem_region() path. I think you should keep at least > > IORESOURCE_MEM so the iomem_resource tree stays consistent. > > I went to look at fixing this. It looks like "IORESOURCE_SYSTEM_RAM" > includes IORESOURCE_MEM: > > > #define IORESOURCE_SYSTEM_RAM (IORESOURCE_MEM|IORESOURCE_SYSRAM) > > Did you want the patch to expand this #define, or did you just want to > ensure that IORESORUCE_MEM got in there somehow? The latter. Since it's already included, forget I said anything :) Although if your intent is only to clear IORESOURCE_BUSY, maybe it would be safer to just clear that bit instead of overwriting everything? That might also help people grepping for IORESOURCE_BUSY usage.