xfs
[Top] [All Lists]

Re: 2.4.19 with split patches fails to build quota on powerpc

To: Ethan Benson <erbenson@xxxxxxxxxx>, Christoph Hellwig <hch@xxxxxxxxxxxxx>, Jan Kara <jack@xxxxxx>
Subject: Re: 2.4.19 with split patches fails to build quota on powerpc
From: Nathan Scott <nathans@xxxxxxx>
Date: Mon, 5 Aug 2002 18:23:02 +1000
Cc: linux-xfs@xxxxxxxxxxx
In-reply-to: <20020803145056.A25690@xxxxxxxxxxxxxxx>
References: <20020803145056.A25690@xxxxxxxxxxxxxxx>
Sender: owner-linux-xfs@xxxxxxxxxxx
User-agent: Mutt/1.4i
hi,

Looks like this crept in with that 2.5 quota port, Christoph.
On 2.5, L1_CACHE_SHIFT is declared for all architectures.  I
guess we could go back to using HASHDEV(sb->s_dev?) for 2.4?

A simple build fix, Ethan, would be to change dquot.c::hashfn
so that it uses the HASHDEV macro again (similar to revision
1.48 of fs/dquot.c, except no dev parameter anymore so use
sb->s_dev instead).  I'll wait to hear from Christoph &/ Jan
before checking anything into the tree though.

cheers.

-- 
Nathan


On Sat, Aug 03, 2002 at 02:50:56PM -0800, Ethan Benson wrote:
> This may not be the right place to report this, but...
> 
> on powerpc the following occurs:
> 
> gcc -D__KERNEL__ -I/usr/local/src/linux-2.4.19/include -Wall
> -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing
> -fno-common -fomit-frame-pointer -D__powerpc__ -fsigned-char
> -msoft-float -pipe -ffixed-r2 -Wno-uninitialized -mmultiple -mstring
> -nostdinc -I /usr/lib/gcc-lib/powerpc-linux/2.95.4/include
> -DKBUILD_BASENAME=dquot  -DEXPORT_SYMTAB -c dquot.c
> dquot.c: In function `hashfn':
> dquot.c:182: `L1_CACHE_SHIFT' undeclared (first use in this function)
> dquot.c:182: (Each undeclared identifier is reported only once
> dquot.c:182: for each function it appears in.)
> dquot.c:183: warning: control reaches end of non-void function
> make[3]: *** [dquot.o] Error 1
> make[3]: Leaving directory `/usr/local/src/linux-2.4.19/fs'
> make[2]: *** [first_rule] Error 2
> make[2]: Leaving directory `/usr/local/src/linux-2.4.19/fs'
> make[1]: *** [_dir_fs] Error 2
> 
> AFAICT L1_CACHE_SHIFT is not defined for the powerpc arch (only alpha,
> mips64, s390, i386 and ia64 define it).
> 
> the offending line is:
> 
> static inline int const hashfn(struct super_block *sb, unsigned int
> id, int type)
> {
>         return((((unsigned long)sb>>L1_CACHE_SHIFT) ^ id) * (MAXQUOTAS - 
> type)) % NR_DQHASH;
> }
> 
> this changed somewhere between -rc3 and the final 2.4.19 (rc3 was fine).
> 
> -- 
> Ethan Benson
> http://www.alaska.net/~erbenson/


<Prev in Thread] Current Thread [Next in Thread>