[PATCH] dmaengine: pl330: Fix linker error "undefined reference to `__aeabi_uldivmod'"

Jon Medhurst (Tixy) tixy at linaro.org
Thu Nov 13 09:11:28 PST 2014


On Thu, 2014-11-13 at 22:31 +0530, Vinod Koul wrote:
> On Thu, Nov 13, 2014 at 04:27:27PM +0000, Jon Medhurst (Tixy) wrote:
> > 32-bit ARM kernels may have a 64-bit dma_addr_t but have no
> > implementation of the compiler helper for 64-bit unsigned division,
> > therefore the use of the modulo operator in pl330_prep_dma_memcpy causes
> > the link error "undefined reference to `__aeabi_uldivmod'"
> > 
> > As the burst value is always a power of two we can fix the problem, and
> > make the code more efficient, by replacing "% burst" with "& (burst-1)".
> > 
> > Reported-by: kbuild test robot <fengguang.wu at intel.com>
> > Signed-off-by: Jon Medhurst <tixy at linaro.org>
> > ---
> > 
> > Vinod. I haven't added a 'Fixes:' line because I was unsure if the patch
> > in linux-next is part of a stable branch or if the SHA1 might change
> > before hitting mainline. If it stable then the line should be...
> > 
> > Fixes: 63369d0a96dc ("dmaengine: pl330: Align DMA memcpy operations to MFIFO width")
> I have applied this for now but...
> 
> While at it and also related to Fixes, typically the fixes branch wont be
> rebased before its sent to Linus and merged. But this is introduced in patch
> which is sent, should I just fold it in and not cause this regression in
> first place...?

I have no objection to folding it in, but then doesn't that remove
credit for Fengguang Wu's test system for finding and reporting errors?

-- 
Tixy






More information about the linux-arm-kernel mailing list