Commit adaab500 authored by Marc Zyngier's avatar Marc Zyngier

irqchip/gic-v3-its: Simplify LPI_PENDBASE_SZ usage

LPI_PENDING_SZ is always used in conjunction with a max(), which doesn't
make much sense, since we're guaranteed that LPI_PENDING_SZ is already
aligned to 64K. Let's remove it.
Tested-by: default avatarJeremy Linton <jeremy.linton@arm.com>
Tested-by: default avatarBhupesh Sharma <bhsharma@redhat.com>
Tested-by: default avatarLei Zhang <zhang.lei@jp.fujitsu.com>
Signed-off-by: default avatarMarc Zyngier <marc.zyngier@arm.com>
parent d38a71c5
...@@ -1924,12 +1924,9 @@ static int its_alloc_collections(struct its_node *its) ...@@ -1924,12 +1924,9 @@ static int its_alloc_collections(struct its_node *its)
static struct page *its_allocate_pending_table(gfp_t gfp_flags) static struct page *its_allocate_pending_table(gfp_t gfp_flags)
{ {
struct page *pend_page; struct page *pend_page;
/*
* The pending pages have to be at least 64kB aligned,
* hence the 'max(LPI_PENDBASE_SZ, SZ_64K)' below.
*/
pend_page = alloc_pages(gfp_flags | __GFP_ZERO, pend_page = alloc_pages(gfp_flags | __GFP_ZERO,
get_order(max_t(u32, LPI_PENDBASE_SZ, SZ_64K))); get_order(LPI_PENDBASE_SZ));
if (!pend_page) if (!pend_page)
return NULL; return NULL;
...@@ -1941,8 +1938,7 @@ static struct page *its_allocate_pending_table(gfp_t gfp_flags) ...@@ -1941,8 +1938,7 @@ static struct page *its_allocate_pending_table(gfp_t gfp_flags)
static void its_free_pending_table(struct page *pt) static void its_free_pending_table(struct page *pt)
{ {
free_pages((unsigned long)page_address(pt), free_pages((unsigned long)page_address(pt), get_order(LPI_PENDBASE_SZ));
get_order(max_t(u32, LPI_PENDBASE_SZ, SZ_64K)));
} }
static void its_cpu_init_lpis(void) static void its_cpu_init_lpis(void)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment