Re: [PATCH v2] habanalabs: Fix test build failures

From: Greg Kroah-Hartman
Date: Mon Apr 04 2022 - 10:48:21 EST


On Mon, Apr 04, 2022 at 05:38:29PM +0300, Oded Gabbay wrote:
> On Mon, Apr 4, 2022 at 4:49 PM Guenter Roeck <linux@xxxxxxxxxxxx> wrote:
> >
> > allmodconfig builds on 32-bit architectures fail with the following error.
> >
> > drivers/misc/habanalabs/common/memory.c: In function 'alloc_device_memory':
> > drivers/misc/habanalabs/common/memory.c:153:49: error:
> > cast from pointer to integer of different size
> >
> > Fix the typecast. While at it, drop other unnecessary typecasts associated
> > with the same commit.
> >
> > Fixes: e8458e20e0a3c ("habanalabs: make sure device mem alloc is page aligned")
> > Cc: Ohad Sharabi <osharabi@xxxxxxxxx>
> > Signed-off-by: Guenter Roeck <linux@xxxxxxxxxxxx>
> > ---
> > v2: Drop unnecessary (u64) typecasts
> >
> > drivers/misc/habanalabs/common/memory.c | 16 ++++++++--------
> > 1 file changed, 8 insertions(+), 8 deletions(-)
> >
> > diff --git a/drivers/misc/habanalabs/common/memory.c b/drivers/misc/habanalabs/common/memory.c
> > index e008d82e4ba3..a13506dd8119 100644
> > --- a/drivers/misc/habanalabs/common/memory.c
> > +++ b/drivers/misc/habanalabs/common/memory.c
> > @@ -111,10 +111,10 @@ static int alloc_device_memory(struct hl_ctx *ctx, struct hl_mem_in *args,
> >
> > if (contiguous) {
> > if (is_power_of_2(page_size))
> > - paddr = (u64) (uintptr_t) gen_pool_dma_alloc_align(vm->dram_pg_pool,
> > - total_size, NULL, page_size);
> > + paddr = (uintptr_t) gen_pool_dma_alloc_align(vm->dram_pg_pool,
> > + total_size, NULL, page_size);
> > else
> > - paddr = (u64) (uintptr_t) gen_pool_alloc(vm->dram_pg_pool, total_size);
> > + paddr = gen_pool_alloc(vm->dram_pg_pool, total_size);
> > if (!paddr) {
> > dev_err(hdev->dev,
> > "failed to allocate %llu contiguous pages with total size of %llu\n",
> > @@ -150,12 +150,12 @@ static int alloc_device_memory(struct hl_ctx *ctx, struct hl_mem_in *args,
> > for (i = 0 ; i < num_pgs ; i++) {
> > if (is_power_of_2(page_size))
> > phys_pg_pack->pages[i] =
> > - (u64) gen_pool_dma_alloc_align(vm->dram_pg_pool,
> > - page_size, NULL,
> > - page_size);
> > + (uintptr_t)gen_pool_dma_alloc_align(vm->dram_pg_pool,
> > + page_size, NULL,
> > + page_size);
> > else
> > - phys_pg_pack->pages[i] = (u64) gen_pool_alloc(vm->dram_pg_pool,
> > - page_size);
> > + phys_pg_pack->pages[i] = gen_pool_alloc(vm->dram_pg_pool,
> > + page_size);
> > if (!phys_pg_pack->pages[i]) {
> > dev_err(hdev->dev,
> > "Failed to allocate device memory (out of memory)\n");
> > --
> > 2.35.1
> >
>
> Hi Guenter,
> Thanks for the patch, but Greg already merged a patch that was sent to him.

I did? Where?