Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 11 Jan 2012 21:52:28 -0600
From:      Andre Goree <andre@drenet.info>
To:        Rob Clark <rpclark@tds.net>
Cc:        freebsd-stable@freebsd.org
Subject:   Re: GENERIC make buildkernel error / fails - posix_fadvise
Message-ID:  <CAN-pd=cPY=Eg1RintaBx6GAon3FsLm-X0h6yvSBxzq=EZ5ukbg@mail.gmail.com>
In-Reply-To: <20120111161110.4258969c.rpclark@tds.net>
References:  <20120111161110.4258969c.rpclark@tds.net>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, Jan 11, 2012 at 3:11 PM, Rob Clark <rpclark@tds.net> wrote:

> System: Dell 600sc
> Currently running: 8.2-RELEASE
>
> In attempting to update this system to 8-STABLE I did
> what I usually do to update a system (see below).
> make buildworld completes successfully, but make
> buildkernel does not. I usually create a custom
> kernel, but for this system I went with GENERIC as
> is.
>
> The error message is:
> /usr/src/sys/kern/init_sysent.c:568: error: invalid
> application of 'sizeof' to incomplete type 'struct
> posix_fadvise_args' /usr/src/sys/kern/init_sysent.c:568:
> error: 'posix_fadvise' undeclared here (not in a
> function) *** Error code 1
>
> I found this pertaining to
> posix_fadvise in /usr/src/UPDATING:
> 20120106:
> A new VOP_ADVISE() was added to support
> posix_fadvise(2).  All filesystem modules must be
> recompiled.
>
> Not sure what 'filesystem modules' is or referring to
> here. Also, am I not already recompiling 'All
> filesystem modules' during make buildworld?
>
> What I did (and usually do):
> csup -L 2 /root/stable-supfile
> rm -rf /etc.old cp -Rp /etc /etc.old
> adjkerntz -i
> cd /usr/obj
> chflags -R noschg *
> rm -rf *
> cd /usr/src
> /usr/bin/time -h make buildworld || exit
>
> build world finishes successfully.
>
> Then:
> cd /usr/src
> make buildkernel KERNCONF=GENERIC
> make installkernel KERNCONF=GENERIC
>
> This fails with error:
> /usr/src/sys/kern/init_sysent.c:568: error: invalid
> application of 'sizeof' to incomplete type 'struct
> posix_fadvise_args' /usr/src/sys/kern/init_sysent.c:568:
> error: 'posix_fadvise' undeclared here (not in a
> function) *** Error code 1
>
> Stop in /usr/obj/usr/src/sys/GENERIC.
> *** Error code 1
>
> Stop in /usr/src.
> *** Error code 1
>
> Stop in /usr/src.
>
> Following attempts:
>
> Attempt 2:
> I tried using 'make buildkernel' (without
> specifying KERNCONF) make buildkernel fails with
> same error.
>
> Attempt 3:
> Started from the beginning (same process as above)
> with new csup (sources) -- make buildkernel still
> failed with same error.
>
> Any help here would be greatly appreciated.
> In way over my head here. I have all logs from all
> attempts of the above if needed.
>
> Thanks,
> Rob Clark
> <rpclark@tds.net>
> _______________________________________________
> freebsd-stable@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"
>


Perhaps two 'make cleandir' inside /usr/src will help.

Run it just after removing everything within /usr/obj.

FWIW, I usually run this simple bash script before building world on my
machines:

#!/bin/bash
chflags -R noschg /usr/obj/usr
rm -rf /usr/obj/usr
cd /usr/src ; make cleandir ; make cleandir
exit 0



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAN-pd=cPY=Eg1RintaBx6GAon3FsLm-X0h6yvSBxzq=EZ5ukbg>