X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Falloc%2Falloc.c;h=4b3c03cea47c3ea1910460105b9939fcb545d00e;hb=414da16fc2996a74f19f47ab7379ca61a723b425;hp=643efedc85d1be3212e175051e3558def8021545;hpb=32ed68de4a723fac3d1144e2ce5679625462655e;p=ccan diff --git a/ccan/alloc/alloc.c b/ccan/alloc/alloc.c index 643efedc..4b3c03ce 100644 --- a/ccan/alloc/alloc.c +++ b/ccan/alloc/alloc.c @@ -422,7 +422,8 @@ static void del_large_from_small_free_list(struct header *head, for (i = 0; i < SMALL_PAGES_PER_LARGE_PAGE; i++) { del_from_list(head, &head->small_free_list, - (void *)ph + (i << sp_bits), + (struct page_header *)((char *)ph + + (i << sp_bits)), sp_bits); } } @@ -467,9 +468,7 @@ static void recombine_small_pages(struct header *head, unsigned long poolsize, static u16 get_large_page(struct header *head, unsigned long poolsize, unsigned int sp_bits) { - unsigned int lp_bits, page; - - lp_bits = sp_bits + BITS_FROM_SMALL_TO_LARGE_PAGE; + unsigned int page; page = pop_from_list(head, &head->large_free_list, sp_bits); if (likely(page)) @@ -527,9 +526,8 @@ static bool huge_allocated(struct header *head, unsigned long offset) } /* They want something really big. Aim for contiguous pages (slow). */ -static COLD_ATTRIBUTE -void *huge_alloc(void *pool, unsigned long poolsize, - unsigned long size, unsigned long align) +static COLD void *huge_alloc(void *pool, unsigned long poolsize, + unsigned long size, unsigned long align) { struct header *head = pool; struct huge_alloc *ha; @@ -647,7 +645,7 @@ done: return (char *)pool + ha->off; } -static COLD_ATTRIBUTE void +static COLD void huge_free(struct header *head, unsigned long poolsize, void *free) { unsigned long i, off, pgnum, free_off = (char *)free - (char *)head; @@ -687,8 +685,7 @@ huge_free(struct header *head, unsigned long poolsize, void *free) alloc_free(head, poolsize, ha); } -static COLD_ATTRIBUTE unsigned long -huge_size(struct header *head, void *p) +static COLD unsigned long huge_size(struct header *head, void *p) { unsigned long i, off = (char *)p - (char *)head; struct huge_alloc *ha;