Re: Unable to Compile Latest Kernel from Git

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 08/10/2011 01:29 PM, Billy Hass wrote:
> On Tue, Aug 9, 2011 at 4:52 AM, Benny Halevy <bhalevy@xxxxxxxxxx> wrote:
>> On 2011-08-08 15:01, Olga Kornievskaia wrote:
>>> I'd like to 2nd this.
>>>
>>> Current pnfs server doesn't build if chosen to be build into the
>>> kernel. It does build, if built as a module.
>>>
>>> when client and server code is build into the kernel it seems that
>>> both sides try to define pnfs_roc() function and stepping on each
>>> others toes..
>>>
>>> On Fri, Aug 5, 2011 at 9:58 PM, Billy Hass <billdh16@xxxxxxxxx> wrote:
>>>> Hey all,
>>>>
>>>> I am unable to compile the latest kernel from the git tree.
>>>>
>>>> git clone git://git.linux-nfs.org/projects/bhalevy/linux-pnfs.git
>>>> cd linux-pnfs
>>>> make oldconfig
>>>> make -j5 -s
>>>>      [ ... ]
>>>>      [A lot of warnings, but no errors]
>>>>      [ ... ]
>>>> make install
>>>>      sh /usr/src/kernels/3.0.0/linux-
>>>>     pnfs/arch/x86/boot/install.sh 3.0.0-pnfs arch/x86/boot/bzImage \
>>>>          System.map "/boot"
>>>>       *** Missing file: arch/x86/boot/bzImage
>>>>       *** You need to run "make" before "make install".
>>>>      make[1]: *** [install] Error 1
>>>>      make: *** [install] Error 2
>>>>
>>>> When I try to do the make again, here is the output
>>>> make -j5 -s
>>>>      fs/nfsd/built-in.o: In function `pnfs_roc':
>>>>      (.text+0x226d1): multiple definition of `pnfs_roc'
>>>>      fs/nfs/built-in.o:(.text+0x304ee): first defined here
>>>>      make[1]: *** [fs/built-in.o] Error 1
>>>>      make: *** [fs] Error 2
>>>>      make: *** Waiting for unfinished jobs....
>>>>
>>>> Thanks for any help!
>>>>
>>>> Bill
>>>>
>>>> --
>>>> Bill D. Hass
>>>> Major | Electrical Engineering BSE
>>>> Minor | Mathematics
>>>> University of Michigan '13
>>>> College of Engineering
>>>> (715) 923-8382
>>>> --
>>>> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
>>>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>>>
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
>>> the body of a message to majordomo@xxxxxxxxxxxxxxx
>>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>>
>> Right.  The following patch simply renames the function for pnfsd.
>> I'm pushing it to pnfs-all-3.0 and I'll add it to the 3.1-rc tree
>> (pnfs-all-latest) once I finish rebasing and testing it.
>>
>> Benny
>>
>> From d76f73eca38fd7b803d80e78cfa8f9468e83a9b3 Mon Sep 17 00:00:00 2001
>> From: Benny Halevy <benny@xxxxxxxxxx>
>> Date: Tue, 9 Aug 2011 01:11:16 -0400
>> Subject: [PATCH] SQUASHME: pnfsd: rename pnfs_roc to pnfsd_roc
>>
>> It clashes with a function called the same in the nfs module
>>
>> Signed-off-by: Benny Halevy <benny@xxxxxxxxxx>
>> ---
>>  fs/nfsd/nfs4pnfsd.c |    2 +-
>>  fs/nfsd/nfs4state.c |    2 +-
>>  fs/nfsd/pnfsd.h     |    2 +-
>>  3 files changed, 3 insertions(+), 3 deletions(-)
>>
>> diff --git a/fs/nfsd/nfs4pnfsd.c b/fs/nfsd/nfs4pnfsd.c
>> index b1f67eb..e0669ad 100644
>> --- a/fs/nfsd/nfs4pnfsd.c
>> +++ b/fs/nfsd/nfs4pnfsd.c
>> @@ -1336,7 +1336,7 @@ nomatching_layout(struct nfs4_layoutrecall *clr)
>>  *   the layout and simulate a layout_return. Surly the client has forgotten
>>  *   these layouts or it would return them before the close.
>>  */
>> -void pnfs_roc(struct nfs4_client *clp, struct nfs4_file *fp)
>> +void pnfsd_roc(struct nfs4_client *clp, struct nfs4_file *fp)
>>  {
>>        struct nfs4_layout *lo, *nextlp;
>>
>> diff --git a/fs/nfsd/nfs4state.c b/fs/nfsd/nfs4state.c
>> index 1941051..b95589e 100644
>> --- a/fs/nfsd/nfs4state.c
>> +++ b/fs/nfsd/nfs4state.c
>> @@ -3620,7 +3620,7 @@ nfsd4_close(struct svc_rqst *rqstp, struct nfsd4_compound_state *cstate,
>>        update_stateid(&stp->st_stateid);
>>        memcpy(&close->cl_stateid, &stp->st_stateid, sizeof(stateid_t));
>>
>> -       pnfs_roc(stp->st_stateowner->so_client, stp->st_file);
>> +       pnfsd_roc(stp->st_stateowner->so_client, stp->st_file);
>>
>>        /* release_stateid() calls nfsd_close() if needed */
>>        release_open_stateid(stp);
>> diff --git a/fs/nfsd/pnfsd.h b/fs/nfsd/pnfsd.h
>> index a4c8a9c..6e60d2c 100644
>> --- a/fs/nfsd/pnfsd.h
>> +++ b/fs/nfsd/pnfsd.h
>> @@ -125,7 +125,7 @@ int nfs4_pnfs_cb_change_state(struct pnfs_get_state *);
>>  void nfs4_ds_get_verifier(stateid_t *, struct super_block *, u32 *);
>>  int put_layoutrecall(struct nfs4_layoutrecall *);
>>  void nomatching_layout(struct nfs4_layoutrecall *);
>> -void pnfs_roc(struct nfs4_client *clp, struct nfs4_file *fp);
>> +void pnfsd_roc(struct nfs4_client *clp, struct nfs4_file *fp);
>>  void *layoutrecall_done(struct nfs4_layoutrecall *);
>>  void nfsd4_cb_layout(struct nfs4_layoutrecall *);
>>  int _nfsd_layout_recall_cb(struct super_block *, struct inode *,
>> --
>> 1.7.6
>>
>>
> 
> I updated to the latest git today and I am still having trouble compiling.
> 
> [root@pdsi8 linux-pnfs]# make -j5 -s
> [...]
> drivers/isdn/hardware/mISDN/hfcpci.c:2319:2: warning: ignoring return
> value of ‘driver_for_each_device’, declared with attribute
> warn_unused_result [-Wunused-result]
> drivers/isdn/hardware/eicon/message.c: In function ‘mixer_notify_update’:
> drivers/isdn/hardware/eicon/message.c:11308:54: warning: array
> subscript is above array bounds [-Warray-bounds]
> fs/xfs/linux-2.6/xfs_iops.c: In function ‘_xfs_vn_fallocate’:
> fs/xfs/linux-2.6/xfs_iops.c:1070:3: error: implicit declaration of
> function ‘xfs_setattr’ [-Werror=implicit-function-declaration]
> cc1: some warnings being treated as errors
> make[2]: *** [fs/xfs/linux-2.6/xfs_iops.o] Error 1
> make[1]: *** [fs/xfs] Error 2
> make: *** [fs] Error 2
> make: *** Waiting for unfinished jobs....
> In file included from drivers/message/i2o/config-osm.c:39:0:
> drivers/message/i2o/i2o_config.c: In function ‘i2o_cfg_passthru’:
> [...]
> 
> [root@pdsi8 linux-pnfs]# make modules && make modules_install && make install
>   CHK     include/linux/version.h
>   CHK     include/generated/utsrelease.h
>   CALL    scripts/checksyscalls.sh
>   CC [M]  fs/xfs/linux-2.6/xfs_iops.o
> fs/xfs/linux-2.6/xfs_iops.c: In function ‘_xfs_vn_fallocate’:
> fs/xfs/linux-2.6/xfs_iops.c:1070:3: error: implicit declaration of
> function ‘xfs_setattr’ [-Werror=implicit-function-declaration]
> cc1: some warnings being treated as errors
> make[2]: *** [fs/xfs/linux-2.6/xfs_iops.o] Error 1
> make[1]: *** [fs/xfs] Error 2
> make: *** [fs] Error 2

This looks like an XFS problem now... did you see if any of the NFS code compiled this time?

I've had these issues before, and it's usually caused by something in my .config.  Generating a new one usually fixes it for me.

- Bryan

> 
> Here is my second make after a failed make:
> [root@pdsi8 linux-pnfs]# make -j5 -s
> fs/xfs/linux-2.6/xfs_iops.c: In function ‘_xfs_vn_fallocate’:
> fs/xfs/linux-2.6/xfs_iops.c:1070:3: error: implicit declaration of
> function ‘xfs_setattr’ [-Werror=implicit-function-declaration]
> cc1: some warnings being treated as errors
> make[2]: *** [fs/xfs/linux-2.6/xfs_iops.o] Error 1
> make[1]: *** [fs/xfs] Error 2
> make: *** [fs] Error 2
> make: *** Waiting for unfinished jobs....
> 
> 

--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux