Re: tip: origin tree build failure (x86, 32-bit, allyesconfig)

From: Linus Torvalds
Date: Thu Apr 22 2010 - 14:15:29 EST




On Thu, 22 Apr 2010, Ingo Molnar wrote:
>
> All 32-bit x86 builds (x86, allyesconfig) that enable RAID are failing with
> this build failure:
>
> drivers/built-in.o: In function `raid5_compute_sector':
> raid5.c:(.text+0x2e42ac): undefined reference to `__umoddi3'
> raid5.c:(.text+0x2e42d8): undefined reference to `__umoddi3'
> raid5.c:(.text+0x2e42ff): undefined reference to `__umoddi3'
> raid5.c:(.text+0x2e4327): undefined reference to `__umoddi3'
> raid5.c:(.text+0x2e4385): undefined reference to `__umoddi3'
> drivers/built-in.o:raid5.c:(.text+0x2e43bc): more undefined references to `__umoddi3' follow
>
> Caused by this commit:
>
> 35f2a59: md/raid5: allow for more than 2^31 chunks.

Gaah, yes.

How about just making it "unsigned long" instead of sector_t, and telling
people that if they have more than 2**32 chunks in their RAID array, they
should damn well use a 64-bit CPU.

The alternative, of course, is to use "sector_div()" everywhere. Neil?

Linus
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/