Re: Buildworld times (was Re: svn commit: r350256 - in stable/12: . contrib/compiler-rt/lib/sanitizer_common contrib/libunwind/src contrib/llvm/lib/DebugInfo/DWARF contrib/llvm/lib/MC contrib/llvm/lib

2019-07-25 Thread mike tancsa


On 7/25/2019 12:09 PM, Dimitry Andric wrote:
> Hmmm, is the logic reversed somehow ? The good news is if nothing is
>>> defined, it does the right thing.
>> The idea is that the default is to *not* bootstrap the compiler, if the
>> system compiler is new enough.  E.g. if you build r350256 from a system
>> built before r350256, it will normally automatically bootstrap
>> everything.
>>
>> E.g., your previous builds did not have to bootstrap, and now they do,
>> which is why they take longer.
>>
>> So the only good way to compare is to force MK_SYSTEM_COMPILER=yes and
>> MK_SYSTEM_LINKER=yes, so both buildworlds will do the same thing.
>>
>> I did a few tests on a relatively fast machine, and buildworld with
>> those settings on took approximately the same time at r350255 and
>> r350256.  I'm now repeating those experiments to feed the results to
>> ministat.

Thanks again for verifying and explaining all this.  I was interpreting

MK_SYSTEM_LINKER=yes

as "along with building world, build the compiler and linker from scratch first"

vs

"using the existing installed system linker and compiler to build world"

and as you pointed out, when its a version difference it gets overridden. 

> Repeating buildworld 3 times for r350255 and r350256 (with both


The times on my machines all look normal now too!


    ---Mike


___
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: net/ocserv (and ifconfig) unable to destroy tun interfaces post r345045

2019-07-25 Thread Kyle Evans
On Thu, Jul 25, 2019 at 9:46 AM Kyle Evans  wrote:
>
> On Thu, Jul 25, 2019 at 9:41 AM Trond Endrestøl
>  wrote:
> >
> > Hi,
> >
> > I have a VPN service running net/ocserv 0.12.4_1. Everything is ok
> > until the first client disconnects. The main ocserv process hangs
> > while destroying the tun interface, waiting indefinitely on
> > "tun_cond".
> >
> > I ran an ocserv executable containing debug symbols through gdb and I
> > had a breakpoint on the call to ioctl(fd, SIOCIFDESTROY, ), at
> > tun.c:770 of net/ocserv.
> >
> > The call to ioctl() has apparently a valid file descriptor, fd, and
> > the fields of ifr are all zero, save the ifr_name field which contains
> > "vpns0" and is properly null terminated.
> >
> > On the first attempt, I let the code run its course and had to reboot
> > to recover.
> >
> > On the second attempt, I killed the ocserv process from within gdb. I
> > ran "ifconfig vpns0 destroy" myself, and ifconfig froze immediately.
> > Rebooting is the only way to recover.
> >
> > Reverting to stable/12 r345045 makes ocserv serve the clients again.
> >
> > My guess is that one or more of r345285, r347378, and/or r348124, all
> > related to sys/net/if_tun.c, are to blame.
> >
> > Can someone verify my claims?
> >
>
> Hi,
>
> I'll take a look when I get a bit- a hang on tun_cond would be
> expected if a process has the tun cdev open()'d still. The device
> should fail to destroy until it's closed so we don't leave the
> controlling application in a funky state. There were some bugs around
> that leaving the driver in a funky state that I fixed somewhere along
> the way here.
>
> Thanks,
>
> Kyle Evans

To follow-up to the list as well, I've added a comment on the Gitlab
issue [0] -- my suspicion is that ocserv is violating the tunnel
hand-off protocol (TUNSIFPID) and technically leaking the fd in the
process that created it while trying to close/destroy it in another
pid that actually controls the tunnel.

[0] https://gitlab.com/openconnect/ocserv/issues/213
___
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: Random panics in 11.0 and 12.0 on J1900

2019-07-25 Thread James Snow
Hi Marco and Adam,

Thanks for the responses. Answers to your questions are inline

On Sat, Jul 20, 2019 at 06:56:19PM +0200, Marco Steinbach wrote:

> I've outfitted all of them with 4-port Intel PRO/1000 PCIe driven by
> igb(4), and am not using the onboard re(4) NICs.

We use the onboard re(4) NICs and they have been their own problem. It's
possible they are implicated here.

> I can't recall ever seeing a panic like you described. Could you share
> a full dmesg and what mainboard(s) you are using ?

/var/run/dmesg.boot from the 12.0 host that panicked is included below.
The board is a "Q1900G2-M V2.0".


On Wed, Jul 24, 2019 at 07:53:54PM -0500, Adam wrote:

> What is the size of this J1900 set?

Large enough that 1% panicking daily means I'm seeing multiple panics
per day.

> Do you also have J1900 which do not exhibit the problem?

I do have a small set which have not exhibited the problem. They are
about 2.5-3% of the fleet. What makes them unique is they are running 10.3.

There are also some 11.0s which have not panicked, but given that we've
seen hosts go ~620 days before a panic, it's possible they just haven't
panicked yet; they are also a minority of the 11s. (It's also possible
the 10.3s just haven't panicked yet, but as they have been deployed the
longest, that seems less probable with each passing day.)

Personally, I believe this is a hardware problem, but these 10.3s that
don't panic are a big hole in that theory.

> memtest cannot conclusively confirm dimm is good, it is only conclusive on
> bad ones.  You can find more info about others learning this lesson
> here(see extended comments):
> 
> https://superuser.com/questions/547822/how-many-passes-are-enough-with-memtest
> 
> 
> > Two, a small number of systems on the same hardware are running
> > 10.3-RELEASE, and have experienced no panics in their history. Panics
> > have only happened on 11s, and now 12.
> >
> 
> Once upon a time in a hypothetical universe, I had a stick of ram which
> would run on Win98 for very long periods without issue.  It wouldn't even
> boot with Win NT.  After the manufacturer sent the same one back twice, I
> tased it and RMA'd again.  This time, I got a new stick and all was good.
> 
> The point is memory issues can be very subtle and replacing with known good
> modules is the easiest way to be sure.

Duly noted, and I don't disagree, but given your comments about memtest
and confirming memory to be good, how do you get to "known good?"

Thanks for the input. dmesg output follows below.


-Snow


---<>---
Copyright (c) 1992-2018 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
The Regents of the University of California. All rights reserved.
FreeBSD is a registered trademark of The FreeBSD Foundation.
FreeBSD 12.0-RELEASE r341666 GENERIC amd64
FreeBSD clang version 6.0.1 (tags/RELEASE_601/final 335540) (based on LLVM 
6.0.1)
CPU: Intel(R) Celeron(R) CPU  J1900  @ 1.99GHz (2000.06-MHz K8-class CPU)
  Origin="GenuineIntel"  Id=0x30678  Family=0x6  Model=0x37  Stepping=8
  
Features=0xbfebfbff
  
Features2=0x41d8e3bf
  AMD Features=0x28100800
  AMD Features2=0x101
  Structured Extended Features=0x2282
  Structured Extended Features3=0xc00
  VT-x: PAT,HLT,MTF,PAUSE,EPT,UG,VPID
  TSC: P-state invariant, performance statistics
real memory  = 8589934592 (8192 MB)
avail memory = 8089657344 (7714 MB)
Event timer "LAPIC" quality 600
ACPI APIC Table: 
WARNING: L1 data cache covers fewer APIC IDs than a core (0 < 1)
FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs
FreeBSD/SMP: 1 package(s) x 4 core(s)
random: unblocking device.
Firmware Warning (ACPI): 32/64X length mismatch in FADT/Gpe0Block: 128/32 
(20181003/tbfadt-748)
ioapic0  irqs 0-86 on motherboard
Launching APs: 3 2 1
Timecounter "TSC" frequency 256560 Hz quality 1000
random: entropy device external interface
kbd1 at kbdmux0
netmap: loaded module
[ath_hal] loaded
random: registering fast source Intel Secure Key RNG
random: fast provider: "Intel Secure Key RNG"
nexus0
cryptosoft0:  on motherboard
acpi0:  on motherboard
acpi0: Power Button (fixed)
unknown: I/O range not supported
cpu0:  on acpi0
atrtc0:  port 0x70-0x77 on acpi0
atrtc0: Warning: Couldn't map I/O.
atrtc0: registered as a time-of-day clock, resolution 1.00s
Event timer "RTC" frequency 32768 Hz quality 0
hpet0:  iomem 0xfed0-0xfed003ff irq 8 on acpi0
Timecounter "HPET" frequency 14318180 Hz quality 950
Event timer "HPET" frequency 14318180 Hz quality 450
Event timer "HPET1" frequency 14318180 Hz quality 440
Event timer "HPET2" frequency 14318180 Hz quality 440
attimer0:  port 0x40-0x43,0x50-0x53 irq 0 on acpi0
Timecounter "i8254" frequency 1193182 Hz quality 0
Event timer "i8254" frequency 1193182 Hz quality 100
Timecounter "ACPI-safe" frequency 3579545 Hz quality 850
acpi_timer0: <24-bit timer at 3.579545MHz> port 0x408-0x40b on acpi0
pcib0:  port 0xcf8-0xcff on acpi0
pci0:  on pcib0
vgapci0:  port 0xf080-0xf087 mem 

Re: Buildworld times (was Re: svn commit: r350256 - in stable/12: . contrib/compiler-rt/lib/sanitizer_common contrib/libunwind/src contrib/llvm/lib/DebugInfo/DWARF contrib/llvm/lib/MC contrib/llvm/lib

2019-07-25 Thread Dimitry Andric
On 24 Jul 2019, at 23:21, Dimitry Andric  wrote:
> 
> On 24 Jul 2019, at 22:56, mike tancsa  wrote:
>> 
>> On 7/24/2019 1:21 PM, mike tancsa wrote:
>>> On 7/24/2019 12:02 PM, Dimitry Andric wrote:
> ...
>>> # cat /etc/src.conf /etc/make.conf
>>> MK_SYSTEM_COMPILER=no
>>> MK_SYSTEM_LINKER=no
>>> KERNCONF=server
>>> MK_SYSTEM_COMPILER=no
>>> MK_SYSTEM_LINKER=no
>> 
>> Hmmm, is the logic reversed somehow ?  The good news is if nothing is
>> defined, it does the right thing.
> 
> The idea is that the default is to *not* bootstrap the compiler, if the
> system compiler is new enough.  E.g. if you build r350256 from a system
> built before r350256, it will normally automatically bootstrap
> everything.
> 
> E.g., your previous builds did not have to bootstrap, and now they do,
> which is why they take longer.
> 
> So the only good way to compare is to force MK_SYSTEM_COMPILER=yes and
> MK_SYSTEM_LINKER=yes, so both buildworlds will do the same thing.
> 
> I did a few tests on a relatively fast machine, and buildworld with
> those settings on took approximately the same time at r350255 and
> r350256.  I'm now repeating those experiments to feed the results to
> ministat.

Repeating buildworld 3 times for r350255 and r350256 (with both
MK_SYSTEM_COMPILER and MK_SYSTEM_LINKER set to "yes") shows no
difference in measured real time, according to ministat:

$ head real-*.txt
==> real-r350255.txt <==
1562.12
1587.61
1582.78

==> real-r350256.txt <==
1574.50
1559.20
1584.50

$ ministat real-*.txt
x real-r350255.txt
+ real-r350256.txt
+--+
|+  x +   x   +   x|
|  |_|A___M__AM__|||
+--+
N   Min   MaxMedian   AvgStddev
x   3   1562.12   1587.61   1582.78 1577.5033 13.539477
+   31559.21584.51574.5 1572.7333 12.742187
No difference proven at 95.0% confidence

-Dimitry



signature.asc
Description: Message signed with OpenPGP


Re: Rel. 11.3: Kernel doesn't compile anymore (SVN-334762, please fix!)

2019-07-25 Thread Hans Petter Selasky

Hi Allan,

Can ZFS use atomic_add_64() in the kernel for i386 instead of building 
its own variant?


--HPS

On 2019-07-25 13:13, Peter wrote:

Hi Hans Petter,
  glad to read You! :)
  
On Thu, Jul 25, 2019 at 09:39:26AM +0200, Hans Petter Selasky wrote:

! On 2019-07-25 01:00, Peter wrote:

! >> The offending feature is either
! >> options ZFS
! >> or
! >> device dtrace
! >> (Adding any of these to the GENERIC config gives the same error.)

! Can you attach your kernel configuration file?

Yes, but to what point?
I can reproduce this with the GENERIC configuration by adding
   "options ZFS"

(My custom KERNCONF relates to my local patches, and is rather
pointless without these. So at first I tried to reproduce without
my local patches and with minimal changes from GENERIC config. And
the minimal change is to add "options ZFS" into the GENERIC conf.)

See here:

root@disp:/usr/src/sys/i386/compile/GENERIC # make
linking kernel.full
atomic.o: In function `atomic_add_64':
/usr/src/sys/i386/compile/GENERIC/./machine/atomic.h:629: multiple definition 
of `atomic_add_64'
opensolaris_atomic.o:/usr/src/sys/i386/compile/GENERIC/../../../cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S:71:
 first defined here
*** Error code 1

Stop.
make: stopped in /usr/src/sys/i386/compile/GENERIC
root@disp:/usr/src/sys/i386/compile/GENERIC #

root@disp:/usr/src/sys/i386/compile/GENERIC # cd ../../../..
root@disp:/usr/src # svn stat
M   sys/i386/conf/GENERIC
root@disp:/usr/src # svn diff
Index: sys/i386/conf/GENERIC
===
--- sys/i386/conf/GENERIC   (revision 350287)
+++ sys/i386/conf/GENERIC   (working copy)
@@ -1,3 +1,4 @@
+options ZFS
  #
  # GENERIC -- Generic kernel configuration file for FreeBSD/i386
  #

root@disp:/usr/src # svn info
Path: .
Working Copy Root Path: /usr/src
URL: https://svn0.us-east.freebsd.org/base/releng/11.3
Relative URL: ^/releng/11.3
Repository Root: https://svn0.us-east.freebsd.org/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 350287
Node Kind: directory
Schedule: normal
Last Changed Author: gordon
Last Changed Rev: 350287
Last Changed Date: 2019-07-24 12:58:21 + (Wed, 24 Jul 2019)





___
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: net/ocserv (and ifconfig) unable to destroy tun interfaces post r345045

2019-07-25 Thread Kyle Evans
On Thu, Jul 25, 2019 at 9:41 AM Trond Endrestøl
 wrote:
>
> Hi,
>
> I have a VPN service running net/ocserv 0.12.4_1. Everything is ok
> until the first client disconnects. The main ocserv process hangs
> while destroying the tun interface, waiting indefinitely on
> "tun_cond".
>
> I ran an ocserv executable containing debug symbols through gdb and I
> had a breakpoint on the call to ioctl(fd, SIOCIFDESTROY, ), at
> tun.c:770 of net/ocserv.
>
> The call to ioctl() has apparently a valid file descriptor, fd, and
> the fields of ifr are all zero, save the ifr_name field which contains
> "vpns0" and is properly null terminated.
>
> On the first attempt, I let the code run its course and had to reboot
> to recover.
>
> On the second attempt, I killed the ocserv process from within gdb. I
> ran "ifconfig vpns0 destroy" myself, and ifconfig froze immediately.
> Rebooting is the only way to recover.
>
> Reverting to stable/12 r345045 makes ocserv serve the clients again.
>
> My guess is that one or more of r345285, r347378, and/or r348124, all
> related to sys/net/if_tun.c, are to blame.
>
> Can someone verify my claims?
>

Hi,

I'll take a look when I get a bit- a hang on tun_cond would be
expected if a process has the tun cdev open()'d still. The device
should fail to destroy until it's closed so we don't leave the
controlling application in a funky state. There were some bugs around
that leaving the driver in a funky state that I fixed somewhere along
the way here.

Thanks,

Kyle Evans
___
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


net/ocserv (and ifconfig) unable to destroy tun interfaces post r345045

2019-07-25 Thread Trond Endrestøl
Hi,

I have a VPN service running net/ocserv 0.12.4_1. Everything is ok 
until the first client disconnects. The main ocserv process hangs 
while destroying the tun interface, waiting indefinitely on 
"tun_cond".

I ran an ocserv executable containing debug symbols through gdb and I 
had a breakpoint on the call to ioctl(fd, SIOCIFDESTROY, ), at 
tun.c:770 of net/ocserv.

The call to ioctl() has apparently a valid file descriptor, fd, and 
the fields of ifr are all zero, save the ifr_name field which contains 
"vpns0" and is properly null terminated.

On the first attempt, I let the code run its course and had to reboot 
to recover.

On the second attempt, I killed the ocserv process from within gdb. I 
ran "ifconfig vpns0 destroy" myself, and ifconfig froze immediately.
Rebooting is the only way to recover.

Reverting to stable/12 r345045 makes ocserv serve the clients again.

My guess is that one or more of r345285, r347378, and/or r348124, all 
related to sys/net/if_tun.c, are to blame.

Can someone verify my claims?

See also:
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=238500
https://gitlab.com/openconnect/ocserv/issues/213

-- 
Trond.
___
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


Re: Rel. 11.3: Kernel doesn't compile anymore (SVN-334762, please fix!)

2019-07-25 Thread Peter
Hi Hans Petter,
 glad to read You! :)
 
On Thu, Jul 25, 2019 at 09:39:26AM +0200, Hans Petter Selasky wrote:
! On 2019-07-25 01:00, Peter wrote:

! >> The offending feature is either
! >> options ZFS
! >> or
! >> device dtrace
! >> (Adding any of these to the GENERIC config gives the same error.)

! Can you attach your kernel configuration file?

Yes, but to what point?
I can reproduce this with the GENERIC configuration by adding
  "options ZFS"

(My custom KERNCONF relates to my local patches, and is rather
pointless without these. So at first I tried to reproduce without
my local patches and with minimal changes from GENERIC config. And
the minimal change is to add "options ZFS" into the GENERIC conf.)

See here:

root@disp:/usr/src/sys/i386/compile/GENERIC # make 
linking kernel.full
atomic.o: In function `atomic_add_64':
/usr/src/sys/i386/compile/GENERIC/./machine/atomic.h:629: multiple definition 
of `atomic_add_64'
opensolaris_atomic.o:/usr/src/sys/i386/compile/GENERIC/../../../cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S:71:
 first defined here
*** Error code 1

Stop.
make: stopped in /usr/src/sys/i386/compile/GENERIC
root@disp:/usr/src/sys/i386/compile/GENERIC #

root@disp:/usr/src/sys/i386/compile/GENERIC # cd ../../../..
root@disp:/usr/src # svn stat
M   sys/i386/conf/GENERIC
root@disp:/usr/src # svn diff
Index: sys/i386/conf/GENERIC
===
--- sys/i386/conf/GENERIC   (revision 350287)
+++ sys/i386/conf/GENERIC   (working copy)
@@ -1,3 +1,4 @@
+options ZFS
 #
 # GENERIC -- Generic kernel configuration file for FreeBSD/i386
 #

root@disp:/usr/src # svn info
Path: .
Working Copy Root Path: /usr/src
URL: https://svn0.us-east.freebsd.org/base/releng/11.3
Relative URL: ^/releng/11.3
Repository Root: https://svn0.us-east.freebsd.org/base
Repository UUID: ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
Revision: 350287
Node Kind: directory
Schedule: normal
Last Changed Author: gordon
Last Changed Rev: 350287
Last Changed Date: 2019-07-24 12:58:21 + (Wed, 24 Jul 2019)


___
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"


FreeBSD CI Weekly Report 2019-07-21

2019-07-25 Thread Li-Wen Hsu
(Please send the followup to freebsd-testing@ and note Reply-To is set.)

FreeBSD CI Weekly Report 2019-07-21
===

Here is a summary of the FreeBSD Continuous Integration results for the period
from 2019-07-15 to 2019-07-21.

During this period, we have:

* 1659 builds (96.7% (-0.7) passed, 3.3% (+0.7) failed) were executed on
  aarch64, amd64, armv6, armv7, i386, mips, mips64, powerpc, powerpc64,
  powerpcspe, riscv64, sparc64 architectures for head, stable/12, stable/11
  branches.
* 306 test runs (56.2% (+1.9) passed, 43.1% (+5.6) unstable, 0.7% (-7.5)
  exception) were executed on amd64, i386, riscv64 architectures for head,
  stable/12, stable/11 branches.
* 18 doc builds (100% (+0) passed)

Test case status (by 2019-07-21 23:59):
| Branch/Architecture | Total | Pass | Fail | Skipped |
| --- | - |  |  | --- |
| head/amd64  | 7460  | 7411 | 0| 49  |
| head/i386   | 7458  | 7406 | 4| 48  |
| 12-STABLE/amd64 | 7388  | 7341 | 0| 47  |
| 12-STABLE/i386  | 7386  | 7335 | 5| 46  |
| 11-STABLE/amd64 | 6845  | 6800 | 0| 45  |
| 11-STABLE/i386  | 6843  | 6759 | 34   | 50  |

(The statistics from experimental jobs are omitted)

If any of the issues found by CI are in your area of interest or expertise
please investigate the PRs listed below.

The latest web version of this report is available at
https://hackmd.io/s/rJJdcpCbH and archive is available at
http://hackfoldr.org/freebsd-ci-report/, any help is welcome.

## Fixed Tests

* https://ci.freebsd.org/job/FreeBSD-stable-12-i386-test/
* sys.opencrypto.runtests.main
  Fixed in http://svnweb.freebsd.org/changeset/base/350164

## Failing Tests

* https://ci.freebsd.org/job/FreeBSD-head-i386-test/
* sys.netpfil.pf.forward.v6
* sys.netpfil.pf.forward.v4
* sys.netpfil.pf.set_tos.v4
* Analysis from kp@:
* 
https://lists.freebsd.org/pipermail/freebsd-testing/2019-June/001933.html
* 
https://lists.freebsd.org/pipermail/freebsd-testing/2019-June/001934.html

* https://ci.freebsd.org/job/FreeBSD-stable-12-i386-test/
* Same as -head:
* sys.netpfil.pf.forward.v6
* sys.netpfil.pf.forward.v4
* sys.netpfil.pf.set_tos.v4
* lib.libregex.exhaust_test.regcomp_too_big
* flaky, sometimes failed with:
  ```
  /usr/src/contrib/netbsd-tests/lib/libc/regex/t_exhaust.c:72: p != 
NULL not met
  ```

* https://ci.freebsd.org/job/FreeBSD-stable-11-i386-test/
* local.kyua.* (31 cases)
* local.lutok.* (3 cases)

## Failing and Flaky Tests (from experimental jobs)

* https://ci.freebsd.org/job/FreeBSD-head-amd64-dtrace_test/
* Flakey test case: common.misc.t_dtrace_contrib.tst_dynopt_d
  https://bugs.freebsd.org/237641

* https://ci.freebsd.org/job/FreeBSD-head-amd64-test_zfs/
* There are ~60 failing cases, including flakey ones, see 
https://ci.freebsd.org/job/FreeBSD-head-amd64-test_zfs/lastCompletedBuild/testReport/
 for more details

## Disabled Tests

* lib.libc.sys.mmap_test.mmap_truncate_signal
  https://bugs.freebsd.org/211924
* sys.fs.tmpfs.mount_test.large
  https://bugs.freebsd.org/212862
* sys.fs.tmpfs.link_test.kqueue
  https://bugs.freebsd.org/213662
* sys.kqueue.libkqueue.kqueue_test.main
  https://bugs.freebsd.org/233586
* usr.bin.procstat.procstat_test.command_loogle.com/ine_arguments
  https://bugs.freebsd.org/233587
* usr.bin.procstat.procstat_test.environment
  https://bugs.freebsd.org/233588
* sys.netinet.socket_afinet.socket_afinet_bind_zero (new)
  https://bugs.freebsd.org/238781

## Issues

### Cause build fails
* https://bugs.freebsd.org/233735
  Possible build race: genoffset.o /usr/src/sys/sys/types.h: error: 
machine/endian.h: No such file or directory
* https://bugs.freebsd.org/233769
  Possible build race: ld: error: unable to find library -lgcc_s
* https://bugs.freebsd.org/238828
  Possible build race: lib/libsysdecode/tables.h:948: error: 
'IPV6_MIN_MEMBERSHIPS' undeclared

### Cause kernel panics
* https://bugs.freebsd.org/238870
  sys.netpfil.pf.names.names and sys.netpfil.pf.synproxy.synproxy cause panic
  Patch exists:
* https://reviews.freebsd.org/D20868
* https://reviews.freebsd.org/D20869

### Open
* https://bugs.freebsd.org/237077
  possible race in build: /usr/src/sys/amd64/linux/linux_support.s:38:2: error: 
expected relocatable expression
* https://bugs.freebsd.org/237403
  Tests in sys/opencrypto should be converted to Python3
* https://bugs.freebsd.org/237641
  Flakey test case: common.misc.t_dtrace_contrib.tst_dynopt_d
* https://bugs.freebsd.org/237652
  tests.hotspare.hotspare_test.hotspare_snapshot_001_pos timeout since 
somewhere in (r346814, r 346845]
* https://bugs.freebsd.org/237655
  Non-deterministic panic when running pf tests in interface ioctl code (NULL 
passed to strncmp)
* https://bugs.freebsd.org/237656
  "Freed UMA keg (rtentry) was not empty (18 

Re: Rel. 11.3: Kernel doesn't compile anymore (SVN-334762, please fix!)

2019-07-25 Thread Hans Petter Selasky

On 2019-07-25 01:00, Peter wrote:

Trying to compile my custom kernel in Rel. 11.3 results in this:

-- kernel.full ---
linking kernel.full
atomic.o: In function `atomic_add_64':
/usr/obj/usr/src/sys/E1R11V1/./machine/atomic.h:629: multiple definition of 
`atomic_add_64'
opensolaris_atomic.o:/usr/src/sys/cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S:71:
 first defined here
*** [kernel.full] Error code 1

Same config worked with 11.2

The offending feature is either
options ZFS
or
device dtrace
(Adding any of these to the GENERIC config gives the same error.)

This happens only when building for i386. Building amd64 with these
options works.



Trying to analyze the issue:


The problem appears with SVN 334762 in 11.3:

This change adds two new functions to sys/i386/include/atomic.h:
atomic_add_64()
atomic_subtract_64()
[I don't really understand why this goes into a headerfile, but, well,
nevermind]

Also, this change deactivates two functions (only in case *i386*) from
sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c
atomic_add_64()
atomic_del_64()
[Now, there seems to be a slight strangeness here: if we *deactivate*
atomic_del_64(), and *insert* atomic_subtract_64(), then these two
names are not the same, and I might suppose that the atomic_del_64()
is then somehow missing. But, well, nevermind]

Now, the strange thing:
this file sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c
from which now two functions get excluded *only in case i386*, is not
even compiled for i386:


/usr/src/sys/conf$ grep opensolaris_atomic.c *
files.arm:cddl/compat/opensolaris/kern/opensolaris_atomic.c optional zfs | dtrace 
compile-with "${CDDL_C}"
files.mips:cddl/compat/opensolaris/kern/opensolaris_atomic.coptional zfs | dtrace 
compile-with "${CDDL_C}"
files.powerpc:cddl/compat/opensolaris/kern/opensolaris_atomic.c optional 
zfs powerpc | dtrace powerpc compile-with "${ZFS_C}"
files.riscv:cddl/compat/opensolaris/kern/opensolaris_atomic.c   optional zfs | dtrace 
compile-with "${CDDL_C}"


[So maybe that's the reason why the now lack of atomic_del_64() is not
complained? Or maybe it's not used, or maybe I didn't find some
definition whereever. Well, nevermind]


Anyway, the actual name clash happens between
sys/cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S,
because that one *is* compiled:


/usr/src/sys/conf$ grep i386/opensolaris_atomic.S *
files.i386:cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S optional 
zfs | dtrace compile-with "${ZFS_S}"



I tried to move out the changes from SVN 334762. Sadly, that didn't
work, because something does already use these atomic_add_64() stuff,

So instead, I did this one:

--- sys/cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S
(revision 350287)
+++ sys/cddl/contrib/opensolaris/common/atomic/i386/opensolaris_atomic.S
(working copy)
@@ -66,8 +66,7 @@
  * specific mapfile and remove the NODYNSORT attribute
  * from atomic_add_64_nv.
  */
-   ENTRY(atomic_add_64)
-   ALTENTRY(atomic_add_64_nv)
+   ENTRY(atomic_add_64_nv)
 pushl   %edi
 pushl   %ebx
 movl12(%esp), %edi  // %edi = target address
@@ -87,7 +86,6 @@
 popl%edi
 ret
 SET_SIZE(atomic_add_64_nv)
-   SET_SIZE(atomic_add_64)
  
 ENTRY(atomic_or_8_nv)

 movl4(%esp), %edx   // %edx = target address


And at least it compiles now. If it actually runs, that remains to be
found out.


Can you attach your kernel configuration file?

--HPS

___
freebsd-stable@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-stable
To unsubscribe, send any mail to "freebsd-stable-unsubscr...@freebsd.org"