Bug 132578

Summary: can't compile afs module for 2.4.21-20.ELsmp
Product: Red Hat Enterprise Linux 3 Reporter: Michael Burman <michael.burman>
Component: kernelAssignee: Jim Paradis <jparadis>
Status: CLOSED NOTABUG QA Contact: Brian Brock <bbrock>
Severity: medium Docs Contact:
Priority: medium    
Version: 3.0CC: peterm, petrides, riel
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2004-09-16 01:58:16 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Michael Burman 2004-09-14 19:58:36 UTC
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.1) Gecko/20020827

Description of problem:
After moving from U2 to U3 I get the following error when trying to
compile openafs module.  Does this change have something to do with
increasing GID to 32bits?  

gcc  -O2 -fomit-frame-pointer -fno-strength-reduce
-fno-strict-aliasing -fno-common -pipe -mcmodel=kernel -D__KERNEL__
-DKERNEL -D_KERNEL -DMODULE -DAFS_SMP -D__BOOT_KERNEL_UP=0
-D__BOOT_KERNEL_SMP=1  -I. -I../
-I/usr/src/openafs-kernel-1.2.10/src/config -c ../afs/osi_groups.c
../afs/osi_groups.c:181: syntax error before "old_gid_t"
../afs/osi_groups.c:182: syntax error before "old_gid_t"
../afs/osi_groups.c: In function `afs32_xsetgroups':
../afs/osi_groups.c:194: `gidsetsize' undeclared (first use in this
function)
../afs/osi_groups.c:194: (Each undeclared identifier is reported only once
../afs/osi_groups.c:194: for each function it appears in.)
../afs/osi_groups.c:194: `grouplist' undeclared (first use in this
function)
make[1]: *** [osi_groups.o] Error 1
make[1]: Leaving directory
`/usr/src/openafs-kernel-1.2.10/src/MODLOAD-2.4.21-20.EL-MP'
make: *** [linux_compdirs] Error 2


Version-Release number of selected component (if applicable):
kernel-2.4.21-20.EL.smp  openafs-1.2.10

How reproducible:
Always

Steps to Reproduce:
1.Update kernel to 2.4.21-20.ELsmp
2.dl any version of openafs
3. configure
4. make
    

Additional info:

Comment 1 Ernie Petrides 2004-09-14 21:29:45 UTC
Hello, Michael.  In U3, we turned off CONFIG_UID16 for the x86_64
arch because it was inappropriately limiting the uid/gid space.
The typedefs old_uid_t/old_gid_t are only defined when CONFIG_UID16
is defined, so yes, this is at the heart of the compilation failure.

I think the afs source code needs some porting work to handle this.
You might want to take a look at include/linux/highuid.h, where
there are a bunch of CONFIG_UID16-dependent macros for dealing with
setting and converting uid/gid values.  If the afs source code used
these appropriately, it should be compilable in either scenario.

I'm assigning this temporarily to Jim Paradis to validate the above
(in expectation this bug report will be closed as NOTABUG).


Comment 2 Jim Paradis 2004-09-16 01:58:16 UTC
I concur with Ernie.  Moving to the 32-bit uid/gid eliminated
old_uid_t and old_gid_t.  You'll have to modify the code accordingly.