Re: head -r333905 broke the builds [ -r333906 changed the details but they are still broken]

From: Mark Millard <marklmi26-fbsd_at_yahoo.com>
Date: Sat, 19 May 2018 20:50:33 -0700
On 2018-May-19, at 7:56 PM, Mark Millard <marklmi26-fbsd at yahoo.com> wrote:

> https://ci.freebsd.org shows all the builds being broken and
> going through the list -r333903 was working but -r333905 and
> later are not. (I ignore riscv64 here.)
> 
> Using powerpc64 as an -r333905 example:
> 
> --- sourcefilter.o ---
> In file included from /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/netinet/ip_var.h:39,
>                 from /usr/src/lib/libc/net/sourcefilter.c:43:
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:42: error: expected declaration specifiers or '...' before 'epoch_cb_count'
> cc1: warnings being treated as errors
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:42: warning: data definition has no type or storage class
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:43: error: expected declaration specifiers or '...' before 'epoch_cb_task'
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:43: warning: 'struct grouptask' declared inside parameter list
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:43: warning: its scope is only this definition or declaration, which is probably not what you want
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:43: warning: data definition has no type or storage class
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:43: error: conflicting types for 'DPCPU_DECLARE'
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:42: error: previous declaration of 'DPCPU_DECLARE' was here
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h: In function 'epoch_enter_preempt':
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:68: error: 'curthread' undeclared (first use in this function)
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:68: error: (Each undeclared identifier is reported only once
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:68: error: for each function it appears in.)
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h: In function 'epoch_exit_preempt':
> /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:81: error: 'curthread' undeclared (first use in this function)
> 
> 
> This seems to match up with:
> 
> Author: mmacy
> Date: Sun May 20 00:22:28 2018
> New Revision: 333905
> URL: 
> https://svnweb.freebsd.org/changeset/base/333905
> 
> 
> Log:
>  ip(6)_freemoptions: defer imo destruction to epoch callback task
> 
>  Avoid the ugly unlock / lock of the inpcbinfo where we need to
>  figure out what kind of lock we hold by simply deferring the
>  operation to another context. (Also a small dependency for
>  converting the pcbinfo read lock to epoch)
> 
> Modified:
>  head/sys/netinet/in_mcast.c
>  head/sys/netinet/in_pcb.c
>  head/sys/netinet/ip_var.h
>  head/sys/netinet6/in6_mcast.c
>  head/sys/netinet6/in6_var.h
>  head/sys/netinet6/ip6_var.h

It looks like -r333906 changed the error details. Using
i386 from ci.freebsd.org this time:

--- all_subdir_usr.sbin/sendmail ---
In file included from /usr/src/contrib/sendmail/src/daemon.c:51:
In file included from /usr/obj/usr/src/i386.i386/tmp/usr/include/netinet/ip_var.h:39:
In file included from /usr/obj/usr/src/i386.i386/tmp/usr/include/sys/epoch.h:33:
In file included from /usr/obj/usr/src/i386.i386/tmp/usr/include/sys/proc.h:47:
In file included from /usr/obj/usr/src/i386.i386/tmp/usr/include/sys/filedesc.h:42:
/usr/obj/usr/src/i386.i386/tmp/usr/include/sys/priority.h:128:8: error: redefinition of 'priority'
struct priority {
       ^
/usr/src/contrib/sendmail/src/sendmail.h:1081:8: note: previous definition is here
struct priority
       ^

This seems to happen for -r333906 and later versions on all
targets, including amd64. (I'm ignoring riscv64 that has been
broken for a long time.) powerpc64 agrees despite the gcc 4.2.1:

--- all_subdir_usr.sbin/sendmail ---
In file included from /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/filedesc.h:42,
                 from /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/proc.h:47,
                 from /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/epoch.h:33,
                 from /usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/netinet/ip_var.h:39,
                 from /usr/src/contrib/sendmail/src/daemon.c:51:
/usr/obj/usr/src/powerpc.powerpc64/tmp/usr/include/sys/priority.h:128: error: redefinition of 'struct priority'




===
Mark Millard
marklmi26-fbsd at yahoo.com
( dsl-only.net went
away in early 2018-Mar)
Received on Sun May 20 2018 - 01:50:37 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:41:16 UTC