Skip to content
  • Toshi Kani's avatar
    resource: Add I/O resource descriptor · 43ee493b
    Toshi Kani authored
    
    
    walk_iomem_res() and region_intersects() still need to use
    strcmp() for searching a resource entry by @name in the iomem
    table.
    
    This patch introduces I/O resource descriptor 'desc' in struct
    resource for the iomem search interfaces. Drivers can assign
    their unique descriptor to a range when they support the search
    interfaces.
    
    Otherwise, 'desc' is set to IORES_DESC_NONE (0). This avoids
    changing most of the drivers as they typically allocate resource
    entries statically, or by calling alloc_resource(), kzalloc(),
    or alloc_bootmem_low(), which set the field to zero by default.
    A later patch will address some drivers that use kmalloc()
    without zero'ing the field.
    
    Also change release_mem_region_adjustable() to set 'desc' when
    its resource entry gets separated. Other resource interfaces are
    also changed to initialize 'desc' explicitly although
    alloc_resource() sets it to 0.
    
    Signed-off-by: default avatarToshi Kani <toshi.kani@hpe.com>
    Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
    Cc: Andrew Morton <akpm@linux-foundation.org>
    Cc: Andy Lutomirski <luto@amacapital.net>
    Cc: Borislav Petkov <bp@alien8.de>
    Cc: Brian Gerst <brgerst@gmail.com>
    Cc: Dan Williams <dan.j.williams@intel.com>
    Cc: Denys Vlasenko <dvlasenk@redhat.com>
    Cc: H. Peter Anvin <hpa@zytor.com>
    Cc: Jakub Sitnicki <jsitnicki@gmail.com>
    Cc: Jiang Liu <jiang.liu@linux.intel.com>
    Cc: Linus Torvalds <torvalds@linux-foundation.org>
    Cc: Luis R. Rodriguez <mcgrof@suse.com>
    Cc: Peter Zijlstra <peterz@infradead.org>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Cc: Toshi Kani <toshi.kani@hp.com>
    Cc: linux-arch@vger.kernel.org
    Cc: linux-mm <linux-mm@kvack.org>
    Link: http://lkml.kernel.org/r/1453841853-11383-4-git-send-email-bp@alien8.de
    
    
    Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
    43ee493b