270297 Commits

Author SHA1 Message Date
ozaki-r
042d1b5f86 Initialize DAD components properly
The original code initialized each component in non-init functions such as
arp_dad_start and nd6_dad_find, conditionally based on a global flag for each.
However, it was racy because the flag and the code around it were not
protected by a lock and could cause a kernel panic at worst.

Fix the issue by initializing the components in bootup as usual.
2019-09-25 09:52:32 +00:00
maya
146714e767 Adjust .PATH 2019-09-24 21:33:48 +00:00
kamil
2bb9aadb1b Add missing ; 2019-09-24 21:03:29 +00:00
kamil
6d130c780a Add a bunch of meta files from git and hg to ignore from CVS imports
This will allow interop of src/ with git and hg without malforming repos.
2019-09-24 21:01:50 +00:00
maya
c514a92678 Updated mesa. 2019-09-24 19:50:49 +00:00
maya
8f9881e2e6 Update build logic for mesa 19.1.7.
A lot of files are now living outside of dist, since they're not in the
distributed sources: they're generated, usually by python/meson.

The remaining changes are due to files being moved around.
2019-09-24 19:29:41 +00:00
kamil
6f22d54e25 Add a temporary ctassert checking whether void* and intptr_t are compatible 2019-09-24 19:21:45 +00:00
maya
f8483c1cb1 Unless we add --sysroot, the netbsd src tree headers won't be used.
Do so, so we don't rely on the build machine to have <endian.h> for
this macro check.

Using ${CPPFLAGS} rather than my own encoding of --sysroot, since it
already includes it.

Tested by agc, thanks.
2019-09-24 19:19:49 +00:00
maya
33a768ce2e Ignore our default core file pattern rather than one of another system.
"core" shows up as a path sometimes.
2019-09-24 17:23:06 +00:00
jmcneill
71f7012acf Use correct #cells for parent address when decoding ranges 2019-09-24 15:23:34 +00:00
msaitoh
51569a1b71 Use IFM_50G_SR2. 2019-09-24 14:39:38 +00:00
maya
631bfe425c Avoid duplicate PRIxBUSADDR and follow the likely intention, providing PRIxBSH. 2019-09-24 14:26:32 +00:00
nakayama
09498a8d06 Add ${DEST_DIR} prefix to check target directory not host directory. 2019-09-24 13:27:39 +00:00
wiz
e78f83e1ff Merge single letter options in usage. 2019-09-24 11:31:06 +00:00
mlelstv
b1d2823e9e Remove debug printf. 2019-09-24 04:56:54 +00:00
manu
7986086211 Fix multiboot32 argument usage 2019-09-24 00:47:46 +00:00
kamil
fb9540262a Remove __noubsan from in6_clearscope()
The alignment issues for x86 should be handled by
 - src/sys/arch/amd64/include/types.h r. 1.62 and
 - src/sys/arch/i386/include/types.h r. 1.90
2019-09-23 23:12:47 +00:00
kamil
00ccc35339 Disable __NO_STRICT_ALIGNMENT on amd64/i386 for UBSan builds
This change allows to pick code paths in the kernel that are tuned for
alignment sensitive (and stricted in C meaning) code paths. In particular
the IPv6 code uses this heavily and skips whenever possible the process
of aligning of networking data.

With this modification all ATF tests are executed on amd64 without
triggering any UBSan reports in dmesg.

In theory __NO_STRICT_ALIGNMENT could be tuned for vax and m68k, however
these machines are still unsupported in LLVM sanitizers and syzkaller.

sys/netinet6/scope6.c:404:6, member access within misaligned address 0xfffffaea81276086 for type 'struct in6_addr' which requires 4 byte alignment
Reported-by: syzbot+a86f58d17685317b3df9@syzkaller.appspotmail.com

sys/net/rtsock_shared.c:629:41, member access within misaligned address 0xffffddb5db3ff04c for type 'struct rt_msghdr50' which requires 8 byte alignment
Reported-by: syzbot+0a3a022bc9d2b8880c16@syzkaller.appspotmail.com
2019-09-23 23:06:26 +00:00
christos
b62989c976 make this compile again. 2019-09-23 21:07:50 +00:00
christos
e7aab04a49 make this compile again 2019-09-23 21:07:39 +00:00
christos
1950b329f4 Treat valsize as unsigned 2019-09-23 20:42:29 +00:00
christos
4640ae90fa Add missing break 2019-09-23 20:38:27 +00:00
mrg
be571cf8e9 add -z flag to intrctl list, which elides all-zero rows. 2019-09-23 20:15:31 +00:00
wiz
2f5074a348 New sentence, new line. 2019-09-23 18:43:59 +00:00
jmcneill
fc0d064c28 mcx(4) will appear in 9.0 2019-09-23 18:26:52 +00:00
skrll
01e9893f42 Use "segmap" for uvm_wait message in pmap_segtab_alloc 2019-09-23 18:20:07 +00:00
christos
accd2f2682 lint is not smart enough to figure out that ilog2() is constant. 2019-09-23 18:17:03 +00:00
christos
7790b32131 PR/54564: Jan Schaumann: cp of a fifo yields an empty file
Don't short-circuit 0 sized stat entries if they don't belong to regular files.
Also don't try to mmap non-regular files.
2019-09-23 18:01:09 +00:00
maxv
d70226e1b8 Move the timeout check out of the loop, otherwise it is never reached.
Found by the lgtm bot.
2019-09-23 17:37:04 +00:00
maya
ced12a6e27 Now that expat_config.h uses a header that is OS-specific, using the HOST_CC
breaks for some setups which lack it (netbsd<8, possibly other things).

Use the compiler targetting netbsd that uses netbsd headers to figure out
PACKAGE_VERSION to avoid this problem.
2019-09-23 17:20:41 +00:00
skrll
fafdfe4c9d Use PRIxBUSADDR 2019-09-23 16:19:33 +00:00
skrll
bf158e33f8 Provide PRIxBUSADDR, PRIxBUSSIZE, PRIuBUSSIZE, and PRIxBSH for all arches
to follow arm and (generic) mips.

Reviewed by christos.
2019-09-23 16:17:54 +00:00
kamil
7c33c59848 Fix MKDEBUG distrib sets
Add libpthread, libnvpair and ZFS libs to dynamicroot.
2019-09-23 16:07:07 +00:00
christos
104d898ec7 we don't need root anymore. 2019-09-23 15:24:44 +00:00
taca
030ee33c31 Postfix 3.1.14/3.2.11/3.3.6/3.4.7 released. 2019-09-23 13:49:40 +00:00
christos
7e81d727bc Consistently use ${RELEASEDIR}/${RELEASEMACHINE} instead of
${RELEASEDIR}/${MACHINE} (Paul Ripke)
2019-09-23 13:42:30 +00:00
christos
38a0431bfa Restore binary compatibility by using the statvfs90 structure internally. 2019-09-23 12:00:57 +00:00
mrg
5b627c2de1 add "-w wait" arg to "intrctl list" to have it loop forever.
don't bother testing poitner for NULL before calling free().
2019-09-23 09:17:19 +00:00
jmcneill
f17e9f865d Match APMC0D0F compatible string. 2019-09-23 08:50:52 +00:00
maxv
70b956e3e2 Use M_BUFADDR to dedup code in M_LEADINGSPACE. 2019-09-23 08:04:35 +00:00
maxv
61c66d02e2 Remove (unused) reference to m_pktdat. 2019-09-23 07:47:45 +00:00
maxv
c07e170550 Remove unused assignment. Found by the lgtm bot. 2019-09-23 06:53:09 +00:00
maxv
a75610dcb2 A * is missing here. This could cause a use-after-free.
Found by the lgtm bot.
2019-09-23 06:50:04 +00:00
mrg
a2d7e4b2ba when "boot -x", don't turn on *all* drm debug, just the core, driver
and kms messages, eliding the vblank, atomic and prime messages,
which are the truly noisy ones (and may result in impossibly slow
to use systems.)

XXX: pullup-all.
2019-09-23 05:54:31 +00:00
skrll
aeef4b9a0b Enable POOL_REDZONE with DIAGNOSTIC.
The bug in the arm pmap was fixed long ago.
2019-09-23 05:39:59 +00:00
rin
5b7b8d5a80 Stop passing a large const structure by value, in order to avoid
possible kernel stack overflow; const pointer is suffice here.

Pointed out by the lgtm bot and kamil.

OK ozaki-r

XXX
pullup to netbsd-9
2019-09-23 05:00:20 +00:00
kamil
7c33168b4c Add LSan and UBSan specific preprocessor macros
__SANITIZE_LEAK__ patch:
https://gcc.gnu.org/ml/gcc-patches/2019-09/msg01270.html

__SANITIZE_UNDEFINED__
https://gcc.gnu.org/ml/gcc-patches/2019-09/msg01286.html

GCC upstream does not see value in feature parity with LLVM sanitizers.
For the time being this will be a NetBSD specific extension.

__SANITIZE_LEAK__ is needed for __NO_LEAKS in <sys/cdefs.h>
__SANITIZE_UNDEFINED__ is planned to be reused in the kernel headers.
2019-09-22 23:34:13 +00:00
kamil
e756a4ef0c Handle LSan/LLVM and LSan/GCC in __NO_LEAKS
__has_feature(leak_sanitizer) was merged with Clang/LLVM today:
https://reviews.llvm.org/D67719

GCC specific ifdef __SANITIZE_LEAK__ is pending in upstream review...
https://gcc.gnu.org/ml/gcc-patches/2019-09/msg01270.html and can be
rejected as GCC upstream does not see value in feature parity with LLVM
sanitizers. For the time being this will be a NetBSD specific extension.
2019-09-22 23:23:12 +00:00
christos
479c44ac35 new files for statvfs90 2019-09-22 23:18:53 +00:00
kamil
4d8c3d0aa3 Make __CTASSERT static assert again
Today GCC/Clang allow to specify typedef char[] with the dynamic VLA
property (as introduced in C99). This means that __CTASSERT(), when
misused with run-time semantics, was a dummy check generating either
1 or -1 size of typedef char[].

It was caught in runtime by kUBSan as -1 is size of VLA with unspecified
semantics in runtime (Undefined Behavior).

Use bit-field to enforce compile-time constant.

This approach has been inspired by the Perl variation of static_assert().
2019-09-22 23:13:10 +00:00