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 (177d) 

2024-05-10 00:26:17 UTC Now

2021-06-28 09:00:45 UTC MAIN commitmail json YAML

2021-06-28 08:52:56 UTC MAIN commitmail json YAML

lint: rename pqinf_t to qual_ptr and clean up code

The 'inf' from the type name meant 'information' and was redundant. Each
object of that type represents a single pointer level, which made the
documentation about 'pointers' a bit confusing.

The members of struct qual_ptr are now in the canonical reading order,
which is 'const volatile pointer'.

No functional change.

(rillig)

2021-06-28 07:55:05 UTC MAIN commitmail json YAML

lint: only accept assignment-expression in _Generic

That's what C11 says.

(rillig)

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

avoid triggering conflict indicator warnings

(cjep)

2021-06-28 07:16:46 UTC MAIN commitmail json YAML

note on Darwin/Mac

(cjep)

2021-06-27 23:57:08 UTC MAIN commitmail json YAML

Fix PR lib/55931
Only reset outcol if we actually emit a \n as cursor_down may not may
not put the cursor at the start of the next line.

(blymn)

2021-06-27 22:41:55 UTC MAIN commitmail json YAML

Since there's a bit of code that is conditionally compiled based on
USBVERBOSE, we need to include the opt_usbverbose.h header to get any
possible definition of this macro.

XXX Note that this code will NOT get included in the loadable module
XXX for USBVERBOSE.

(pgoyette)

2021-06-27 21:52:18 UTC MAIN commitmail json YAML

lint: consistently use 'opt' as suffix

This corresponds to the usage in the C standards, where 'opt' is used as
a subscripted suffix.

No functional change.

(rillig)

2021-06-27 21:46:17 UTC MAIN commitmail json YAML

lint: remove redundant '{ $$ = $1; }' from the grammar

In some cases the redundant code had been spelled out, in others it had
been left out.  Be consistent.

(rillig)

2021-06-27 21:36:14 UTC MAIN commitmail json YAML

lint: reorder grammar rules from big to small

No functional change.

(rillig)

2021-06-27 21:30:46 UTC MAIN commitmail json YAML

lint: fix parsing of _Generic selection expressions

Previously, lint accepted comma-expressions where only
assignment-expressions are allowed.

This change does not make a difference in practice though since lint is
usually only run on source code that properly compiles.  Nevertheless,
rather be precise and accurate since the grammar might some day be
reused on less reliable input.

(rillig)

2021-06-27 21:16:40 UTC MAIN commitmail json YAML

lint: fix type comparison in _Generic selection expressions

In the newly added test comma_expression, there were two distinct type
objects for the tspec DOUBLE.

(rillig)

2021-06-27 20:47:14 UTC MAIN commitmail json YAML

2021-06-27 19:59:23 UTC MAIN commitmail json YAML

2021-06-27 19:41:15 UTC MAIN commitmail json YAML

tests/lint: fix selection of the .exp-ln file

Since t_integration.sh 1.58 from today, the expected .ln output was not
detected anymore.  Changes to the file format would have gone unnoticed.

(rillig)

2021-06-27 19:33:25 UTC MAIN commitmail json YAML

tests/lint: remove list of test names from t_integration

By convention, each *.c file in the source directory is a test case.

There is no need to list them individually and redundantly.

There is also no need to group the tests for the individual messages.
This ensures that each test is run in the regular builds.  Previously,
the test all_messages stopped after the first failure.

(rillig)

2021-06-27 19:10:29 UTC MAIN commitmail json YAML

lint: require C11 for _Generic

This does not have any effect in practice since the option -g
(originally meant for GCC extensions to the C standards) implicitly
allows all features from C11, since err.c 1.111 from 2021-04-14.

Since the default lint flags for NetBSD builds include the option -g,
this allows all C11 features.

Currently it is not possible to say "allow GNU extensions but not C11".

(rillig)

2021-06-27 18:54:14 UTC MAIN commitmail json YAML

lint: sort and rename grammar rules for generic selection

No functional change.

(rillig)

2021-06-27 18:48:45 UTC MAIN commitmail json YAML

lint: fix option -Ac11, add test for _Generic

Previously, selecting the option -Ac11 allowed features from C11 but at
the same time prohibited 'long long', which was added in C99.  This was
caused by the option -s, which is interpreted as "allow features from
C90, but no later".

The test for _Generic, which has been added in C11, demonstrates that
the current implementation is broken.  Lint currently thinks that the
return type of a _Generic selection is the type of the expression, but
it really is the type of the selected expression.  In the current tests,
this is always 'const char *', but C11 does not require that the types
of a generic selection are compatible.

(rillig)

2021-06-27 18:19:13 UTC MAIN commitmail json YAML

lint: fix uninitialized variable for declaration after statement

(rillig)

2021-06-27 18:03:05 UTC MAIN commitmail json YAML

lint: proof-read the C grammar, remove unnecessary %type

After the fix from the previous commit (a missing assignment to $$ in an
error case), make sure that there are no other bugs of the same kind, by
manually checking that each rule with a %type assigns $$ in each and
every case.  There is one more instance in block_item_list, but that
does not lead to a crash since it affects only a boolean variable, not a
pointer.

It should not be necessary to check for this class of bugs manually, but
neither BSD yacc nor GNU Bison provide any warning option to help with
this scenario.  They should have remarked that the %type for
type_attribute is never used, since that is easy to detect.  They should
have also warned that the rule for block_item_list does not mention $$
at all.

Detecting the bug from the previous commit would probably be too much to
ask since it involves control flow analysis in the C code.  In this
particular case, it would have been necessary to visit each possible
branch from the 'if' statement and ensure that there is a $$ on the
left-hand side of an assignment.

While here, note down several small inconsistencies in the grammar that
should be fixed in follow-up commits.

(rillig)

2021-06-27 16:24:52 UTC MAIN commitmail json YAML

2021-06-27 13:59:29 UTC MAIN commitmail json YAML

lint: fix undefined behavior after syntax error 'unnamed member'

There should really be a linter or other check that guards against
forgetting to assign a value to '$$'.

(rillig)

2021-06-27 12:26:33 UTC MAIN commitmail json YAML

PR 55325: unify both pvo pools (for managed and unmanaged pages).
Analyzis by rin, fix suggested by chs.

(martin)

2021-06-27 12:11:10 UTC MAIN commitmail json YAML

tests/lint: fix list of files to be installed

(rillig)

2021-06-27 10:14:43 UTC MAIN commitmail json YAML

tests/lint: allow skipping individual tests

Depending on the platform, some tests do not make sense or produce
platform-dependent results.  Allow these tests to be marked as such.

For example, the test lex_integer.c only works on 64-bit platforms.
Therefore it is disabled on i386 for now since it prints different
warnings there.  Even better would be a "lint1-only-on-lpi32" toggle,
but that would need detection of 'sizeof(int)' at runtime.

(rillig)

2021-06-27 09:22:31 UTC MAIN commitmail json YAML

2021-06-27 09:13:08 UTC MAIN commitmail json YAML

factor out the ktrace printing into their own functions.

(christos)

2021-06-27 08:43:50 UTC MAIN commitmail json YAML

2021-06-27 08:20:50 UTC MAIN commitmail json YAML

lint: fix type of pqinf.p_pcnt

A counter that can either be 0 or 1 and is never incremented is not
really a counter, it's a flag.

No functional change.

(rillig)

2021-06-27 08:10:36 UTC MAIN commitmail json YAML

drm: Release fence after use.

May plug the dreaded radeon kmem memory leak.

XXX pullup-9

(riastradh)

2021-06-27 05:25:12 UTC MAIN commitmail json YAML

Use more SMALL binaries and reduce diffs between sun2 and sun3.

(tsutsui)

2021-06-26 15:02:19 UTC MAIN commitmail json YAML

2021-06-26 10:43:52 UTC MAIN commitmail json YAML

2021-06-26 09:29:14 UTC MAIN commitmail json YAML

2021-06-26 09:13:00 UTC MAIN commitmail json YAML

ARMADILLO-IOT-G3 kernel was gone; it is now supported by GENERIC.

(rin)

2021-06-26 09:11:31 UTC MAIN commitmail json YAML

Set VMSWAP_DEFAULT_PLAINTEXT for hpcarm and hpcmips, that suffer from
slow CPU as well as memory shortage.

For hpcsh, this option is already enabled by std.sh3.

(rin)

2021-06-26 09:05:24 UTC MAIN commitmail json YAML

2021-06-26 09:03:46 UTC MAIN commitmail json YAML

Oops, revert unintentional part of the previous.

(rin)

2021-06-26 09:00:39 UTC MAIN commitmail json YAML

Set VMSWAP_DEFAULT_PLAINTEXT for Explora 450 (IBM_PPC403).
(slow CPU & memory shortage)

(rin)

2021-06-26 00:38:16 UTC MAIN commitmail json YAML

Check if /tmp is writable to see whether the rootdev is already mounted.

Creating a dummy /tmp/root_writable file and after mountroot and
checking it on the second installation could be problematic if
users retry to installation after reboot without reinstalling miniroot.
Taken from amiga.

(tsutsui)

2021-06-26 00:28:19 UTC MAIN commitmail json YAML

Remove an obsolete comment.

(tsutsui)

2021-06-26 00:25:41 UTC MAIN commitmail json YAML

2021-06-25 20:17:56 UTC MAIN commitmail json YAML

ensure defined(HAVE_GCC) before use of ${HAVE_GCC}

(tnn)

2021-06-25 19:14:30 UTC netbsd-8 commitmail json YAML

2021-06-25 19:13:20 UTC netbsd-8 commitmail json YAML

Pull up following revision(s) (requested by tsutsui in ticket #1686):

distrib/sun3/miniroot/Makefile: revision 1.50
distrib/miniroot/install.sub: revision 1.61
distrib/miniroot/install.sub: revision 1.62 (patch)
distrib/sun2/miniroot/Makefile: revision 1.40

Replace RELEASE and VERSION strings proplery.
sun2 and sun3 don't use MI src/distrib/miniroot/list so this should
have been sync'ed with it.

http://cvsweb.netbsd.org/bsdweb.cgi/src/distrib/miniroot/list#rev1.36
> Use proper release version strings ("9.1" rather than "91") in banners.
>
> Also define and use "MACHINE" variable to describe port names
> (no uname(1) or sysctl(8) in miniroot binary list by default).

Should be pulled up to netbsd-9.

Remove netstat(1) calls to print resolver info on upgrade using miniroot.
netstat(1) was removed from miniroot 25 years ago.
http://cvsweb.netbsd.org/bsdweb.cgi/src/distrib/miniroot/list#rev1.5

The modules and rescue sets are also required on upgrade.
Should be pulled up to netbsd-9 and netbsd-8.

(martin)

2021-06-25 19:13:12 UTC MAIN commitmail json YAML

sun4v: update TODO file with current sun4v progress

(palle)

2021-06-25 19:10:50 UTC MAIN commitmail json YAML

sun4v: vdsk - restart the ldc state machine when the ldc endpoint resets the link or a DATA/NACK/DRING_DATA message is received. These changes make the driver more robust. In a ldom with Solaris 11.4 SRU30 as primary domain (T5 host system) frequent resets and NACK messages are observed.

(palle)

2021-06-25 19:09:53 UTC netbsd-9 commitmail json YAML

2021-06-25 19:08:46 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by tsutsui in ticket #1310):

distrib/sun3/miniroot/Makefile: revision 1.50
distrib/miniroot/install.sub: revision 1.61
distrib/miniroot/install.sub: revision 1.62
distrib/sun2/miniroot/Makefile: revision 1.40

Replace RELEASE and VERSION strings proplery.
sun2 and sun3 don't use MI src/distrib/miniroot/list so this should
have been sync'ed with it.

http://cvsweb.netbsd.org/bsdweb.cgi/src/distrib/miniroot/list#rev1.36
> Use proper release version strings ("9.1" rather than "91") in banners.
>
> Also define and use "MACHINE" variable to describe port names
> (no uname(1) or sysctl(8) in miniroot binary list by default).

Should be pulled up to netbsd-9.

Remove netstat(1) calls to print resolver info on upgrade using miniroot.
netstat(1) was removed from miniroot 25 years ago.
http://cvsweb.netbsd.org/bsdweb.cgi/src/distrib/miniroot/list#rev1.5

The modules and rescue sets are also required on upgrade.
Should be pulled up to netbsd-9 and netbsd-8.

(martin)

2021-06-25 18:08:34 UTC MAIN commitmail json YAML

2021-06-25 16:10:07 UTC MAIN commitmail json YAML

make: prevent newline injection in .for loops

When a value of a .for loop contained a literal newline, such as from
the expression ${.newline}, that newline was passed verbatim to the
"expanded current body" of the .for loop.  There it was interpreted as a
literal newline, which ended the current line and started a new one.
This resulted in several syntax errors.

In cases like these, print a more precise error message.

(rillig)

2021-06-25 15:56:02 UTC MAIN commitmail json YAML

2021-06-25 13:41:34 UTC MAIN commitmail json YAML

Reduce code duplication among platforms that use the i82378 SIO to
route PCI interrupts to the ISA PIC by refactoring it into a new
sio_pirq_intr_map() function.

(thorpej)

2021-06-25 13:38:21 UTC MAIN commitmail json YAML

2021-06-25 13:32:39 UTC MAIN commitmail json YAML

Define macros to desribe the PIRQ_RTCTRL register(s).

(thorpej)

2021-06-25 08:41:09 UTC MAIN commitmail json YAML

fdt "/reserved-memory" node should be handled

(ryo)

2021-06-25 07:03:28 UTC MAIN commitmail json YAML

PR/56095 SOPINE Clusterboard unable to transmit network data

Add allwinner,tx-delay-ps = <500> using the diff supplied by tnn@

(skrll)

2021-06-25 03:52:41 UTC MAIN commitmail json YAML

- Use the default implementations of attach_hook(), make_tag(), and
  decompose_tag().
- In lca_bus_maxdevs(), only allow devices 0-15 on bus #0.
- Re-factor some duplicated code into lca_make_type0addr().

(thorpej)

2021-06-25 03:49:47 UTC MAIN commitmail json YAML

- Use the default implementations of attach_hook(), make_tag(), and
  decompose_tag().
- In ttwoga_make_type0addr(), assert that we have an IDSEL in our range,
  and otherwise always succeed.
- In ttwoga_bus_maxdevs(), allow only devices 0-9 on bus #0.

(thorpej)

2021-06-25 03:46:54 UTC MAIN commitmail json YAML

Use the default implementation of attach_hook().

(thorpej)

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

Use the default implementation of attach_hook().

(thorpej)

2021-06-25 03:45:59 UTC MAIN commitmail json YAML

Use the default implementations of attach_hook(), bus_maxdevs(),
make_tag(), and decompose_tag().

(thorpej)

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

Make the following PCI chipset functions optional:
- attach_hook()
- bus_maxdevs()
- make_tag()
- decompose_tag()
...and provide a default implementation for each.

(thorpej)

2021-06-24 23:48:08 UTC MAIN commitmail json YAML

From the "Should have been done years ago" department, add some macros
describing the format of PCI Type 0 and Type 1 Configuration Cycle
addresses.

(thorpej)

2021-06-24 23:22:17 UTC MAIN commitmail json YAML

tests/make: test .for loop over a variable named '$'

It's an impractical edge case, nevertheless it's accepted by make.

(rillig)

2021-06-24 23:19:52 UTC MAIN commitmail json YAML

make: sprinkle const

(rillig)

2021-06-24 23:01:37 UTC MAIN commitmail json YAML

clarify some comments about what the "send callback" is.

(mrg)

2021-06-24 23:01:03 UTC MAIN commitmail json YAML

turn off ohcidebug by default.  none of the other HCs do this.

next up:  options to set these by default

(mrg)

2021-06-24 23:00:14 UTC MAIN commitmail json YAML

update a couple of lists of drivers that have had a few changes

(mrg)

2021-06-24 16:41:16 UTC MAIN commitmail json YAML

Deal with a scenario where:
- DMA map has a boundary constraint.
- Caller asks us to map a buffer that's exactly the same size as the
  boundary constraint, but is not page-aligned.

This results in the size being larger than the boundary constraint after
page-rounding, and and vmem_xalloc() fires a KASSERT for it.  This is
easy to trigger by running fsck.

We handle this by detecting the condition and creating an extra DMA
segment for it the spill-over.

(thorpej)

2021-06-24 15:41:25 UTC MAIN commitmail json YAML

Fix printf format for size_t

(martin)

2021-06-24 09:17:53 UTC MAIN commitmail json YAML

iwm(4): Disentangle attach.

Don't attach a half-baked interface and then detach it and then
reattach it after mountroot when we can read firmware; just defer
attaching the interface altogether until mountroot.

Likely fixes some panics I've seen every now and then at boot with
iwm(4).

(riastradh)

2021-06-24 08:20:42 UTC MAIN commitmail json YAML

ucom(4): Fix earlier mistake causing pipes not to be closed.

In revision 1.123, mrg@ changed what he thought was a double-close,
but was actually abort&close (as is appropriate) to just abort (which
is not enough -- leaks the pipe).  This restores the abort&close.

The original `bug' was found by code inspection, whereas this bug was
found by asserting in usb_subr.c that no pipes are open on device
disconnection after detach; the asserts actually triggered with
several ucom(4) devices, and no longer trigger with this change.

XXX pullup-9

(riastradh)

2021-06-24 07:16:49 UTC MAIN commitmail json YAML

Call check_siginfo() in compression loop to provide SIGINFO compression
progress.
Suggested by mrg@.

(simonb)

2021-06-24 05:53:05 UTC MAIN commitmail json YAML

Make sure we don't use wide char routines when DISABLE_WCHAR is in
effect.

(blymn)

2021-06-24 01:23:17 UTC MAIN commitmail json YAML

boot1.c: remove a comment that's no longer relevant/correct

In r. 1.13, a check of the return value in fd was removed, and a comment
about this ("...so keep going") added. Then in r. 1.19, the fd return
value check was reinstated (as the true underlying errno could be masked
by the fstat() call), so there is no "keep going" happening anymore.

(gutteridge)

2021-06-23 21:43:38 UTC MAIN commitmail json YAML

When printing memory size, don't promote to next unit size unless it is at
two digits.

(jmcneill)

2021-06-23 21:42:43 UTC MAIN commitmail json YAML

2021-06-23 20:55:50 UTC MAIN commitmail json YAML

Fix buffer size for alignment adjusted block I/O reads.

(jmcneill)

2021-06-23 20:20:44 UTC MAIN commitmail json YAML

nbmacppc-fixcoff did not cross-build correctly on OpenBSD because
fixcoff.c had its own definition of htobe16. The toolchain
already handles this. Now builds on OpenBSD. Checked on NetBSD, Darwin &
Linux.

Discussed with uwe@

(cjep)

2021-06-23 18:30:33 UTC MAIN commitmail json YAML

2021-06-23 15:11:40 UTC MAIN commitmail json YAML

Remove an unused #define.

(simonb)

2021-06-23 14:22:08 UTC MAIN commitmail json YAML

restore(8): Mark fail_dirtmp __dead to fix clang build.

(riastradh)

2021-06-23 07:11:41 UTC MAIN commitmail json YAML

lint1: add bug report for internal GCC compiler error

(rillig)

2021-06-23 00:56:41 UTC MAIN commitmail json YAML

make ahcisata(4) work on rk3399 (rockpro64)

on rk3399, a marvell 9230 ahci sata card consistently takes between
1213 and 1216 milliseconds, the ahci spec says this should complete
in 1000 or fewer.

add a "pcie-reset-ms" uint32 property that ahcisata defaults to 1000
if not set, and the rockchip platform code sets to 2000.

ok @jmcneill

(mrg)

2021-06-23 00:38:12 UTC MAIN commitmail json YAML

print_banner: Print memory size like x86 does

(jmcneill)

2021-06-22 21:56:51 UTC MAIN commitmail json YAML

efiboot: Use EFI_BLOCK_IO_PROTOCOL if EFI_DISK_IO_PROTOCOL is missing

UEFI spec says that firmware should automatically add EFI_DISK_IO_PROTOCOL
for all produced EFI_BLOCK_IO_PROTOCOL interfaces. Unfortunately U-Boot
doesn't do this, so fallback to block I/O if disk I/O is not there.

(jmcneill)

2021-06-22 19:53:58 UTC MAIN commitmail json YAML

efiboot (x86): add ASCII art

(nia)

2021-06-22 13:02:52 UTC MAIN commitmail json YAML

Document sh3* lint hack for gcc 9

(martin)

2021-06-22 12:58:28 UTC MAIN commitmail json YAML

Hack to avoid gcc 9 internal compiler error for sh3.

(martin)

2021-06-22 10:19:35 UTC MAIN commitmail json YAML

efirng: fix va_num arg to uefi_call_wrapper for GetRNG calls

As far as I can tell this param isn't actually used, but it is supposed to
be the number of arguments passed to the called method.

(jmcneill)

2021-06-22 07:49:59 UTC MAIN commitmail json YAML

2021-06-22 07:49:09 UTC MAIN commitmail json YAML

Rework the fix for lib/56224.
Move the scroll check to _cursesi_addwchar
Perform the scroll check before updating the cursor location when
processing \n.

(blymn)

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

2021-06-22 07:26:45 UTC MAIN commitmail json YAML

Fix how the slk are drawn by making sure we use ins_wchar in the
bottom left of the screen to avoid a scroll because this may cause
an ERR if scrollok is false.

(blymn)

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

Fix the debug output to stop spamming out the aline for row 0, we
may not be working on that row so the output is pointless.

(blymn)

2021-06-22 05:12:27 UTC netbsd-9 commitmail json YAML

2021-06-22 05:10:50 UTC netbsd-9 commitmail json YAML

Fix pullup #1302 by adapting the changes to this branch
(there was a misunderstanding in the ticket handling)

(martin)

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

boot.8: minor grammar tweaks

(gutteridge)

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

2021-06-21 21:18:47 UTC MAIN commitmail json YAML

efiboot: Add readahead support.

Reading data through libsa file-systems ends up breaking block I/O
accesses into very small (512-byte or 2048-byte) accesses. This can be
very inefficient, and causes Ampere eMAG w/ BMC image direction to take
_minutes_ to load the install image and kernel. So slow in fact that
the default watchdog timeout will fire before it finishes.

So, when loading big files, optimistically read ahead up to 64KB of data.
Brings the time to boot the install ISO down to around 40 seconds -- still
not ideal but way better than before.

(jmcneill)

2021-06-21 21:10:01 UTC MAIN commitmail json YAML

make: fix grammar in error message for malformed conditional

(rillig)

2021-06-21 21:07:35 UTC MAIN commitmail json YAML

make: clean up comments in cond.c

(rillig)

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

make: use simpler upper bound for length in Buf_AddInt

No functional change.

(rillig)

2021-06-21 19:52:17 UTC MAIN commitmail json YAML

use a single printf call for readability

(nia)

2021-06-21 19:43:17 UTC MAIN commitmail json YAML

biosboot: Add ASCII art.

(nia)

2021-06-21 19:07:30 UTC MAIN commitmail json YAML

efiboot: Add ASCII art.

(nia)

2021-06-21 18:54:41 UTC MAIN commitmail json YAML

make: replace macro is_shell_metachar with inline function

No functional change.

(rillig)

2021-06-21 18:25:20 UTC MAIN commitmail json YAML

make: use more practical data type in RegexReplace

While size_t is most appropriate for array indexes, make needs to be
compatible with C90, which does not support the %zu printf conversion.
To avoid type casts, use a simple unsigned int here, which is more than
enough for storing a single decimal digit.

No functional change.

(rillig)

2021-06-21 18:12:49 UTC MAIN commitmail json YAML

make: extract RegexReplace from ModifyWord_SubstRegex

No functional change.

(rillig)

2021-06-21 17:52:33 UTC MAIN commitmail json YAML

make: move all labels in ModifyWord_SubstRegex to the same level

No functional change.

(rillig)

2021-06-21 17:46:13 UTC netbsd-8 commitmail json YAML

2021-06-21 17:43:18 UTC netbsd-8 commitmail json YAML

Apply patch, requested by mrg in ticket #1684 (no corresponding
change in HEAD, oabi has been removed):

compat/arm/oabi/bsd.oabi.mk (apply patch)

Fix PR 50192.

(martin)

2021-06-21 17:42:15 UTC netbsd-9 commitmail json YAML

2021-06-21 17:40:43 UTC netbsd-9 commitmail json YAML

Apply patch, requested by mrg in ticket #1309 (no corresponding
change in HEAD, oabi has been removed):

compat/arm/oabi/bsd.oabi.mk (apply patch)

Fix PR 50192.

(martin)

2021-06-21 17:34:42 UTC netbsd-9 commitmail json YAML

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

sys/arch/amd64/conf/GENERIC: revision 1.581

Enable tpm @ acpi (now that it can match TPM 1.2 devices, which are not,
as the comment implies, experimental).

(martin)

2021-06-21 17:32:52 UTC netbsd-9 commitmail json YAML

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

sys/arch/amd64/amd64/db_disasm.c: revision 1.28
sys/arch/i386/i386/db_disasm.c: revision 1.49

ddb/amd64: Don't go out of the way to detect invalid addresses.

db_disasm had logic to detect invalid addresses before trying to
disassemble them.  But when disassembling a null instruction address,
the logic to detect invalid addresses itself tried to dereference an
invalid address.

db_get_value can already handle this situation gracefully, so there is
no need for this faulty fault-avoidance logic.

Fixes double-fault in ddb on calling null function pointers.  With
any luck, this should make diagnosing such bugs easier in the future!

ddb/i386: Don't go out of the way to detect invalid addresses.
db_read_bytes already does this better (but didn't at the time this
check was originally added back in 1998).  Not sure if this code had
the same mistake as the amd64 code causing it to trip over its own
shoelaces, but there should be no need for it here.

(martin)

2021-06-21 17:27:57 UTC netbsd-9 commitmail json YAML

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

sys/dev/usb/umass.c: revision 1.185
sys/dev/usb/umass_scsipi.c: revision 1.68

umass(4): Use an empty function callback, not null pointer.

This stupid bug, with an `XXX Broken!' comment right above, has been
preventing NetBSD from suspend/resume with a USB drive plugged in for
longer than I want to even think about admitting.  *sigh*
umass(4): Assert that we got a cb up front.

Avoids jump to zero waaaaaaay down the line where we've forgotten why
we wanted to jump into oblivion.

(martin)

2021-06-21 17:25:48 UTC netbsd-9 commitmail json YAML

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

sys/dev/ic/nvmevar.h: revision 1.22
sys/dev/ic/nvme.c: revision 1.56
sys/dev/ic/nvme.c: revision 1.57
sys/dev/pci/nvme_pci.c: revision 1.30

nvme(4): Add suspend/resume, derived from OpenBSD.

nvme(4): Move disestablishment of admin q interrupt to nvme_detach.

Nothing re-established this after suspend/resume, so attempting
suspend/resume/suspend would crash, and presumably we would miss
interrupts after resume.  This keeps the establish/disestablish more
symmetric in attach/detach.

(martin)

2021-06-21 17:23:13 UTC netbsd-9 commitmail json YAML

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

sys/dev/ldvar.h: revision 1.35
sys/dev/ld.c: revision 1.112

ld(4): Block requests while suspended until resumed.

Otherwise nothing stops us from continuing to feed I/O to the disk
controller when it expects that the queues are quiesced as it pokes
registers to change its power states.  Fixes resume during disk
activity on my T480 with nvme.

(martin)

2021-06-21 17:21:37 UTC MAIN commitmail json YAML

make: reduce indentation in ModifyWord_SubstRegex for ':C'

No functional change.

(rillig)

2021-06-21 17:19:55 UTC netbsd-9 commitmail json YAML

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

sys/arch/x86/pci/dwiic_pci.c: revision 1.5 (patch)

dwiic(4): Attribute output correctly and relegate to debug-level.

Tidy up a little while here.

(martin)

2021-06-21 17:15:38 UTC netbsd-9 commitmail json YAML

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

sys/dev/usb/ualea.c: revision 1.13

ualea(4): Null suspend/resume handler.

(martin)

2021-06-21 17:11:46 UTC netbsd-9 commitmail json YAML

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

sys/dev/usb/xhci.c: revision 1.140
sys/dev/usb/xhci.c: revision 1.141
sys/dev/usb/xhci.c: revision 1.143
sys/dev/usb/xhcivar.h: revision 1.18
sys/dev/usb/xhcivar.h: revision 1.19
sys/dev/usb/xhcireg.h: revision 1.19
sys/dev/usb/xhci.c: revision 1.139

xhci(4): Draft suspend/resume.

Work almost entirely done and tested by maya@ based on xhci 1.2 spec;
tidied up and tweaked by me.

Not sure about issuing Stop Endpoint commands or ensuring the Command
Ring is in the Stopped or Idle state, but this seems to work as is,
so it's already an improvement over what we had before which was no
xhci suspend/resume at all.

In particular, it's not clear to us:
- if we don't have any pending USB activity whether we need to issue
  the Stop Endpoints or quiesce the command ring; but
- if we do have any pending USB activity whether issuing Stop
  Endpoint is enough or whether we also need to do anything to
  synchronize with other software logic to quiesce it too.

xhci(4): Block commands and issue Stop Endpoint on suspend.

xhci: Fix logic in waiting for command queue access.
_Either_ an existing command in progress, _or_ an existing suspend in
progress that is not done by us, should block us; the logic I wrote
previously erroneously blocked only if both conditions happened at
the same time.

Should fix issue reported by Andrius V in the PR kern/56050 followup
discussion.

xhci(4): Wait USB_RESUME_WAIT ms, not 20 ms.
Better to use the named constant, and although the spec says 20 ms is
enough, apparently for some devices it's not.

(martin)

2021-06-21 16:59:18 UTC MAIN commitmail json YAML

make: eliminate local variable in Substring_Words

No functional change.

(rillig)

2021-06-21 16:41:02 UTC netbsd-9 commitmail json YAML

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

sys/external/bsd/drm2/dist/drm/i915/i915_drv.h: revision 1.33 (patch)

i915drmkms: Fix LOCKDEBUG panic and potential deadlock.

This path is taken with a spin lock held, and possibly even in
interrupt context, where taking vmobjlock is not kosher, but we are
guaranteed to have the queue populated and unchanging.

XXX pullup-9

(martin)

2021-06-21 16:14:14 UTC netbsd-9 commitmail json YAML

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

sys/kern/kern_ksyms.c: revision 1.90
sys/kern/kern_ksyms.c: revision 1.91
sys/kern/kern_ksyms.c: revision 1.92
sys/kern/kern_ksyms.c: revision 1.93
sys/kern/kern_ksyms.c: revision 1.94
sys/kern/kern_ksyms.c: revision 1.95
sys/kern/kern_ksyms.c: revision 1.96
sys/kern/kern_ksyms.c: revision 1.97

ksyms(4): Fix ksymsread synchronization.

Fixes crash on concurrent update and read of /dev/ksyms.
XXX Unclear why we have to skip sd_gone entries here -- it seems like
they should be preserved until ksymsclose.
ksyms(4): Modify ksyms_symtabs only at IPL_HIGH.

This limits the opportunities for ddb to witness an inconsistent
state of the symbol table list.
ksyms(4): Don't skip symbol tables that are soon to be freed.

They will not actually be freed until /dev/ksyms is closed, so
continued access to them remains kosher.
Revert "ksyms(4): Don't skip symbol tables that are soon to be freed."

Apparently the equality kassert this restored doesn't work; to be
analyzed.

Fix regression introduced in rev 1.90
in which the last element of ksyms_symtabs is skipped by mistake.

ksyms(4): Fix race in ksymsread iteration.
TAILQ_NEXT(ksyms_last_snapshot) might change while we are iterating,
but ksyms_last_snapshot itself cannot, so invert the loop structure.

Discussed with rin@.

ksyms(4): Don't skip symbol tables that are soon to be freed, take 2.

They will not actually be freed until /dev/ksyms is closed, so
continued access to them remains kosher.
The previous change was busted because of an off-by-one error in a
previous previous change's iteration over the symtabs; that error has
since been corrected.

ksyms(4): Allow multiple concurrent opens of /dev/ksyms.

First one takes a snapshot; others all agree with the snapshot.
Previously this code path was just broken (could fail horribly if
modules were unloaded after one of the opens is closed), so I just
blocked it off in an earlier commit, but that broke crash(8).  So
let's continue allowing multiple opens seeing the same snapshot, but
without the horrible bugs.

(martin)

2021-06-21 16:04:57 UTC netbsd-9 commitmail json YAML

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

lib/libc/gen/setjmp.3: revision 1.18

Clarify what happens when you longjmp(..., 0).

Derived from C99 7.13.2.1 `The longjmp function'.

(martin)

2021-06-21 15:41:39 UTC netbsd-9 commitmail json YAML

src/external/bsd/libarchive/dist/cat/test/test_0.c@1.1.1.1.16.1 / diff / nxr@1.1.1.1.16.1
src/external/bsd/libarchive/dist/cpio/test/test_basic.c@1.1.1.4.2.1 / diff / nxr@1.1.1.4.2.1
src/external/bsd/libarchive/dist/cpio/test/test_format_newc.c@1.1.1.4.2.1 / diff / nxr@1.1.1.4.2.1
src/external/bsd/libarchive/dist/libarchive/archive_read.c@1.1.1.4.2.1 / diff / nxr@1.1.1.4.2.1
src/external/bsd/libarchive/dist/libarchive/archive_read_disk_posix.c@1.1.1.2.2.1 / diff / nxr@1.1.1.2.2.1
src/external/bsd/libarchive/dist/libarchive/archive_read_open_filename.c@1.1.1.4.14.1 / diff / nxr@1.1.1.4.14.1
src/external/bsd/libarchive/dist/libarchive/archive_read_support_format_xar.c@1.1.1.4.2.1 / diff / nxr@1.1.1.4.2.1
src/external/bsd/libarchive/dist/libarchive/archive_write_disk_posix.c@1.1.1.2.2.3 / diff / nxr@1.1.1.2.2.3
src/external/bsd/libarchive/dist/libarchive/test/test_acl_platform_nfs4.c@1.1.1.2.2.1 / diff / nxr@1.1.1.2.2.1
src/external/bsd/libarchive/dist/libarchive/test/test_acl_platform_posix1e.c@1.1.1.1.18.1 / diff / nxr@1.1.1.1.18.1
src/external/bsd/libarchive/dist/libarchive/test/test_compat_zip.c@1.1.1.4.2.1 / diff / nxr@1.1.1.4.2.1
src/external/bsd/libarchive/dist/libarchive/test/test_fuzz.c@1.1.1.3.2.1 / diff / nxr@1.1.1.3.2.1
src/external/bsd/libarchive/dist/libarchive/test/test_read_extract.c@1.1.1.4.2.1 / diff / nxr@1.1.1.4.2.1
src/external/bsd/libarchive/dist/libarchive/test/test_read_format_gtar_sparse.c@1.1.1.3.14.1 / diff / nxr@1.1.1.3.14.1
src/external/bsd/libarchive/dist/libarchive/test/test_read_format_zip.c@1.1.1.4.2.1 / diff / nxr@1.1.1.4.2.1
src/external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_7075_utf8_paths.c@1.1.1.1.2.1 / diff / nxr@1.1.1.1.2.1
src/external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_comment_stored.c@1.1.1.1.18.1 / diff / nxr@1.1.1.1.18.1
src/external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_extra_padding.c@1.1.1.1.2.1 / diff / nxr@1.1.1.1.2.1
src/external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_high_compression.c@1.1.1.1.18.1 / diff / nxr@1.1.1.1.18.1
src/external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_jar.c@1.1.1.1.18.1 / diff / nxr@1.1.1.1.18.1
      :
(more 25 files)
Apply patch, requested by christos in ticket #1297:

external/bsd/libarchive/dist/cat/test/test_0.c up to 1.2
external/bsd/libarchive/dist/cpio/test/test_basic.c up to 1.2
external/bsd/libarchive/dist/cpio/test/test_format_newc.c up to 1.3
external/bsd/libarchive/dist/libarchive/archive_read.c up to 1.2
external/bsd/libarchive/dist/libarchive/archive_read_disk_posix.c up to 1.2
external/bsd/libarchive/dist/libarchive/archive_read_open_filename.c up to 1.2
external/bsd/libarchive/dist/libarchive/archive_read_support_format_xar.c up to 1.2
external/bsd/libarchive/dist/libarchive/archive_write_disk_posix.c up to 1.6
external/bsd/libarchive/dist/libarchive/test/test_acl_platform_nfs4.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_acl_platform_posix1e.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_compat_zip.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_fuzz.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_extract.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_gtar_sparse.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_7075_utf8_paths.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_comment_stored.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_extra_padding.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_high_compression.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_jar.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_mac_metadata.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_malformed.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_msdos.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_nested.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_nofiletype.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_padded.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_sfx.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_with_invalid_traditional_eocd.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_format_zip_zip64.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_pax_truncated.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_read_truncated_filter.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_sparse_basic.c up to 1.3
external/bsd/libarchive/dist/libarchive/test/test_write_disk.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_write_disk_secure.c up to 1.4
external/bsd/libarchive/dist/libarchive/test/test_write_format_cpio_empty.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_write_format_shar_empty.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_write_format_tar.c up to 1.2
external/bsd/libarchive/dist/libarchive/test/test_write_format_tar_sparse.c up to 1.2
external/bsd/libarchive/dist/tar/write.c up to 1.3
external/bsd/libarchive/dist/tar/test/test_basic.c up to 1.2
external/bsd/libarchive/dist/tar/test/test_copy.c up to 1.3
external/bsd/libarchive/dist/tar/test/test_option_C_upper.c up to 1.2
external/bsd/libarchive/dist/tar/test/test_option_s.c up to 1.2
external/bsd/libarchive/dist/test_utils/test_common.h up to 1.2
external/bsd/libarchive/dist/test_utils/test_main.c up to 1.2

PR 56257: sync libarchive with -current (leaving out changes not relevant
for this branch).

(martin)

2021-06-21 14:56:46 UTC netbsd-8 commitmail json YAML

2021-06-21 14:55:15 UTC netbsd-8 commitmail json YAML

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

sys/sys/namei.src: revision 1.59 (via patch)
sys/kern/vfs_vnops.c: revision 1.215
sys/kern/vfs_lookup.c: revision 1.226

Add a new namei flag NONEXCLHACK for open with O_CREAT and not O_EXCL.
This case needs to be distinguished from the other CREATE operations
because it is supposed to successfully return (and open) the target if
it exists. In the case where that target is the root, or a mount
point, such that there's no parent dir, "real" CREATE operations fail,
but O_CREAT without O_EXCL needs to succeed.

So (a) add the flag, (b) test for it in namei in the situation
described above, (c) set it in open under the appropriate
circumstances, and (d) because this can result in namei returning
ni_dvp of NULL, cope with that case.

Should get into -9 and maybe even -8, because it was prompted by
issues with 3rd-party code. The use of a flag (vs. adding an
additional nameiop, which would be more appropriate) was deliberate to
make the patch small and noninvasive.

(martin)

2021-06-21 14:52:58 UTC netbsd-9 commitmail json YAML

2021-06-21 14:50:57 UTC netbsd-9 commitmail json YAML

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

sys/sys/namei.src: revision 1.59 (via patch)
sys/kern/vfs_vnops.c: revision 1.215
sys/kern/vfs_lookup.c: revision 1.226

Add a new namei flag NONEXCLHACK for open with O_CREAT and not O_EXCL.
This case needs to be distinguished from the other CREATE operations
because it is supposed to successfully return (and open) the target if
it exists. In the case where that target is the root, or a mount
point, such that there's no parent dir, "real" CREATE operations fail,
but O_CREAT without O_EXCL needs to succeed.

So (a) add the flag, (b) test for it in namei in the situation
described above, (c) set it in open under the appropriate
circumstances, and (d) because this can result in namei returning
ni_dvp of NULL, cope with that case.

Should get into -9 and maybe even -8, because it was prompted by
issues with 3rd-party code. The use of a flag (vs. adding an
additional nameiop, which would be more appropriate) was deliberate to
make the patch small and noninvasive.

(martin)

2021-06-21 11:11:33 UTC MAIN commitmail json YAML

efiboot: Use disk I/O protocol for block device access.

EFI_DISK_IO_PROTOCOL is a simplified interface to block devices. Use this
instead of EFI_BLOCK_IO_PROTOCOL for accessing block devices to simplify
the code -- we no longer need to worry about the underlying media's block
I/O size and alignment requirements.

(jmcneill)

2021-06-21 10:42:06 UTC MAIN commitmail json YAML

make: document ParseDependencyOp

(rillig)

2021-06-21 10:33:11 UTC MAIN commitmail json YAML

make: document where to find tests for the dependency lines

(rillig)

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

make: extract ParseDependencySources from ParseDependency

No functional change.

(rillig)

2021-06-21 08:40:44 UTC MAIN commitmail json YAML

make: fix documentation for ParseModifierPart

(rillig)

2021-06-21 08:28:37 UTC MAIN commitmail json YAML

tests/make: remove unnecessary -dL from moderrs.mk

It was only needed for the test for unmatched subexpressions in the
modifier ':C'.  That test has been moved to varmod-subst-regex.mk.

(rillig)

2021-06-21 08:17:39 UTC MAIN commitmail json YAML

tests/make: move and extend test for unmatched '\1' in ':C'

This test lived together with a few unrelated tests in moderrs.mk, it is
better placed in varmod-subst-regex.mk though.

While here, extend, document and explain the test since its purpose was
not obvious from reading the code alone.

(rillig)

2021-06-21 06:36:28 UTC MAIN commitmail json YAML

2021-06-21 04:24:17 UTC MAIN commitmail json YAML

Do not report unmatched regex subexpressions

It is not always an error for a subexpression to have not matched,
since the regex library can/does not convey how many matches are
expected, only report an error if opts.strict (-dL)

Reviewed by: christos

(sjg)

2021-06-21 03:21:17 UTC MAIN commitmail json YAML

fix proplib deprecation

(christos)

2021-06-21 03:19:21 UTC MAIN commitmail json YAML

fix proplib deprecation

(christos)

2021-06-21 03:18:40 UTC MAIN commitmail json YAML

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

fix proplib deprecation

(christos)

2021-06-21 03:16:43 UTC MAIN commitmail json YAML

fix proplib deprecation

(christos)

2021-06-21 03:15:22 UTC MAIN commitmail json YAML

2021-06-21 03:14:41 UTC MAIN commitmail json YAML

2021-06-21 03:14:12 UTC MAIN commitmail json YAML

fix proplib deprecation

(christos)

2021-06-21 03:13:33 UTC MAIN commitmail json YAML

fix proplib deprecation

(christos)

2021-06-21 03:12:54 UTC MAIN commitmail json YAML

2021-06-21 03:11:05 UTC MAIN commitmail json YAML

fix proplib deprecation

(christos)

2021-06-21 03:09:52 UTC MAIN commitmail json YAML

2021-06-21 03:08:07 UTC MAIN commitmail json YAML

fix proplib deprecation

(christos)

2021-06-21 03:05:24 UTC MAIN commitmail json YAML

2021-06-21 03:04:27 UTC MAIN commitmail json YAML

fix proplib deprecation

(christos)

2021-06-21 03:01:23 UTC MAIN commitmail json YAML

prop_dictionary_set_cstring_nocopy -> prop_dictionary_set_string_nocopy

(christos)

2021-06-21 02:48:01 UTC MAIN commitmail json YAML

PR/56256: Germain: cvs info doc incorrect for update -D

(christos)

2021-06-21 02:12:00 UTC MAIN commitmail json YAML

x/I no longer has special meaning on alpha, and behaves just like x/i.

(thorpej)

2021-06-21 02:10:46 UTC MAIN commitmail json YAML

Remove the /I "alternate format" from db_disasm(), which was internally
interpreted as "showregs", whcih would print the values of the registers
at each instruction.  Unfortunately, this was fundamentally broken because
the saved registers accessible to DDB are only valid for the faulting
insn that got us into DDB, and not arbitrary isns that can be examined
from within DDB.

(thorpej)

2021-06-21 02:01:13 UTC MAIN commitmail json YAML

Allow alpha_print_instruction() to be called from outside DDB, and
allow the caller to supply a buffer to contain the pretty-printed
insn string, rather than db_printf() (which is used if there is no
supplied buffer).

(thorpej)

2021-06-20 20:59:09 UTC MAIN commitmail json YAML

lint: remove unused print_tnode

The function display_expression serves the same purpose and prints more
details.

(rillig)

2021-06-20 20:48:25 UTC MAIN commitmail json YAML

lint: remove unnecessary call to print_tnode

For the possible operators that occur in message 324, print_tnode is
equivalent to op_name, and the latter is simpler.

When the function print_node was added to the code base, it had another
use in init.c, for understanding how initialization works in lint.  That
code has since been rewritten completely, therefore print_tnode is no
longer needed.  For debugging, display_expression is the better choice
since it has multi-line output and does not suffer from a fixed-length
buffer.

No functional change.

(rillig)

2021-06-20 20:32:42 UTC MAIN commitmail json YAML

lint: rename val_t.v_unsigned to avoid confusion

The name v_unsigned suggested that the value would be interpreted as
unsigned, which was wrong.  Whether a value is signed or unsigned is
decided by v_tspec instead.

Revert the previous commit for boolen constants since their value is
already interpreted as unsigned, and there is no need for any warning
about differences between traditional C and ANSI C since the _Bool type
has only been added ten years later in C99.

The code for printing a tree node was also confused by this struct
member, even with its old name v_ansiu.  That code will be fixed in a
follow-up commit.

No functional change.

(rillig)

2021-06-20 19:15:58 UTC MAIN commitmail json YAML

lint: in strict bool mode, treat boolean constants as unsigned

In strict bool mode, bool is not an arithmetic type anyway, therefore it
doesn't matter whether the type is signed or unsigned.

C99 6.2.5p6 defines _Bool as one of the "standard unsigned integer
types", so making the constants unsigned is more accurate.

No functional change.

(rillig)

2021-06-20 19:10:47 UTC MAIN commitmail json YAML

Add support for the boot services watchdog and pet it on every block I/O
access. For slow media (like ISO image redirection on Lenovo HR330A BMC)
this is needed because otherwise the default watchdog timeout fires before
we can finish loading the kernel from install media.

(jmcneill)

2021-06-20 19:07:39 UTC MAIN commitmail json YAML

Enable the twiddle spinner when loading the kernel, ramdisk images, and
modules.

(jmcneill)

2021-06-20 19:04:50 UTC MAIN commitmail json YAML

lint: rename val_t.v_ansiu to v_unsigned

When lint was written in 1995, traditional C was still nearby since C90
had been around for only 5 years.  26 years later, almost all code
adheres to C90 or even C99 or C11, therefore "C90 or later" can safely
be assumed as the default.

No functional change.

(rillig)

2021-06-20 18:51:50 UTC MAIN commitmail json YAML

lint: sprinkle const in memory management

No functional change.

(rillig)

2021-06-20 18:44:48 UTC MAIN commitmail json YAML

lint: fix confusing variable name in lex_wide_character_constant

By convention, i is an index, not a count.

No functional change.

(rillig)

2021-06-20 18:41:27 UTC MAIN commitmail json YAML

lint: reduce indentation in lexer for character constants

No functional change.

(rillig)

2021-06-20 18:38:12 UTC MAIN commitmail json YAML

lint: fix check for empty wide character constant

This bug got almost 26 years old, it was already there at the initial
commit in 1995.

(rillig)

2021-06-20 18:23:07 UTC MAIN commitmail json YAML

tests/lint: remove outdated comment about '\0'

That comment was only needed for lex.c 1.38 from 2021-06-18, which was
fixed with lex.c 1.39 from 2021-06-19, just a day later.

(rillig)

2021-06-20 18:15:12 UTC MAIN commitmail json YAML

lint: use different tokens for operators '.' and '->'

Before C99, these tokens were only used in member access expressions.
C99 reused the operator '.' in initializations of structs and unions.
Let the grammar check for syntax errors instead of writing custom code.

No functional change.

(rillig)

2021-06-20 18:11:21 UTC MAIN commitmail json YAML

tests/lint: document disappearance of bug in pop_member

(rillig)

2021-06-20 18:09:48 UTC MAIN commitmail json YAML

2021-06-20 12:29:58 UTC MAIN commitmail json YAML

gdbserver(1): Work around clang build failure.

(riastradh)

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

2021-06-20 11:42:26 UTC MAIN commitmail json YAML

2021-06-20 11:24:32 UTC MAIN commitmail json YAML

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

lint: fix segmentation fault for malformed struct

Code to trigger this bug: struct{char a(_)0}

Found using afl.

(rillig)

2021-06-20 10:38:54 UTC MAIN commitmail json YAML

hide yyerrflag, yyval; centralize lex and yacc settings

(christos)

2021-06-20 07:11:39 UTC MAIN commitmail json YAML

remove diag-only printf() that fires when an unlinked file is mmapped
and someone runs ps(1) or similar.

(mrg)

2021-06-20 00:25:29 UTC MAIN commitmail json YAML

fix printf format string for xattr names (the length of the xattr name
needs to be a precision rather than a width).

(chs)

2021-06-19 20:25:58 UTC MAIN commitmail json YAML

2021-06-19 19:59:02 UTC MAIN commitmail json YAML

2021-06-19 19:49:15 UTC MAIN commitmail json YAML

2021-06-19 16:59:07 UTC MAIN commitmail json YAML

2021-06-19 16:43:11 UTC MAIN commitmail json YAML

No need to include pci_kn8ae.h here.

(thorpej)

2021-06-19 16:36:36 UTC MAIN commitmail json YAML

2021-06-19 16:29:04 UTC MAIN commitmail json YAML

Remove the "first" argument from pci_kn8ae_pickintr(), instead using
a real once control in that function. Removes a needless divergence from
other "pickintr" routines.

(thorpej)

2021-06-19 16:13:40 UTC MAIN commitmail json YAML

Remove the "first" argument from pci_kn300_pickintr().  It's redundant with
information we already have, and is a needless divergence from other
"pickintr" routines.

(thorpej)

2021-06-19 16:05:07 UTC MAIN commitmail json YAML

2021-06-19 15:51:11 UTC MAIN commitmail json YAML

2021-06-19 15:23:57 UTC MAIN commitmail json YAML

lint: replace undefined behavior with assertion failure

Triggered by this malformed code:

struct{int;

(rillig)

2021-06-19 14:28:04 UTC MAIN commitmail json YAML

lint: fix assertion failure after syntax error in declaration

The code to trigger this case is:

(s)(int(int););

This only happens with BSD yacc, but not with Bison since they differ in
error handling.

(rillig)

2021-06-19 14:08:45 UTC MAIN commitmail json YAML

lint: in debug mode, print name of the "storage class"

This helps in tracking down the internal errors related to declarations,
found by running afl.

(rillig)

2021-06-19 13:56:35 UTC MAIN commitmail json YAML