Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 4 Dec 2016 15:53:23 +0200
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Andrey Chernov <ache@freebsd.org>
Cc:        "stable@freebsd.org" <stable@freebsd.org>, John Baldwin <jhb@FreeBSD.org>
Subject:   Re: if_cxgbev build error on -stable
Message-ID:  <20161204135323.GU54029@kib.kiev.ua>
In-Reply-To: <a3d2151e-3afb-5e0a-d320-3f35db93bc5f@freebsd.org>
References:  <ca38a6a0-a24e-4d10-4c1e-bd1f83679432@freebsd.org> <a3d2151e-3afb-5e0a-d320-3f35db93bc5f@freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, Dec 04, 2016 at 04:23:00PM +0300, Andrey Chernov wrote:
> It seems counter.h is included before systm.h where critical_* are declared.
It is more weird, since sys/counter.h was added in the stable/10
merge, but the header is not used in the HEAD sources. It is indeed
needed for stable/10 driver.  critical_enter() pre-requisite for counter.h
only exists on i386, which probably explains why John' build test did not
catched it.

I am preparing another MFC, so I committed the fix in r309529.
> 
> On 04.12.2016 16:12, Andrey Chernov wrote:
> > On recent i386 -stable I got:
> > 
> > ...
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/t4_vf.c -o t4_vf.o
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/t4_vf.c:37:
> > In file included from @/sys/counter.h:35:
> > ./machine/counter.h:170:3: error: implicit declaration of function
> >       'critical_enter' is invalid in C99
> >       [-Werror,-Wimplicit-function-declaration]
> >                 critical_enter();
> >                 ^
> > ./machine/counter.h:172:3: error: implicit declaration of function
> >       'critical_exit' is invalid in C99
> >       [-Werror,-Wimplicit-function-declaration]
> >                 critical_exit();
> >                 ^
> > ./machine/counter.h:172:3: note: did you mean 'critical_enter'?
> > ./machine/counter.h:170:3: note: 'critical_enter' declared here
> >                 critical_enter();
> >                 ^
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/t4_vf.c:47:
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/common/common.h:33:
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/common/t4_hw.h:33:
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/osdep.h:39:
> > @/sys/systm.h:196:6: error: conflicting types for 'critical_enter'
> > void    critical_enter(void);
> >         ^
> > ./machine/counter.h:170:3: note: previous implicit declaration is here
> >                 critical_enter();
> >                 ^
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/t4_vf.c:47:
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/common/common.h:33:
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/common/t4_hw.h:33:
> > In file included from
> > /usr/src/sys/modules/cxgbe/if_cxgbev/../../../dev/cxgbe/osdep.h:39:
> > @/sys/systm.h:197:6: error: conflicting types for 'critical_exit'
> > void    critical_exit(void);
> >         ^
> > ./machine/counter.h:172:3: note: previous implicit declaration is here
> >                 critical_exit();
> >                 ^
> > 4 errors generated.
> > *** Error code 1
> > 
> > Stop.
> > 
> 
> _______________________________________________
> freebsd-stable@freebsd.org mailing list
> https://lists.freebsd.org/mailman/listinfo/freebsd-stable
> To unsubscribe, send any mail to "freebsd-stable-unsubscribe@freebsd.org"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20161204135323.GU54029>