Link [ NetBSD | NetBSD OpenGrok source search | PR fulltext-search | Summary of daily snapshot builds | history of daily build result | pkgsrc commit viewer ]


   
        usage: [branch:branch] [user:user] [path@revision] keyword [... [-excludekeyword [...]]] (e.g. branch:MAIN sys/arch/arm, if_wm.c@1.234 )




switch to index mode

recent branches: MAIN (1h)  netbsd-8 (5d)  netbsd-10 (5d)  netbsd-9 (11d)  thorpej-ifq (175d)  thorpej-altq-separation (178d) 

2024-05-10 04:55:16 UTC Now

2021-07-06 14:22:16 UTC MAIN commitmail json YAML

2021-07-06 12:42:12 UTC MAIN commitmail json YAML

Remove jemalloc and gdb hacks for alpha; root cause has been addressed.

(thorpej)

2021-07-06 12:41:00 UTC MAIN commitmail json YAML

Remote -O0 hack for alpha; root cause has been addressed.

(thorpej)

2021-07-06 12:40:25 UTC MAIN commitmail json YAML

Remove -O0 hack for alpha; root cause has been addressed.

(thorpej)

2021-07-06 12:38:40 UTC MAIN commitmail json YAML

Ensure that the stack is always 16-byte aligned by rounding sizes as needed.

All changes from rin@ except swapcontext.S, which is from me (added
symbolic constants to make the code clearer).

(thorpej)

2021-07-06 12:26:03 UTC MAIN commitmail json YAML

2021-07-06 12:23:46 UTC MAIN commitmail json YAML

2021-07-06 12:20:52 UTC MAIN commitmail json YAML

- Define STACK_ALIGNBYTES to override the default and ensure that
  stacks are 16-byte aligned, an assumption made by the compiler
  and recommended by the Alpha Architecture Handbook.
- cpu_lwp_fork(): Ensure 16-byte stack alignment if the caller specified
  one.

Addresses root casue of PR port-alpha/54307 and PR toolchain/56153.

Many thanks to rin@ for performing the root cause analysis and testing
changes.

(thorpej)

2021-07-06 11:49:36 UTC MAIN commitmail json YAML

2021-07-06 09:30:07 UTC MAIN commitmail json YAML

2021-07-06 09:26:47 UTC MAIN commitmail json YAML

Use raw write(2) instead of fwrite(3) to avoid stream corruption because
of the progress bar interrupts. From RVP.

(christos)

2021-07-06 08:34:28 UTC MAIN commitmail json YAML

Assume all ARM11[37]6 r0 variants are missing ISAR and friends.  This is
certainly the case for r0 variants I could find TRMs for.

PR/50596 CPU_ID_ARM1136JS r0p4 does not support feature registers

(skrll)

2021-07-06 08:31:41 UTC MAIN commitmail json YAML

2021-07-06 06:38:29 UTC MAIN commitmail json YAML

tests/lint: document wrong handling of GCC __attribute__

(rillig)

2021-07-06 05:39:27 UTC MAIN commitmail json YAML

lint: rearrange and rename grammar rules for parameter declarations

Place the notype/type variants close to each other to be able to compare
them visually.

No functional change.

(rillig)

2021-07-06 05:22:34 UTC MAIN commitmail json YAML

lint: move the grammar rule array_size out of the type/notype section

An array size is used in several grammar rules for different types of
declarations, therefore it doesn't make sense to place that rule
somewhere in the middle, where it disrupted the flow of notype/type
rules.  The whole point of having the notype/type rules grouped is to be
able to quickly compare them, since they are almost equal.

No functional change.

(rillig)

2021-07-06 05:12:44 UTC MAIN commitmail json YAML

lint: reduce grammar conflicts for GCC attributes

In all but one case, the use of type_attribute_list introduced an
unnecessary ambiguity in the grammar.  It appeared in a place where it
could be repeated either by the type_attribute_list or by the enclosing
rule.  Both variants have the same effect.

No functional change.

(rillig)

2021-07-06 04:48:17 UTC MAIN commitmail json YAML

lint: clean up style in grammar

No functional change.

(rillig)

2021-07-06 04:44:20 UTC MAIN commitmail json YAML

lint: rename type generic_association_types to generic_association

The word 'types' was misleading and unnecessary.

No functional change.

(rillig)

2021-07-06 04:23:55 UTC netbsd-9 commitmail json YAML

2021-07-06 04:22:35 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) - all via patch -
(requested by riastradh in ticket #1317):

sys/uvm/uvm_page.c: revision 1.248
sys/uvm/uvm_anon.c: revision 1.80
sys/rump/librump/rumpvfs/vm_vfs.c: revision 1.40
sys/rump/librump/rumpvfs/vm_vfs.c: revision 1.41
sys/rump/librump/rumpkern/vm.c: revision 1.191
sys/uvm/uvm_pager.c: revision 1.130
external/cddl/osnet/dist/uts/common/fs/zfs/zfs_vnops.c: revision 1.71
tests/rump/rumpkern/t_vm.c: revision 1.5
tests/rump/rumpkern/t_vm.c: revision 1.6
sys/rump/librump/rumpvfs/vm_vfs.c: revision 1.39

Move the handling of PG_PAGEOUT from uvm_aio_aiodone_pages() to
uvm_page_unbusy() so that all callers of uvm_page_unbusy() don't need to
handle this flag separately.  Split out the pages part of uvm_aio_aiodone()
into uvm_aio_aiodone_pages() in rump just like in the real kernel.

In ZFS functions that can fail to copy data between the ARC and VM pages,
use uvm_aio_aiodone_pages() rather than uvm_page_unbusy() so that we can
handle these "I/O" errors.  Fixes PR 55702.

fix an incorrect assertion in the previous commit.

Handle PG_PAGEOUT in uvm_anon_release() too.

Commit the ZFS file that I forgot in this previous commit:

Move the handling of PG_PAGEOUT from uvm_aio_aiodone_pages() to
uvm_page_unbusy() so that all callers of uvm_page_unbusy() don't need to
handle this flag separately.  Split out the pages part of uvm_aio_aiodone()
into uvm_aio_aiodone_pages() in rump just like in the real kernel.

In ZFS functions that can fail to copy data between the ARC and VM pages,
use uvm_aio_aiodone_pages() rather than uvm_page_unbusy() so that we can
handle these "I/O" errors.  Fixes PR 55702.
update the rump copy of uvm_page_unbusy() to match the real version,
in particular handle PG_PAGEOUT.  fixes a few atf tests.
the busypage test is buggy, expect it to fail.

make rump's uvm_aio_aiodone_pages() look more like the kernel version.
fixes some more rumpy assertions.

for the busypage test, replace atf_tc_expect_fail() with atf_tc_skip()
because atf apparently has no way to expect a test program to crash.
fixes PR 55945.

(martin)

2021-07-06 04:17:03 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by riastradh in ticket #1316):

external/cddl/osnet/dist/uts/common/dtrace/dtrace.c: revision 1.41

Remove a pointless printf.

(martin)

2021-07-06 04:15:27 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by riastradh in ticket #1315):

external/cddl/osnet/sys/kern/printf.c: revision 1.3

Use vpanic, not vprintf and then panic.

(martin)

2021-07-06 04:13:50 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by skrll in ticket #1314):

common/lib/libc/arch/aarch64/atomic/atomic_nand_8.S: revision 1.3
common/lib/libc/arch/aarch64/atomic/atomic_nand_8.S: revision 1.4
common/lib/libc/arch/aarch64/atomic/atomic_nand_64.S: revision 1.3
common/lib/libc/arch/aarch64/atomic/atomic_nand_64.S: revision 1.4
common/lib/libc/arch/aarch64/atomic/atomic_nand_16.S: revision 1.3
common/lib/libc/arch/aarch64/atomic/atomic_nand_32.S: revision 1.3
common/lib/libc/arch/aarch64/atomic/atomic_nand_32.S: revision 1.4

Fix the logic operation for atomic_nand_{8,16,32,64}

From the gcc docs the operations are as follows
  { tmp = *ptr; *ptr = ~(tmp & value); return tmp; }  // nand
  { tmp = ~(*ptr & value); *ptr = tmp; return *ptr; }  // nand

yes, this is really rather strange.

typo in comment s/pte/ptr/

(martin)

2021-07-06 04:11:31 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by skrll in ticket #1313):

common/lib/libc/arch/arm/atomic/atomic_xor_64.S: revision 1.5
common/lib/libc/arch/arm/atomic/atomic_nand_64.S: revision 1.5
common/lib/libc/arch/arm/atomic/atomic_or_64.S: revision 1.12
common/lib/libc/arch/arm/atomic/atomic_cas_8.S: revision 1.8
common/lib/libc/arch/arm/atomic/atomic_sub_64.S: revision 1.3
common/lib/libc/arch/arm/atomic/atomic_and_64.S: revision 1.11
common/lib/libc/arch/arm/atomic/atomic_swap_64.S: revision 1.13
common/lib/libc/arch/arm/atomic/atomic_add_64.S: revision 1.12

Whitespace

(martin)

2021-07-06 04:05:14 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by macallan in ticket #1312):

sys/arch/hppa/hppa/intr.c: revision 1.4

fix off by one which resulted in all idle time reported as interrupt time
final fix from nick@

(martin)

2021-07-06 03:46:24 UTC netbsd-9 commitmail json YAML

2021-07-06 03:45:11 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by dholland in ticket #1318):

sys/miscfs/kernfs/kernfs_vnops.c: revision 1.169
sys/miscfs/kernfs/kernfs_vnops.c: revision 1.170

Add missing VOP_KQFILTER to kernfs.

Not sure if lack of it can be used for local DoS or not, but best to
fix.

-

Fix perms on /kern/{r,}rootdev.

(martin)

2021-07-06 03:23:03 UTC MAIN commitmail json YAML

Fix perms on /kern/{r,}rootdev.

(dholland)

2021-07-06 03:22:44 UTC MAIN commitmail json YAML

Add missing VOP_KQFILTER to kernfs.

Not sure if lack of it can be used for local DoS or not, but best to
fix.

(dholland)

2021-07-06 02:39:46 UTC MAIN commitmail json YAML

Drop unicast packets that are not for us
when vlan(4) is not in promisc

(yamaguchi)

2021-07-06 02:34:12 UTC MAIN commitmail json YAML

vlan: added NULL check for the parent interface

The pointer may set to NULL by vlan_unconfig
while packet processing

(yamaguchi)

2021-07-06 01:18:22 UTC MAIN commitmail json YAML

vlan: added checks of linkstate

(yamaguchi)

2021-07-06 01:16:01 UTC MAIN commitmail json YAML

vlan: set the link state to DOWN when its parent detaches

(yamaguchi)

2021-07-05 21:43:56 UTC MAIN commitmail json YAML

2021-07-05 19:59:10 UTC MAIN commitmail json YAML

lint: refer to documentation about the 'notype' rules in the grammar

(rillig)

2021-07-05 19:55:51 UTC MAIN commitmail json YAML

lint: reduce noise in storage_class_name

No functional change.

(rillig)

2021-07-05 19:53:43 UTC MAIN commitmail json YAML

2021-07-05 19:48:32 UTC MAIN commitmail json YAML

lint: rename dinfo_t.d_stralign to d_sou_align_in_bits

When talking about alignment, offset and size of a type, the measurement
unit must be mentioned in the variable name, especially when it differs
from the standard unit of measurement, which is a byte, not a bit.

No functional change.

(rillig)

2021-07-05 19:43:29 UTC MAIN commitmail json YAML

tests/lint: fix typos in comment in expr_range

(rillig)

2021-07-05 19:39:12 UTC MAIN commitmail json YAML

lint: fix type warnings in emit1.c

The plain character strings in strg_t are saved as an array of unsigned
char.  When such a character is passed to ch_isdigit, it requires a
cast.  This is exactly the situation that ch_isdigit tried to avoid in
the first place.

No functional change.

(rillig)

2021-07-05 19:02:14 UTC MAIN commitmail json YAML

tests/lint: fix check-expect.lua for empty .exp file

An absent .exp file is equivalent to an empty .exp file.  In neither of
these cases must the corresponding .c file declare any expected
diagnostics.

(rillig)

2021-07-05 18:55:14 UTC MAIN commitmail json YAML

tests/lint: remove unused variables

(rillig)

2021-07-05 16:59:54 UTC MAIN commitmail json YAML

sun4v: update status on S7 systems

(palle)

2021-07-05 15:12:01 UTC MAIN commitmail json YAML

Instrument the number of calls to pmap_growkernel().

(thorpej)

2021-07-05 14:51:23 UTC MAIN commitmail json YAML

Cleanup duplicated CS/80 indentify structures.  From OpenBSD.

https://marc.info/?l=openbsd-cvs&m=113227249626888&w=2
> Define the CS/80 identify structure only once and correctly, instead of
> duplicating it in every CS/80 driver and using an hardcoded number for
> its size.
> No functional change.

https://marc.info/?l=openbsd-cvs&m=113273001020159&w=2
> Pick HP-IB describe structures changes from main kernel code here as well.

(tsutsui)

2021-07-05 14:15:16 UTC MAIN commitmail json YAML

Move attach messages from common rdident() to explicit rdattach().

(tsutsui)

2021-07-05 14:03:46 UTC MAIN commitmail json YAML

Pull HP-IB probe fixes from OpenBSD/hp300.

https://marc.info/?l=openbsd-cvs&m=113217630426615&w=2
> Overhaul the way HP-IB devices are probed. We will now do an exhaustive
> probe of the (slave, punit) tuple space, since this is the only way we
> can get a dual disk or dual tape enclosure to attach two devices of the
> same kind.

This allows using multiple rd(4) disk images on the same slave emulated
by HPDisk (and probably the real 9122D with dual floppy disk drives).

Thanks to Miod Vallat for suggesting this fix.

(tsutsui)

2021-07-05 13:41:08 UTC MAIN commitmail json YAML

2021-07-05 11:16:56 UTC MAIN commitmail json YAML

Update gcc9-sh3-lint - instead of disabling optimization for lex.c on
sh3, rather revert the gcc change that (seemingly accidentally) broke
this.

(hgutch)

2021-07-05 10:34:26 UTC MAIN commitmail json YAML

GCC git commit 91f66e78cc141da77ff9e0e3c8519e1af3f26c07[1] introduced
a regression in sh.  In addition to the intended change (based on the
commit message), an apparently unintended change was made, inverting a
comparison.  This broke sh builds and our workaround (so far) was to
compile xlint/lint1 with -O0.

Revert the comparison to what it was before and remove the -O0 hack
from xlint/lint1.

[1] https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=91f66e78cc141da77ff9e0e3c8519e1af3f26c07

(hgutch)

2021-07-05 10:00:22 UTC MAIN commitmail json YAML

Fix a bug introduced in pmap.c,v 1.287 where, when creating the PTE
in pmap_enter(), we would erroneously disregard MOD/REF attributes
already present on the page, thus causing FOW/FOR to be set incorrectly.
Normally this is not a big problem (an extra page fault will be taken
to resolve it), but if you access the mapping in interrupt context
(such as during IDE PIO, for example), a KASSERT can fire due to
acquiring an rwlock in interrupt context while servicing that fault.

Reported and bisected-to-commit by rin@.

(thorpej)

2021-07-05 08:50:31 UTC MAIN commitmail json YAML

2021-07-05 07:26:00 UTC MAIN commitmail json YAML

Account for partial writes when interrupted (from FreeBSD).

(christos)

2021-07-04 22:42:36 UTC MAIN commitmail json YAML

2021-07-04 22:36:43 UTC MAIN commitmail json YAML

Reduce code duplication when setting up the interrupt handler data
structures:
- alpha_shared_intr_alloc() no longer takes a "string length" argument,
  and just uses kmem_asprintf() to create an "irq %u" string by default.
  This is suitable for nearly every caller.
- Add a alpha_shared_intr_set_string() that allows callers to override
  the default IRQ description string.
- Related: make alpha_shared_intr_string() return a const char *, since
  no callers should need to modify the string directly now.
- Re-factor PCI shared interrupt structure allocation / initialization
  into a new alpha_pci_intr_alloc(), which is suitable for nearly every
  Alpha PCI platform.  Callers are expected to first have initialized
  the interrupt hardware to the quiescent state.

Adjust various call sites of above functions to account for changes,
even if they are not able to use the newly re-factored code.

(thorpej)

2021-07-04 20:22:31 UTC MAIN commitmail json YAML

2021-07-04 17:32:24 UTC MAIN commitmail json YAML

tests/lint: align tests for argument conversion to each other

(rillig)

2021-07-04 17:28:06 UTC MAIN commitmail json YAML

lint: replace wrong assumption with citation from C99

No functional change.

(rillig)

2021-07-04 17:16:09 UTC MAIN commitmail json YAML

lint: document where to fix missing const in lvalue-to-rvalue

No functional change.

(rillig)

2021-07-04 17:01:58 UTC MAIN commitmail json YAML

2021-07-04 16:44:13 UTC MAIN commitmail json YAML

lint: clean up new_tnode

No functional change.

(rillig)

2021-07-04 16:18:50 UTC MAIN commitmail json YAML

libc: remove special handling for lint

In namespace.h 1.102 from 2005-07-16, the #ifndef was added to fix the
broken lint2 pass.  Somewhere between 2005 and now, lint has been
changed so that it does not need this workaround anymore.

After usr.bin/xlint/lint1/tree.c 1.303 from 2021-06-30, the #ifndef in
namespace.h caused the only warning about an implicit function
declaration in the whole NetBSD tree, in lib/libc/gen/sysconf.c:149,
where _getpagesize was not defined, but only getpagesize.

(rillig)

2021-07-04 13:44:43 UTC MAIN commitmail json YAML

tests/lint: fix unintended character constant in test

I originally intended to type ASCII DEL as an example of a nonprintable
character code.  The actual character that landed in the code was
instead U+2303 "house", which looks similar to the typical
representation of the DEL character.  The UTF-8 byte sequence for that
code point started with \xE2, or in octal \342.

(rillig)

2021-07-04 13:32:35 UTC MAIN commitmail json YAML

tests/lint: document why lint does not need to detect wrong types

(rillig)

2021-07-04 13:31:10 UTC MAIN commitmail json YAML

2021-07-04 13:14:54 UTC MAIN commitmail json YAML

2021-07-04 12:57:48 UTC MAIN commitmail json YAML

LLVM RT library will actually cross-build from OpenBSD provided sufficient
limits are in place for the build user.

(cjep)

2021-07-04 12:24:39 UTC MAIN commitmail json YAML

lint: remove support for obsolete GCC-style lvalue casts

Since GCC 4.0, a cast results in an rvalue.

(rillig)

2021-07-04 11:25:07 UTC MAIN commitmail json YAML

Add VOP_PARSEPATH to zfs control dir vnode op table.

(hannken)

2021-07-04 11:24:09 UTC MAIN commitmail json YAML

Fix union_parsepath(), either the upper or the lower dvp may be NULL.

(hannken)

2021-07-04 09:13:59 UTC MAIN commitmail json YAML

lint: in strict bool mode, allow mixed types in generated C code

This allows flex lexers to be run through lint in strict bool mode.

(rillig)

2021-07-04 08:50:26 UTC MAIN commitmail json YAML

tests/lint: re-enable test c99_bool_strict_suppressed

It had been disabled accidentally in the previous commit.

(rillig)

2021-07-04 08:49:41 UTC MAIN commitmail json YAML

lint: include scan.c in 'make lint'

This theoretically enables strict bool mode for the few remaining code
in scan.l.  Since scan.l is not yet detected as generated code, all
interesting errors have to be suppressed though.

(rillig)

2021-07-04 08:19:06 UTC MAIN commitmail json YAML

lint: remove outdated assertion

Since err.c 1.12 from 2000-07-06, lint allows to suppress individual
error messages.  Suppressed error messages do not increment nerr.
Keeping nerr at 0 had triggered the assertion.

(rillig)

2021-07-04 07:50:53 UTC MAIN commitmail json YAML

2021-07-04 07:09:39 UTC MAIN commitmail json YAML

lint: in strict bool mode, continue after error message

If a controlling expression is not of type bool but of any other scalar
type, keep the expression.  Its value is still useful for control flow
analysis.

This prevents an assertion failure when running lint on the generated
scan.c, which contains a "while (1)" that does not stem from a system
header.  If it did, lint would accept it, see tn_from_system_header. But
"scan.c" is not considered a system header.  Maybe lint's definition of
a system header needs to be revisited.

After fixing this, there is another assertion failure though, so scan.c
is not yet ready to be inspected by lint.

(rillig)

2021-07-04 07:03:16 UTC MAIN commitmail json YAML

elide cast warning: error: cast from pointer to integer of different size

(christos)

2021-07-04 06:55:47 UTC MAIN commitmail json YAML

Fix the logic operation for atomic_nand_{8,16,32,64}

From the gcc docs the operations are as follows

{ tmp = *ptr; *ptr = ~(tmp & value); return tmp; }  // nand
{ tmp = ~(*ptr & value); *ptr = tmp; return *ptr; }  // nand

yes, this is really rather strange.

(skrll)

2021-07-04 05:49:20 UTC MAIN commitmail json YAML

lint: sync stdout and stderr when compiled in debug mode

If lint is compiled with -DDEBUG, its debug output goes to stdout, no
matter whether the option -d is given or not.

(rillig)

2021-07-04 01:28:54 UTC MAIN commitmail json YAML

2021-07-03 22:39:40 UTC MAIN commitmail json YAML

tests/make: make test job-output-null more portable

Previously, the test dependend on implementation details of the system's
printf command.

Thank you sjg for the detailed analysis on macOS, FreeBSD and Linux.

(rillig)

2021-07-03 21:27:48 UTC MAIN commitmail json YAML

2021-07-03 21:18:41 UTC MAIN commitmail json YAML

lint: guard against segmentation fault when parsing struct

Found by afl.  The code that triggers this case is:

struct{const}

(rillig)

2021-07-03 20:54:08 UTC MAIN commitmail json YAML

lint: fix segmentation fault on malformed preprocessor output

# 0 ""
# 0 ""2

Found using afl, does not happen in practice though since every C
preprocessor generates balanced 'enter' (1) and 'leave' (2) events.

(rillig)

2021-07-03 20:43:35 UTC MAIN commitmail json YAML

lint: make stdout unbuffered in debug mode

Some debug log messages are on stdout, others on stderr.  Make sure that
they occur in the correct order, even when the output is redirected.

(rillig)

2021-07-03 20:40:17 UTC MAIN commitmail json YAML

lint: fix assertion failure in display_expression for bool constants

(rillig)

2021-07-03 19:39:07 UTC MAIN commitmail json YAML

sun4v: request hypervisor api major version 3 for the interrupt group - should solve issues when setting up interrupts on S7 systems

(palle)

2021-07-03 19:34:47 UTC MAIN commitmail json YAML

tests/lint: fix test d_cast_init on macppc

On macppc, char == unsigned, which generated the following unintended
warnings:

d_cast_init.c(18): warning: initialization of unsigned with negative
    constant [221]
d_cast_init.c(18): warning: initialization of unsigned with negative
    constant [221]
d_cast_init.c(18): warning: initialization of unsigned with negative
    constant [221]
d_cast_init.c(18): warning: initialization of unsigned with negative
    constant [221]

(rillig)

2021-07-03 19:31:23 UTC MAIN commitmail json YAML

tests/lint: fix test for character comparison on macppc

On macppc, char == unsigned char, which generates one more warning than
on platforms where char == signed char.

(rillig)

2021-07-03 19:18:56 UTC MAIN commitmail json YAML

2021-07-03 14:59:49 UTC MAIN commitmail json YAML

Treat failed chdir/chroot for guest and chroot accounts as fatal.
Also treat failed set{e,}(u,g}id calls as fatal.
Addresses CVE-2020-7468, via FreeBSD.

(christos)

2021-07-03 14:08:55 UTC MAIN commitmail json YAML

PR/56246: Yuichiro Naito: gprof(1) never show call graphs when profiling
multi-threaded application

(christos)

2021-07-03 14:07:13 UTC MAIN commitmail json YAML

PR/56250: Michael Forney: mkstemp/mkdtemp not declared with
_POSIX_C_SOURCE=200809L

(christos)

2021-07-03 10:20:00 UTC netbsd-9 commitmail json YAML

2021-07-03 10:18:16 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by thorpej in ticket #1311):

sys/dev/ic/dp8390.c: revision 1.99
sys/dev/ic/dl10019.c: revision 1.17
sys/dev/ic/ax88190.c: revision 1.18

Make sure the media / mii members in struct ethercom are initialized
so that the media-related ioctls work.  Problem reported by Bj�rn Johannesson
on current-users@.

XXX pullup-9

(martin)

2021-07-03 09:43:29 UTC MAIN commitmail json YAML

2021-07-03 09:39:26 UTC MAIN commitmail json YAML

Return error from fd_dupopen.

(mlelstv)

2021-07-03 04:44:16 UTC MAIN commitmail json YAML

2021-07-02 23:29:54 UTC MAIN commitmail json YAML

2021-07-02 22:46:43 UTC MAIN commitmail json YAML

lint: fix initialization of array of unknown size

The size of the resulting array was computed wrong.

(rillig)

2021-07-02 21:52:36 UTC MAIN commitmail json YAML

2021-07-02 21:22:26 UTC MAIN commitmail json YAML

lint: in strict bool mode, make (flag & FLAG) simpler

This is a tiny change in an edge case that does not occur in practice,
which is that the left-hand side of the '&' is explicitly cast to an
enum type.  The apparent "loss of information" from the deleted comment
has already been explained in the previous commit.

(rillig)

2021-07-02 19:31:47 UTC MAIN commitmail json YAML

2021-07-02 18:52:21 UTC MAIN commitmail json YAML

lint: no special check for unary operators in strict bool mode

All interesting constellations regarding unary operators are already
covered by the simple model from ops.def.

No functional change.

(rillig)

2021-07-02 18:22:09 UTC MAIN commitmail json YAML

lint: document lint1_type.t_is_enum

Enum types are subject to implicit conversions, as opposed to struct,
union, pointer and function types.

(rillig)

2021-07-02 17:14:37 UTC MAIN commitmail json YAML

Add VOP_PARSEPATH to zfs's vnode table. "oops"

zfs not being under src/sys strikes again :-(

(dholland)

2021-07-02 16:57:16 UTC MAIN commitmail json YAML

2021-07-02 16:56:22 UTC MAIN commitmail json YAML

Turn off fstrans for VOP_PARSEPATH. Fixes t_umountstress deadlock.

Diagnosis by hannken@.

(dholland)

2021-07-02 10:14:07 UTC MAIN commitmail json YAML

port-macppc/56289: kernel spinout on macppc when runing ATF tests with LOCKDEBUG

Move call to snapper_set_rate from trigger_output to commit_settings,
since the intr lock is not held when calling the latter.

(jmcneill)

2021-07-02 07:15:35 UTC MAIN commitmail json YAML

Be consistent about #ifndef ARM32_DISABLE_ALIGNMENT_FAULTS.  NFCI.

(skrll)

2021-07-02 04:38:11 UTC MAIN commitmail json YAML

Added tests for changing a MTU when the vlan(4) is added to bridge(4)

The tests is for PR kern/56292

(yamaguchi)

2021-07-02 03:30:46 UTC MAIN commitmail json YAML

Use if_ioctl() for changing MTU, not ether_ioctl to prevent panic

Fix PR kern/56292

(yamaguchi)

2021-07-01 22:57:45 UTC MAIN commitmail json YAML

fix off by one which resulted in all idle time reported as interrupt time
final fix from nick@

(macallan)

2021-07-01 22:08:13 UTC MAIN commitmail json YAML

Back out fix for kern_pmf.c calling a null if_stop and apply a fix
suggested by Jared McNeill which sets if_stop to a stub function
which means that more than just the pmf is protected from the NULL call.

(blymn)

2021-07-01 20:39:15 UTC MAIN commitmail json YAML

Make sure the media / mii members in struct ethercom are initialized
so that the media-related ioctls work.  Problem reported by Bjæ—¦rn Johannesson
on current-users@.

XXX pullup-9

(thorpej)

2021-07-01 18:05:45 UTC MAIN commitmail json YAML

AWS marketplace does not allow root ssh logins. Create an ec2-user account
and install the ssh key in that user's home directory instead.

(jmcneill)

2021-07-01 17:32:07 UTC MAIN commitmail json YAML

port-evbarm/56274: no network on ec2 arm64 9.99.85

Add -w to dhcpcd_flags when running on EC2, since we need to wait for the
network to come up before contacting the metadata service.

(jmcneill)

2021-07-01 17:31:21 UTC MAIN commitmail json YAML

No need for ec2_init on arm64mbr

(jmcneill)

2021-07-01 17:22:10 UTC MAIN commitmail json YAML

port-evbarm/56274: no network on ec2 arm64 9.99.85

Remove custom SIOCSIFFLAGS handling and rely on ether_ioctl to DTRT

(jmcneill)

2021-07-01 15:53:20 UTC MAIN commitmail json YAML

gcc (with some options) eroneously claims we would use "vp" uninitialized,
so initialize it as NULL.

(martin)

2021-07-01 15:06:01 UTC MAIN commitmail json YAML

in uvm_mapent_forkzero(), if the old entry was an object mapping,
appease a debug check by setting the new entry offset to zero along with
setting the new entry object pointer to NULL.

Reported-by: syzbot+de8e4b223a3838c7307b@syzkaller.appspotmail.com
Reported-by: syzbot+efaea991addfdcc5abd4@syzkaller.appspotmail.com
Reported-by: syzbot+15d1e19dff9209c2e40b@syzkaller.appspotmail.com

(chs)

2021-07-01 04:25:51 UTC MAIN commitmail json YAML

don't clear the error before we use it to determine if we are moving or duping.

(christos)

2021-06-30 22:13:27 UTC MAIN commitmail json YAML

Fix hardcoded size for total_patckets array in synaptics_softc, it
needs to be SYN_MAX_FINGERS because the driver expects it to be.

(blymn)

2021-06-30 21:52:16 UTC MAIN commitmail json YAML

Prevent kernel panic on sleep if network interface driver does not
have if_stop defined.  This is a common problem with usb adaptors.
This is a temporary fix, the printf needs to be converted to an
assert once the drivers are cleaned up.

(blymn)

2021-06-30 21:20:30 UTC MAIN commitmail json YAML

Do previous differtly by pushing two registers in the same way as the
_INVOKE_CERROR macro

(skrll)

2021-06-30 21:18:00 UTC MAIN commitmail json YAML

2021-06-30 20:00:18 UTC MAIN commitmail json YAML

Fix a couple of problems with MII-equipped NE2000 derivatives reported by
Bjæ—¦rn Johannesson on current-users@:

- Re-factor dp8390_stop() into dp8390_halt() (that does the stuff to
  halt the hardware) and dp8390_stop() (which alls dp8390_halt() before
  calling mii_down() via sc->sc_stop_card()).  This prevents us from
  calling mii_down() before all of the interface data structures have
  been set up, which these days can trip a KASSERT().

- Add a 1-second timer to call mii_tick(), and enable it in the
  sc->sc_init_card() callback, and cancel it in the sc->sc_stop_card()
  and sc->sc_media_fini() callbacks.  This is actually a long-standing
  bug that previously didn't have much practical effect, but causes
  problems with dhcpcd's link live-ness detection logic.

(thorpej)

2021-06-30 17:51:49 UTC MAIN commitmail json YAML

Improve Christos's vn_open fix.

- assert about api misuse up front (suggested by riastradh)
- restore the behavior of returning EOPNOTSUPP if ret_fd is NULL and we
  get a fd back (otherwise things like ktruss -o /dev/stderr panic)
- clear error to 0 for the EDUPFD and EMOVEFD cases so opening a
  cloner succeeds

(dholland)

2021-06-30 17:34:03 UTC MAIN commitmail json YAML

devlist2h.awk: Nix trailing whitespace.

No functional change intended.

(riastradh)

2021-06-30 14:54:03 UTC MAIN commitmail json YAML

No need to bother to use aprint_debug(9) inside #ifdef DEBUG block.

(tsutsui)

2021-06-30 14:42:13 UTC MAIN commitmail json YAML

lint: do not warn about use of implicitly declared GCC builtins

(rillig)

2021-06-30 14:32:41 UTC MAIN commitmail json YAML

lint: in C99 mode, only warn about implicit function declarations

Since tree.c 1.294 from 2021-06-28 (two days ago), lint errored out on
an implicit function declaration.  In principle it is correct to do so
since C99 requires it, but in practice there are a several functions
that are not declared in the translation unit itself since they are
provided by the compiler.  Typical examples for GCC and Clang are the
various functions named '__builtin_*' and '__atomic_*'.

For now, only warn about these but don't error out.

(rillig)

2021-06-30 14:23:51 UTC MAIN commitmail json YAML

lint: mention the name of an implicitly declared function

In the regular NetBSD builds, this happened in swab.c:65.  That line
contains __predict_false, which may or may not be a macro.  In other
cases, there may be more than one function call in a single line.

(rillig)

2021-06-30 14:15:39 UTC MAIN commitmail json YAML

tests/lint: extend test for message 215 about implicit function

(rillig)

2021-06-30 14:11:08 UTC MAIN commitmail json YAML

2021-06-30 14:02:11 UTC MAIN commitmail json YAML

tests/lint: extend tests for message 101

This demonstrates the wrong type name in the message.

(rillig)

2021-06-30 13:50:15 UTC MAIN commitmail json YAML

tests/lint: extend and explain test for implicit function declaration

(rillig)

2021-06-30 12:28:03 UTC MAIN commitmail json YAML

lint: improve comment about INT keeping t_is_enum

(rillig)

2021-06-30 12:26:35 UTC MAIN commitmail json YAML

tests/lint: add test for type name of enum converted to int

(rillig)

2021-06-30 11:29:29 UTC MAIN commitmail json YAML

lint: invert condition in control flow analysis of switch statements

The condition previously contained many negations, which was hard to
understand.

No functional change.

(rillig)

2021-06-30 11:20:33 UTC MAIN commitmail json YAML

PR/56286: Martin Husemann: Fix NULL deref on kmod load.
- No need to set ret_domove and ret_fd in the regular case, they are meaningless
- KASSERT instead of setting errno and then doing the NULL deref.

(christos)

2021-06-30 10:56:24 UTC MAIN commitmail json YAML

lint: fix bit-size of long double _Complex in portable mode

C99 6.2.5p13 says that LCOMPLEX has the same representation and
alignment requirements as an array type containing exactly two LDOUBLE.

When support for _Complex was added to lint in inittyp.c 1.10 from
2008-09-27, there was no explanation for making the bit-size of LCOMPLEX
different from what C99 says, so it was probably a mistake that went
unnoticed for more than 12 years.  It's an edge case anyway.

(rillig)

2021-06-30 10:25:03 UTC MAIN commitmail json YAML

lint: inline 'sign' into convert_integer

No functional change.

(rillig)

2021-06-30 07:36:05 UTC MAIN commitmail json YAML

The _INVOKE_CERROR macro deals with thumb so simplify the code (at the
expense of a couple more instructions).

(skrll)

2021-06-30 07:34:24 UTC MAIN commitmail json YAML

2021-06-30 06:39:47 UTC MAIN commitmail json YAML

lagg: fix an uninitialize variable

pointed out by tnn@n.o., thanks.

(yamaguchi)

2021-06-30 06:24:03 UTC MAIN commitmail json YAML

Revert previous. Apparently it's wrong.

(skrll)

2021-06-30 00:00:49 UTC MAIN commitmail json YAML

Fix previous. For Thumb-1:
- sp cannot be manipulated directly
- {add,sub}s should be used instead of {add,sub}

(rin)

2021-06-29 23:29:12 UTC MAIN commitmail json YAML

Align sp to 8-byte boundary as required by EABI.

IIUC, this change only affects libc compiled for ``Thumb-mode userland'',
which we've not officially supported yet.

(rin)

2021-06-29 23:26:00 UTC MAIN commitmail json YAML

Align sp to 8-byte boundary as required by EABI.

This is especially important for non-leaf functions; GCC optimizes codes
based on assumption that sp is aligned properly.

Mostly fix broken earmv5 userland compiled by GCC10 due to alignment
faults in ld.elf_so, where {ld,st}rd are used for [sp, #8x].

No regression for ATF is observed for earmv[67]{,hf}{,eb}.

(rin)

2021-06-29 22:40:54 UTC MAIN commitmail json YAML

Add containment for the cloning devices hack in vn_open.

Cloning devices (and also things like /dev/stderr) work by allocating
a struct file, stuffing it in the file table (which is a layer
violation), stuffing the file descriptor number for it in a magic
field of struct lwp (which is gross), and then "failing" with one of
two magic errnos, EDUPFD or EMOVEFD.

Before this commit, all callers of vn_open in the kernel (there are
quite a few) were expected to check for these errors and handle the
situation. Needless to say, none of them except for open() itself did,
resulting in internal negative errnos being returned to userspace.

This hack is fairly deeply rooted and cannot be eliminated all at
once. This commit adds logic to handle the magic errnos inside
vn_open; now on success vn_open returns either a vnode or an integer
file descriptor, along with a flag that says whether the underlying
code requested EDUPFD or EMOVEFD. Callers not prepared to cope with
file descriptors can pass NULL for the extra return values, in which
case if a file descriptor would be produced vn_open fails with
EOPNOTSUPP.

Since I'm rearranging vn_open's signature anyway, stop exposing struct
nameidata. Instead, take three arguments: an optional vnode to use as
the starting point (like openat()), the path, and additional namei
flags to use, restricted to NOCHROOT and TRYEMULROOT. (Other namei
behavior, e.g. NOFOLLOW, can be requested via the open flags.)

This change requires a kernel bump. Ride the one an hour ago.
(That was supposed to be coordinated; did not intend to let an hour
slip by. My fault.)

(dholland)

2021-06-29 22:40:06 UTC MAIN commitmail json YAML

2021-06-29 22:39:21 UTC MAIN commitmail json YAML

Now remove cn_consume from struct componentname.

This change requires a kernel bump.

Note though that I'm not going to version the VOP_LOOKUP args
structure (or any other args structure) as code that doesn't touch
cn_consume doesn't need attention and code that does will fail on it
without further intervention.

(dholland)

2021-06-29 22:38:46 UTC MAIN commitmail json YAML

Onionfs needs to know about parsepath too, in case it has one of the
other cases underneath it.

The solution here is not really very good (take the longer
path-to-consume if they're different) but it will serve for the cases
that exist.

(If we were to add a fs that really uses different naming semantics,
we'd have to take additional steps; probably it doesn't make sense to
allow unionfs to union such a thing with a normal fs and attempting it
should fail at mount time.)

Update fs/unionfs as well to avoid increasing the current set of
compile failures there. Though maybe it's time to just remove
fs/unionfs.

(dholland)

2021-06-29 22:38:10 UTC MAIN commitmail json YAML

Add parsepath for rumpfs in place of using cn_consume.

(dholland)

2021-06-29 22:37:50 UTC MAIN commitmail json YAML

Implement VOP_PARSEPATH() for hfs.

This checks for a following "/rsrc" at the end of the pathname (to
indicate the resource fork of a file) and assimilates it into the
component name to be looked up. Then cn_namelen will already include
this text in lookup, and it's no longer necessary to muck with
cn_consume.

Invalid uses of "/rsrc" are ignored rather than rejected, which
appears to be the same as the old behavior. It is possible that the
parsepath logic should only consume the "/rsrc" if the name names a
file and not a directory, which would require looking it up in
parsepath and be a general nuisance; I hope not. It's also possible
that the whole thing doesn't work at all now, or it didn't before, as
I don't have any way to test it.

(dholland)

2021-06-29 22:37:11 UTC MAIN commitmail json YAML

2021-06-29 22:34:10 UTC MAIN commitmail json YAML

- Add a new vnode op: VOP_PARSEPATH.
- Move namei_getcomponent to genfs_vnops.c and call it genfs_parsepath.
- Add a parsepath entry to every vnode ops table.

VOP_PARSEPATH takes a directory vnode to be searched and a complete
following path and chooses how much of that path to consume. To begin
with, all parsepath calls are genfs_parsepath, which locates the first
'/' as always.

Note that the call doesn't take the whole struct componentname, only
the string. The other bits of struct componentname should not be
needed and there's no reason to cause potential complications by
exposing them.

(dholland)

2021-06-29 22:29:59 UTC MAIN commitmail json YAML

Adjust namei internals to be able to make an external call to parse
the pathname. (Basically, this means change the signature of
namei_getcomponent(), and thus lookup_parsepath(), to pass in the
directory vnode and to allow failures.)

(dholland)

2021-06-29 21:33:09 UTC MAIN commitmail json YAML

lint: fix wrong warning about out-of-range value '\xff' for char

This only affects platforms where char has the same representation as
unsigned char.

(rillig)

2021-06-29 21:19:58 UTC MAIN commitmail json YAML

Make if_stats_init, if_attach, if_initialize return void.

percpu_alloc can't fail.

Author: Maya Rashish <maya@NetBSD.org>
Committer: Taylor R Campbell <riastradh@NetBSD.org>

(riastradh)

2021-06-29 21:16:54 UTC MAIN commitmail json YAML

lint: rename xsign to convert_integer

The term sign-extend was too specific, the function actually does a
broader conversion.

No functional change.

(rillig)

2021-06-29 21:05:32 UTC MAIN commitmail json YAML

lint: do not modify tnode_t->tn_type in check_init_expr

This is a very small step towards having all shared type_t objects only
referenced via const pointers.  Since the types may be shared, it is a
bad idea to try to modify them, so better let the compiler check this.
It's a long way to reach this goal, but this small step is already
possible.

No functional change.

(rillig)

2021-06-29 21:04:04 UTC MAIN commitmail json YAML

2021-06-29 21:03:37 UTC MAIN commitmail json YAML

Rework the xxxVERBOSE option to share the common module-hook-based
verbose mechanism with MIIVERBOSE.  This reduces some duplicated code
and allows us to once again permit auto-unload of MIIVERBOSE.

Change details:
* Update dev/devlist2h.awk to accomodate miidevs, including generation
  of MII_STR_oui_model definitions and use of oui and model rather than
  vendor and product.  This also changes the compressed data in the
  xxxdevs_data.h files to uint32_t (since mii oui's are up to 6 hex
  digits long)
* Update a couple of phy drivers to use new calls to get verbose data
* Regen all of the xxxdevs{,_data}.h files (separate commit, coming
  very soon)
* Update mii/mii_verbose.[ch] and mii/mii_physubr.c to use the various
  DEV_VERBOSE_xxx macros
* Update the pci, usb, and hdaudio code as needed, to #include the
  xxxdevs.h files (in order to get the proper printf format strings)
* Since dev/dev_verbose.c now uses non-literal printf format strings,
  (to deal with the vendor/product vs oui/model issue), we need to
  make sure it gets compiled with -Wno-error=format-nonliteral, even
  in userland's libpci and librumpdev!
* Bump kernel version for the change in module interfaces

Welcome to 9.99.86!

XXX It might be useful in the future to extend the MII_STR_oui_model
XXX definitions to PCI as well (and perhaps USB and HDAUDIO).  This
XXX would allow for a single centralized location for the products'
XXX descriptions, rather than being dispersed among individual
XXX drivers' xxx_match tables.

(pgoyette)

2021-06-29 20:44:38 UTC MAIN commitmail json YAML

lint: do not sign-extend pointers

Sign extension only makes sense for integer types.

No idea why the code had tried to sign-extend pointers for the past 26
years.

(rillig)

2021-06-29 14:19:51 UTC MAIN commitmail json YAML

2021-06-29 13:58:13 UTC MAIN commitmail json YAML

tests/lint: add test that only runs where char == unsigned char

There a 4 regular NetBSD builds where lint is activated.  All these
builds run on platforms where char == signed char.

The official test runs from https://releng.netbsd.org/test-results.html
mostly have char == signed char as well.

However, lint behaves differently on platforms with char == unsigned
char.  On these platforms, a simple "char ch = '\xff'" leads to the
bogus warning that "conversion of 'int' to 'char' is out of range".

(rillig)

2021-06-29 13:48:24 UTC MAIN commitmail json YAML

lint: clean up lex_character_constant

No functional change.

(rillig)

2021-06-29 11:35:28 UTC MAIN commitmail json YAML

KERNEL_BASE is 0xc0000000 for HDL_G.

With this change, HDL-G boots multiuser!

(rin)

2021-06-29 10:26:17 UTC MAIN commitmail json YAML

doc: removed uscanner

(nia)

2021-06-29 10:26:00 UTC MAIN commitmail json YAML

Remove unnecessary Pp, fix formatting, remove empty line.

(wiz)

2021-06-29 10:25:33 UTC MAIN commitmail json YAML

2021-06-29 10:24:41 UTC MAIN commitmail json YAML

mark urio/uscanner device majors obsolete

(nia)

2021-06-29 10:22:37 UTC MAIN commitmail json YAML

Remove uscanner(4) driver

This exists for compatibility with a Linux interface which was apparently
deprecated in Linux 2.6. There are various mailing list threads going
back to 2004 where the usefulness of this driver is discussed, but
the conclusion is that scanner software has all moved to using ugen(4)
instead, and enabling this driver will not help you scan things.

(nia)

2021-06-29 10:12:35 UTC MAIN commitmail json YAML

lint: fix typos in comment

(rillig)

2021-06-29 10:02:34 UTC MAIN commitmail json YAML

Note OpenBSD cross-build progress

(cjep)

2021-06-29 09:44:25 UTC MAIN commitmail json YAML

tests/lint: add 'make accept' to update the expected output

(rillig)

2021-06-29 09:19:17 UTC MAIN commitmail json YAML

tests/lint: add tests for ILP32 platforms

Previously, all tests for lint had to produce the exact same output, no
matter which platform they ran on.  This differs from practical needs
since lint is intended to produce different results depending on whether
the platform is ILP32 or LP64.

Examples for these are type conversions and the widths of the integer
types during lexical analysis.

(rillig)

2021-06-29 08:51:04 UTC MAIN commitmail json YAML

PR toolchain/56180. Additional to yesterday's commit in gcc, also needed in
gcc.old. Add configuration so that gcc can find the LTO plugin when
cross-building NetBSD from OpenBSD hosts.

(cjep)

2021-06-29 08:46:10 UTC MAIN commitmail json YAML

tests/lint: allow tests to be skipped depending on platform properties

(rillig)

2021-06-29 08:02:50 UTC MAIN commitmail json YAML

1. Rework the IFS handling when checking consistency of formatting in
sysinst messages. Closes PR toolchain/56181.
2. Whilst here, change some shell clauses to be more portable.

Patch developed by kre. Also reviewed by martin. Cross-builds tested
on NetBSD, OpenBSD, FreeBSD and Darwin.

(cjep)

2021-06-29 07:37:34 UTC MAIN commitmail json YAML

tests/lint: do not modify t_integration on "make add-test"

The test names are no longer listed individually.

(rillig)

2021-06-29 07:28:02 UTC MAIN commitmail json YAML

tests/lint: add test for character constant using backslash-newline

(rillig)

2021-06-29 07:23:21 UTC MAIN commitmail json YAML

lint: fix lexical analysis of character constants in traditional C

The code now follows the wording of the C Reference Manual from 1978.

(rillig)

2021-06-29 07:17:43 UTC MAIN commitmail json YAML

2021-06-29 06:28:07 UTC MAIN commitmail json YAML

2021-06-29 05:41:45 UTC MAIN commitmail json YAML

lint: remove comment from grammar rule type_direct_decl

The 'identifier' in type_direct_decl is necessary, as demonstrated in
the test d_typename_as_var.  Replacing T_NAME with 'identifier' in
notype_direct_decl would increase the shift/reduce conflicts by 6.  To
keep this number low, keep everything as-is.

(rillig)

2021-06-29 00:35:23 UTC MAIN commitmail json YAML

Allow BROKEN_TESTS to cause TESTS to be skipped.

Some tests simply do not work in some environments.
Eg. shell-ksh on macos/arm64
Allow local site to set BROKEN_TESTS to skip those they know
will not work.

Reviewed by: rillig

(sjg)

2021-06-28 17:52:13 UTC MAIN commitmail json YAML

VOP_BMAP() may be called via ioctl(FIOGETBMAP) on any vnode that applications
can open.  change various pseudo-fs *_bmap methods return an error instead of
panic.

Reported-by: syzbot+8289a3eaf2ba60958c87@syzkaller.appspotmail.com

(chs)

2021-06-28 11:27:00 UTC MAIN commitmail json YAML

lint: in C99 mode, complain about implicitly declared functions

C99, foreword, p5, item 22 lists among the major changes from C90:
"remove implicit function declaration".

(rillig)

2021-06-28 11:09:35 UTC MAIN commitmail json YAML

2021-06-28 10:29:05 UTC MAIN commitmail json YAML

2021-06-28 10:23:50 UTC MAIN commitmail json YAML

2021-06-28 10:07:43 UTC MAIN commitmail json YAML

lint: turn null pointer dereference into assertion failure

Originally I only needed a message that would output the type name from
an abstract-declarator (C99 6.7.6), to see whether lint interprets the
types correctly.

Message 155 looked like a good candidate, but it only revealed more
incomplete and untested code in lint.

(rillig)

2021-06-28 09:40:53 UTC MAIN commitmail json YAML

lint: rename grammar rules for abstract declarators

The previous name 'decl' was ambiguous, it could have meant declaration
as well as declarator.  The new names are aligned with C99.

No functional change.

(rillig)

2021-06-28 09:14:42 UTC MAIN commitmail json YAML

lint: align grammar with C99

C99 uses type-qualifier-list_opt in section 6.7.5.

(rillig)

2021-06-28 09:13:11 UTC MAIN commitmail json YAML

PR toolchain/56180. Add configuration so that gcc can find the LTO
plugin when cross-building NetBSD from OpenBSD hosts. Discussed with mrg.

(cjep)

2021-06-28 09:09:14 UTC MAIN commitmail json YAML

apply sh3 vs lex.c fix for GCC >= 9.  use shorter idiom.

fixes build issue reported by jdbaker in private email.

(mrg)