Re: include/linux/compiler_types.h:326:38: error: call to '__compiletime_assert_791' declared with attribute error: BUILD_BUG_ON failed: (BTRFS_MAX_COMPRESSED % PAGE_SIZE) != 0

From: David Sterba
Date: Wed Jun 09 2021 - 11:25:25 EST


On Wed, Jun 09, 2021 at 04:01:20PM +0200, Christophe Leroy wrote:
> Le 09/06/2021 à 15:55, kernel test robot a écrit :
> > tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head: 368094df48e680fa51cedb68537408cfa64b788e
> > commit: 4eeef098b43242ed145c83fba9989d586d707589 powerpc/44x: Remove STDBINUTILS kconfig option
> > date: 4 months ago
> > config: powerpc-randconfig-r012-20210609 (attached as .config)
> > compiler: powerpc-linux-gcc (GCC) 9.3.0
>
> That's a BTRFS issue, and not directly linked to the above mentioned commit. Before that commit the
> problem was already present.
>
> Problem is that with 256k PAGE_SIZE, following BUILD_BUG() pops up:
>
> BUILD_BUG_ON((BTRFS_MAX_COMPRESSED % PAGE_SIZE) != 0)

A 256K page is a problem for btrfs, until now I was not even aware
there's an architecture supporting that so. That the build fails is
probably best thing. Maximum metadata nodesize supported is 64K and
having that on a 256K page would need deeper changes, no top of the
currently developed subpage changes (that do 4K blocks on 64K pages).