ACPI / APEI: Remove ghes_ioremap_area
Now that nothing is using the ghes_ioremap_area pages, rip them out. Signed-off-by: James Morse <james.morse@arm.com> Reviewed-by: Borislav Petkov <bp@suse.de> Tested-by: Tyler Baicar <tbaicar@codeaurora.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> Cc: All applicable <stable@vger.kernel.org>
This commit is contained in:
parent
4f89fa286f
commit
520e18a508
|
@ -114,19 +114,7 @@ static DEFINE_MUTEX(ghes_list_mutex);
|
|||
* from BIOS to Linux can be determined only in NMI, IRQ or timer
|
||||
* handler, but general ioremap can not be used in atomic context, so
|
||||
* the fixmap is used instead.
|
||||
*/
|
||||
|
||||
/*
|
||||
* Two virtual pages are used, one for IRQ/PROCESS context, the other for
|
||||
* NMI context (optionally).
|
||||
*/
|
||||
#define GHES_IOREMAP_PAGES 2
|
||||
#define GHES_IOREMAP_IRQ_PAGE(base) (base)
|
||||
#define GHES_IOREMAP_NMI_PAGE(base) ((base) + PAGE_SIZE)
|
||||
|
||||
/* virtual memory area for atomic ioremap */
|
||||
static struct vm_struct *ghes_ioremap_area;
|
||||
/*
|
||||
*
|
||||
* These 2 spinlocks are used to prevent the fixmap entries from being used
|
||||
* simultaneously.
|
||||
*/
|
||||
|
@ -141,23 +129,6 @@ static atomic_t ghes_estatus_cache_alloced;
|
|||
|
||||
static int ghes_panic_timeout __read_mostly = 30;
|
||||
|
||||
static int ghes_ioremap_init(void)
|
||||
{
|
||||
ghes_ioremap_area = __get_vm_area(PAGE_SIZE * GHES_IOREMAP_PAGES,
|
||||
VM_IOREMAP, VMALLOC_START, VMALLOC_END);
|
||||
if (!ghes_ioremap_area) {
|
||||
pr_err(GHES_PFX "Failed to allocate virtual memory area for atomic ioremap.\n");
|
||||
return -ENOMEM;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
static void ghes_ioremap_exit(void)
|
||||
{
|
||||
free_vm_area(ghes_ioremap_area);
|
||||
}
|
||||
|
||||
static void __iomem *ghes_ioremap_pfn_nmi(u64 pfn)
|
||||
{
|
||||
phys_addr_t paddr;
|
||||
|
@ -1247,13 +1218,9 @@ static int __init ghes_init(void)
|
|||
|
||||
ghes_nmi_init_cxt();
|
||||
|
||||
rc = ghes_ioremap_init();
|
||||
if (rc)
|
||||
goto err;
|
||||
|
||||
rc = ghes_estatus_pool_init();
|
||||
if (rc)
|
||||
goto err_ioremap_exit;
|
||||
goto err;
|
||||
|
||||
rc = ghes_estatus_pool_expand(GHES_ESTATUS_CACHE_AVG_SIZE *
|
||||
GHES_ESTATUS_CACHE_ALLOCED_MAX);
|
||||
|
@ -1277,8 +1244,6 @@ static int __init ghes_init(void)
|
|||
return 0;
|
||||
err_pool_exit:
|
||||
ghes_estatus_pool_exit();
|
||||
err_ioremap_exit:
|
||||
ghes_ioremap_exit();
|
||||
err:
|
||||
return rc;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue