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 (1m)  netbsd-8 (6d)  netbsd-10 (6d)  netbsd-9 (12d)  thorpej-ifq (176d)  thorpej-altq-separation (178d) 

2024-05-10 20:09:17 UTC Now

2020-09-04 02:27:39 UTC MAIN commitmail json YAML

Build driver-aarch64.c for both endians of aarch64

(jakllsch)

2020-09-04 02:26:57 UTC MAIN commitmail json YAML

Build driver-aarch64.c for both endians of aarch64

(jakllsch)

2020-09-04 02:24:58 UTC MAIN commitmail json YAML

2020-09-04 02:21:49 UTC MAIN commitmail json YAML

Link evbarm/aarch64eb kernels in big endian mode

(jakllsch)

2020-09-04 02:15:52 UTC MAIN commitmail json YAML

Only build bootaa64.efi on LE aarch64 for now, to match set lists

(jakllsch)

2020-09-04 01:57:29 UTC MAIN commitmail json YAML

Shuffle fields in cpu_info for better cache behavior.
XXX More changes to come after curlwp is overhauled.

(thorpej)

2020-09-04 01:56:29 UTC MAIN commitmail json YAML

Decorate some symbols with the appropriate things for better cache
behavior.  Assert that cpu_infos are cache line aligned.

(thorpej)

2020-09-04 00:36:07 UTC MAIN commitmail json YAML

Allow ths file to be included by a _KMEMUSER.

(thorpej)

2020-09-03 22:56:11 UTC MAIN commitmail json YAML

Define COHERENCY_UNIT and CACHE_LINE_SIZE as 64, which is the primary cache
line size on EV6 / EV7.  This is also the default MI fallback definition,
but now we're not relying on that value.

(thorpej)

2020-09-03 19:50:15 UTC MAIN commitmail json YAML

make(1): add test for expansion of indirect variables in dependencies

(rillig)

2020-09-03 19:31:34 UTC MAIN commitmail json YAML

If we hit an unknown header type (likely to be a corrupt record), and
the user choose to not abort, skip to the next header instead of trying
to use it.
This allowed me to recover files from a corrupt dump, instead of
getting a segfault.

(bouyer)

2020-09-03 19:10:56 UTC MAIN commitmail json YAML

make: extend test for unresolved variables in dependencies

This is to ensure that the upcoming refactoring of Var_Parse in
SuffExpandChildren does not break anything.

(rillig)

2020-09-03 18:59:33 UTC MAIN commitmail json YAML

Treat aarch64 and aarch64eb identically with regard to ld.so.conf

(jakllsch)

2020-09-03 18:58:48 UTC MAIN commitmail json YAML

Only expect ACPI and UEFI-related files on little endian aarch64

(jakllsch)

2020-09-03 18:53:46 UTC MAIN commitmail json YAML

make(1): migrate ApplyModifier_Defined to Var_ParsePP

(rillig)

2020-09-03 18:52:37 UTC MAIN commitmail json YAML

make(1): add tests for the :D and :U modifiers

This prepares a refactoring for ApplyModifier_Defined.

(rillig)

2020-09-03 18:38:16 UTC netbsd-9 commitmail json YAML

2020-09-03 18:30:05 UTC MAIN commitmail json YAML

2020-09-03 18:19:15 UTC MAIN commitmail json YAML

make(1): migrate Var_Parse API to parsing position

The ApplyModifier functions already use this pattern.  For simplicity
and consistency Var_Parse should do the same.  This saves a parameter to
be passed.

The migration takes place step by step, just like for the Lst functions
a few days ago.

(rillig)

2020-09-03 17:16:01 UTC MAIN commitmail json YAML

make(1): document use of magic values in CondDoEmpty

(rillig)

2020-09-03 17:13:42 UTC MAIN commitmail json YAML

make(1): add test for the empty function in conditionals

(rillig)

2020-09-03 16:45:50 UTC MAIN commitmail json YAML

2020-09-03 16:14:58 UTC MAIN commitmail json YAML

make(1): update documentation for Cond_EvalExpression and Cond_Eval

(rillig)

2020-09-03 16:02:03 UTC MAIN commitmail json YAML

make(1): make parameter of Cond_Eval and Cond_EvalExpression const

(rillig)

2020-09-03 15:38:17 UTC MAIN commitmail json YAML

Garbage-collect the SWITCH_CONTEXT macro, since it now expands to
just "call_pal PAL_OSF1_swpctx".

(thorpej)

2020-09-03 14:27:47 UTC MAIN commitmail json YAML

Garbage-collect fpcurlwp -- it has been obsolete since FPU tracking
was converted over to PCU.

(thorpej)

2020-09-03 14:26:31 UTC MAIN commitmail json YAML

The conversion of FPU tracking to PCU rendered the fpcurlwp variable
unmaintained, which broke FP status info in the COMPAT_LINUX sigcontext.
Use the new API, which will at least be closer to correct.

(thorpej)

2020-09-03 13:47:08 UTC netbsd-9 commitmail json YAML

2020-09-03 13:45:24 UTC netbsd-9 commitmail json YAML

Apply patch, requested by bouyer in ticket #1075:

sys/arch/x86/x86/pmap.c (apply patch)

Fix double count on ptp entries in pmap_enter_gnt(), which causes a KASSERT
at pmap_destroy() time. Call pmap_free_ptp() if needed. We can have a 0 wire
count if we had an old mapping and grant map hypercall failed,
and this was the only page in this ptp.

while there remove ptp != NULL checks for gnt operations: we always have
a ptp here.

(martin)

2020-09-03 13:41:42 UTC netbsd-8 commitmail json YAML

2020-09-03 13:40:41 UTC netbsd-8 commitmail json YAML

Pull up following revision(s) (requested by kardel in ticket #1602):

sys/netinet/tcp_input.c: revision 1.419

Fix fast path for uni directional transfers

pure ACK case:
drag snd_wl2 along so only newer
ACKs can update the window size.

also avoids the state where snd_wl2
is eventually larger than th_ack and thus
blocking the window update mechanism and
the connection gets stuck for a loooong
time in the zero sized send window state.

see PR/kern 55567

ok thorpej@, also found in FreeBSD

(martin)

2020-09-03 13:38:29 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by kardel in ticket #1074):

sys/netinet/tcp_input.c: revision 1.419

Fix fast path for uni directional transfers

pure ACK case:
drag snd_wl2 along so only newer
ACKs can update the window size.

also avoids the state where snd_wl2
is eventually larger than th_ack and thus
blocking the window update mechanism and
the connection gets stuck for a loooong
time in the zero sized send window state.

see PR/kern 55567

ok thorpej@, also found in FreeBSD

(martin)

2020-09-03 09:41:21 UTC MAIN commitmail json YAML

base64.1: note that -w 0 disables wrapping

(nia)

2020-09-03 07:26:41 UTC MAIN commitmail json YAML

remove unneeded newline in quotes variable string - keeps ntpq happy

(kardel)

2020-09-03 07:05:30 UTC MAIN commitmail json YAML

Make DDB "machine reset" call emulate pushing the HALT button.
Useful if DDB gets confused and "reboot" doesn't work.

(simonb)

2020-09-03 06:42:29 UTC MAIN commitmail json YAML

The TC device addresses are defined in KSEG1, but this confuses
bus_space(9) which expects bus addresses and not kernel virtual
addresses.  Pull the addresses back to bus addresses with
MIPS_KSEG1_TO_PHYS().

XXX: Fix this properly one day (without storing KSEG1 addrs in
the TC device configuration).

Fixes problem with TURBOchannel pmaxes panicing during
autoconfiguartion.

(simonb)

2020-09-03 04:20:54 UTC MAIN commitmail json YAML

Garabage-collect curpcb / cpu_info::ci_curpcb.

(thorpej)

2020-09-03 04:18:30 UTC MAIN commitmail json YAML

The only remaining consumer of curpcb was the PROM mapping code, for if
PROM console routines are being used (only on KN8AE).  We have access to
the sam information via curlwp, so use that, and eliminate the need to set
cpu_info::ci_curpcb when context switching, which saves an extra all into
PALcode.

(thorpej)

2020-09-03 02:09:09 UTC MAIN commitmail json YAML

2020-09-03 02:05:03 UTC MAIN commitmail json YAML

- Remove redundant memory barriers.  For the ones that remain,
  use the membar_ops(3) names to make it clear how they pair up (even
  though most of them expand to the MB instruction anyway).

(thorpej)

2020-09-03 02:03:14 UTC MAIN commitmail json YAML

- alpha_ipi_process(): Continue processing IPIs until the ipimask
  reads 0.  Issue a memory barrier between the atomic swap and performing
  the work.
- alpha_send_ipi(): Issue a memory barrier before setting the ipimask
  to ensure all memory accesses prior to signalling the IPI have
  completed.  Also issue a memory barrier getween setting the ipimask
  and calling PALcode to write the IPIR.

(thorpej)

2020-09-03 00:23:57 UTC MAIN commitmail json YAML

atomic_load/store_* appeared in NetBSD 9, not 10.

Pullup preceded release of 9.0.

(riastradh)

2020-09-03 00:00:07 UTC MAIN commitmail json YAML

Update membar_ops(3) man page with examples and relation to C11.

Add exhortation to always always always document how membars come in
pairs for synchronization between two CPUs when you use them.

(riastradh)

2020-09-02 23:42:58 UTC MAIN commitmail json YAML

make(1): document the value restrictions for Boolean variables

The previous lenient rule came from the sprite.h header that was not
specific to make.  To avoid confusion, only the expected values should
be stored in a Boolean variable.  To help find obvious violations and
inconsistencies, there are different possibilities for the Boolean type,
during development.

In C there is no way to actually enforce this restriction at runtime.
It would be possible in C++, but the code is not ready to be compiled
with a C++ compiler.

(rillig)

2020-09-02 23:38:11 UTC MAIN commitmail json YAML

More clarifications from  Dan Plassche.

(uwe)

2020-09-02 23:33:13 UTC MAIN commitmail json YAML

make(1): improve grouping of the Lst functions

Lst_IsEmpty does not belong in the "create and destroy" group, but in
"query information without modifying anything".

The functions named LstNode_* all belong together.  They do not provide
much abstraction, but still they restrict the API and hide a few struct
fields that are only used internally by Lst_Open/Lst_Close and
Lst_ForEach.

Use consistent wording in the documentation of the functions (list,
node, datum).

(rillig)

2020-09-02 22:58:59 UTC MAIN commitmail json YAML

make(1): fix wrong comments in test for the .for loop

These comments were my original assumptions, which I wrote before
running the test and before looking at the implementation.

(rillig)

2020-09-02 19:04:05 UTC MAIN commitmail json YAML

Spell out acronyms in title for clarity.

(riastradh)

2020-09-02 18:09:04 UTC MAIN commitmail json YAML

2020-09-02 17:40:23 UTC MAIN commitmail json YAML

2020-09-02 17:37:57 UTC MAIN commitmail json YAML

pmap_enter_gnt():
An empty PTP has a wire_count of 1, so KASSERT > 1 if we're sure we have
at last one entry.

(bouyer)

2020-09-02 17:07:45 UTC MAIN commitmail json YAML

pmap_enter_gnt(): call pmap_free_ptp() if needed. We can have a 0 wire count
if we had an old mapping and grant map hypercall failed, and this was the
only page in this ptp.
while there remove ptp != NULL checks for gnt operations: we always have
a ptp here.

(bouyer)

2020-09-02 16:22:46 UTC MAIN commitmail json YAML

Treat aarch64eb the same as aarch64

(jakllsch)

2020-09-02 15:43:06 UTC MAIN commitmail json YAML

Fix typo/pasteo in aarch64 clzdi2() END()

(jakllsch)

2020-09-02 15:17:19 UTC MAIN commitmail json YAML

Teach bsd.endian.mk about aarch64eb

(jakllsch)

2020-09-02 15:15:30 UTC MAIN commitmail json YAML

Teach native gmp about aarch64eb

(jakllsch)

2020-09-02 15:08:46 UTC MAIN commitmail json YAML

Fix fast path for uni directional transfers
pure ACK case:

drag snd_wl2 along so only newer
ACKs can update the window size.
also avoids the state where snd_wl2
is eventually larger than th_ack and thus
blocking the window update mechanism and
the connection gets stuck for a loooong
time in the zero sized send window state.

see PR/kern 55567

ok thorpej@, also found in FreeBSD

(kardel)

2020-09-02 14:13:21 UTC MAIN commitmail json YAML

2020-09-02 12:44:02 UTC netbsd-9 commitmail json YAML

2020-09-02 12:42:32 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by christos in ticket #1072):

sys/kern/kern_syscall.c: revision 1.21

PR/55629: Andreas Gustafsson: Don't crash when an emulation does not provide
e_dtrace_syscall (like compat_netbsd32)

(martin)

2020-09-02 12:40:06 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by bouyer in ticket #1073):

sys/arch/x86/x86/pmap.c: revision 1.404

Fix braino in pmap_find_gnt(), really return the gnt entry covering the range
and not one that starts just after.

Fixes a KASSERT in pmap_remove_gnt().

(martin)

2020-09-02 12:38:07 UTC netbsd-9 commitmail json YAML

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

sys/arch/alpha/alpha/fp_complete.c: revision 1.24

- compare_{le,lt)(): Use float64_{le,lt}_quiet() to avoid raising
exceptions on QNaNs.
- alpha_fp_interpret(): Instructions are 32-bits wide, so don't use a
uint64_t to contain them.
- alpha_fp_complete(): Operations on NaNs trap on Alpha, but the exception
summary reports INV (invalid operation) rather than SWC (software
completion) in this case.  So also interpret the instruction if INV
is set in the exception summary.  This will emulate operations on
NaN and correctly suppress FP traps for QNaNs.

This fixes bin/55633, which was caused by:
-> Input string "nanotime" is passed to awk's internal is_number().
-> strtod() interprets as "nan" and returns QNaN as the result.
-> Result compared against HUGE_VAL, blows up because cmptle is called
with a NaN operand, and the hardware doesn't care that it's quiet.

(martin)

2020-09-02 12:34:55 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by msaitoh in ticket #1070):

sys/dev/pci/ixgbe/if_bypass.c: revision 1.6
sys/dev/pci/ixgbe/ixgbe_common.c: revision 1.28
sys/dev/pci/ixgbe/ixgbe.c: revision 1.246

Fix checking return value of atomic_cas_uint().

This change fixes a bug that extra delay() is called only once even if
atomic_cas_uint() isn't failed or delay() isn't called when atomic_cas_uint()
failed.

The reason of this bug was that I simply converted FreeBSD' atomic_cmpset_int()
to atomic_cas_uint(). The return value's semantics is different.

-

Minor change.
  - Print "X550EM X" instead of "X550EM" for Xeon D devices.
  - Fix typo in comment. Same as FreeBSD.

(martin)

2020-09-02 12:29:26 UTC netbsd-8 commitmail json YAML

2020-09-02 12:27:54 UTC netbsd-8 commitmail json YAML

Pull up following revision(s) (requested by msaitoh in ticket #1601):

sys/dev/pci/ixgbe/ixgbe_82598.c: revision 1.13
sys/dev/pci/ixgbe/ixgbe.c: revision 1.219
sys/dev/pci/ixgbe/ixgbe_phy.c: revision 1.20
sys/dev/pci/ixgbe/ixgbe_x550.c: revision 1.17
sys/dev/pci/ixgbe/ixgbe_82599.c: revision 1.22
sys/dev/pci/ixgbe/ixgbe_type.h: revision 1.44

Add recovery code for unsupported SFP+.

Before this commit:
  If an unsupported SFP module is inserted before booting, the driver attach
  failed and there was no way to recover form it without rebooting or
  detaching/reattaching driver (drvctl -d && drvctl -r pciN).

After this commit:
  We can automatically recover any time by replacing it with a supported
  module.

(martin)

2020-09-02 12:24:09 UTC netbsd-8 commitmail json YAML

Pull up following revision(s) (requested by msaitoh in ticket #1600):

sys/dev/pci/ixgbe/if_bypass.c: revision 1.6
sys/dev/pci/ixgbe/ixgbe_common.c: revision 1.28
sys/dev/pci/ixgbe/ixgbe.c: revision 1.246

Fix checking return value of atomic_cas_uint().

This change fixes a bug that extra delay() is called only once even if
atomic_cas_uint() isn't failed or delay() isn't called when atomic_cas_uint()
failed.

The reason of this bug was that I simply converted FreeBSD' atomic_cmpset_int()
to atomic_cas_uint(). The return value's semantics is different.

-

Minor change.
  - Print "X550EM X" instead of "X550EM" for Xeon D devices.
  - Fix typo in comment. Same as FreeBSD.

(martin)

2020-09-02 09:28:25 UTC MAIN commitmail json YAML

Reflect that this is current by using ".99" in the Os version

This helps distinguising NetBSD-current pages from NetBSD-9.0 pages better
on man.netbsd.org, which is still using nroff. (Using mandoc needs more
tweaking to avoid all page footers reflecting the uname release of the
web server.)

(kim)

2020-09-02 08:26:05 UTC MAIN commitmail json YAML

Id -> NetBSD in comment. No functional change.

(msaitoh)

2020-09-02 06:25:48 UTC MAIN commitmail json YAML

make(1): fix documentation of Var_Subst

The "var" parameter does not exist anymore.

(rillig)

2020-09-02 06:19:11 UTC MAIN commitmail json YAML

make(1): clean up comments in var.c, make VarQuote const-correct

(rillig)

2020-09-02 06:10:44 UTC MAIN commitmail json YAML

make(1): remove redundancy from comments in make_malloc.c

(rillig)

2020-09-02 05:36:58 UTC MAIN commitmail json YAML

make(1): fix typo in unit test for the .for loop

(rillig)

2020-09-02 05:33:58 UTC MAIN commitmail json YAML

make(1): add test for the .for directive

For a long time, I had assumed that the iteration variables of a .for
loop are just normal global variables.  This assumption was wrong but
didn't have any consequences.

The iteration variables of a .for loop can just be accessed like global
variables, therefore it is not obvious that they are implemented in a
completely different way.

There are some edge cases in conditions used inside .for loops, in which
the iteration variables cannot be used like normal variables.  An
example is brought up in https://gnats.netbsd.org/47888, which observes
that the defined() and empty() functions in conditions only work with
variables but ignore the iteration "variables", simply because these are
not variables but only expressions.

(rillig)

2020-09-02 04:32:13 UTC MAIN commitmail json YAML

make(1): fix cached_stat for files with st_mtime 0

(rillig)

2020-09-02 04:19:52 UTC MAIN commitmail json YAML

make(1): fix aliasing problem in cached_stat from the previous commit

When the struct stat was used for both calling the actual stat and for
returning the result, no copying was needed.  This also had the side
effect that for the first call of cached_stat, the returned struct stat
included all the fields properly filled in, and on later calls, these
fields were all zeroed out.

These two variables are separate now, thus the fields need to be copied
explicitly.  There are no existing unit tests for this, but ./build.sh
failed reliably.

(rillig)

2020-09-02 04:08:54 UTC MAIN commitmail json YAML

make(1): reduce number of stat fields returned by cached_stat

Only st_mtime and st_mode are actually filled, the remaining fields had
been set to zero.  To prevent these from ever being accessed, a custom
struct make_stat replaces the previously used struct stat.

The fields in struct make_stat are intentionally named different from
the fields in struct stat because NetBSD and some other operating
systems define st_mtime as a macro, and that would not work in a field
declaration.

(rillig)

2020-09-02 04:06:43 UTC MAIN commitmail json YAML

Reduce diffs to upstream: get rid of FLOAT64_{,DE}MANGLE(); it's no longer
used.

(thorpej)

2020-09-02 03:45:54 UTC MAIN commitmail json YAML

Update to the SoftFloat-2b version of softfloat.c.  This makes a clarifying
change to the warranty disclaimer and updates the comments.  NFC.

(thorpej)

2020-09-02 03:43:22 UTC MAIN commitmail json YAML

Update to the SoftFloat-2c version of milieu.h.  This includes a
simplification of the license and updates the comments.  NFC.

(thorpej)

2020-09-02 03:41:56 UTC MAIN commitmail json YAML

Update to the SoftFloat-2c version of softfloat-specialize.h and softfloat.h.
This includes a simplification of the license and updates the comments.  NFC.

(thorpej)

2020-09-02 03:28:12 UTC MAIN commitmail json YAML

make(1): use proper types in API of cached_stat and cached_lstat

(rillig)

2020-09-02 03:15:21 UTC MAIN commitmail json YAML

make(1): use Hash API from dir.c

When the Hash struct fields are renamed the next time, this should not
influence any code outside hash.h and hash.c.

(rillig)

2020-09-02 01:33:27 UTC MAIN commitmail json YAML

Octeon CN70XX CPUs have a COP0 config5 register.
XXX: The presense of these are defined by the MIPS architecture, should probe.

(simonb)

2020-09-02 00:15:15 UTC MAIN commitmail json YAML

Fix chroot path (in a comment).

(uwe)

2020-09-01 21:11:31 UTC MAIN commitmail json YAML

make(1): rename Hash_Table fields

Back in the 1980s it made sense to have the type information encoded in
the variable names.  At the time when make was imported into the NetBSD
tree (1993-03-21), the functions did indeed not have prototypes, they
only had return types.  The void type was already invented at that time.
Since the compiler could not verify the types of function parameters, it
made perfect sense to have each variable tell whether it was a pointer
or not.

Since ISO C90 this is no longer necessary since the compiler checks
this.  The variable names can now focus on the application level and
their high-level meaning, expressing the relationship to other
variables instead of encoding redundant type information.

(rillig)

2020-09-01 21:00:15 UTC MAIN commitmail json YAML

make(1): replace Hash_Table macros with inline functions

(rillig)

2020-09-01 20:54:00 UTC MAIN commitmail json YAML

make(1): inline constant for hash table size

The name HTSIZE didn't provide any explanation for the value 191, and it
is obvious that this is a hash table size.  Therefore giving the
constant a name didn't explain anything or make it less magic.

(rillig)

2020-09-01 20:34:51 UTC MAIN commitmail json YAML

make(1): improve documentation for enum.c and enum.h

(rillig)

2020-09-01 20:17:18 UTC MAIN commitmail json YAML

make(1): improve variable names and data types in Dir_FindHereOrAbove

(rillig)

2020-09-01 20:14:34 UTC MAIN commitmail json YAML

2020-09-01 19:17:58 UTC MAIN commitmail json YAML

make(1): add test for -m option with special argument .../

(rillig)

2020-09-01 18:40:09 UTC MAIN commitmail json YAML

Format PR references consistently so that they can be automatically
turned into links in HTML reports.

(gson)

2020-09-01 17:56:32 UTC MAIN commitmail json YAML

make(1): make data types in Dir_HasWildcards more precise

(rillig)

2020-09-01 17:40:34 UTC MAIN commitmail json YAML

make(1): mark LIBSUFF and RECHECK as independent build options

(rillig)

2020-09-01 17:38:26 UTC MAIN commitmail json YAML

make(1): clean up documentation in buf.h, and redundant include files

(rillig)

2020-09-01 17:12:30 UTC MAIN commitmail json YAML

make(1): remove filemon object files on clean

(rillig)

2020-09-01 15:45:21 UTC MAIN commitmail json YAML

Update to the SoftFloat-2c version of softfloat-macros.h.  This has 3
small changes:
- Simplification of the license.
- Minor style changes to 3 comments.
- Fixes a bug in shift128Right() for shift counts >= 64;

(thorpej)

2020-09-01 15:36:53 UTC MAIN commitmail json YAML

Update to the SoftFloat-2b version of softfloat-macros.h.  This makes a
clarifying change to the warranty disclaimer and updates the comments.  NFC.

(thorpej)

2020-09-01 11:24:14 UTC MAIN commitmail json YAML

Fix braino in pmap_find_gnt(), really return the gnt entry covering the range
and not one that starts just after.
Fixes a KASSERT in pmap_remove_gnt().

(bouyer)

2020-09-01 08:22:36 UTC MAIN commitmail json YAML

- compare_{le,lt)(): Use float64_{le,lt}_quiet() to avoid raising
  exceptions on QNaNs.
- alpha_fp_interpret(): Instructions are 32-bits wide, so don't use a
  uint64_t to contain them.
- alpha_fp_complete(): Operations on NaNs trap on Alpha, but the exception
  summary reports INV (invalid operation) rather than SWC (software
  completion) in this case.  So also interpret the instruction if INV
  is set in the exception summary.  This will emulate operations on
  NaN and correctly suppress FP traps for QNaNs.

This fixes bin/55633, which was caused by:

  -> Input string "nanotime" is passed to awk's internal is_number().
  -> strtod() interprets as "nan" and returns QNaN as the result.
  -> Result compared against HUGE_VAL, blows up because cmptle is called
    with a NaN operand, and the hardware doesn't care that it's quiet.

(thorpej)

2020-09-01 04:19:16 UTC MAIN commitmail json YAML

Fix a panic on shutdown on a machine which use the recovery mode timer.

The recovery mode timer is first issued by the callout and it schedule
the workqueue. The workqueue then reschedule the callout. It's hard to
stop both of them without race only with callout_stop() and workqueue_wait.
To solve this problem. add new "detaching" flag and use it.

The situation is almost the same as schedule_wqs_ok for the local_timer's
callout and workqueue, but the difference is that the local_timer isn't
required to run if the interface is not up. If it's not important to prevent
running timer while !IFF_UP, the flag can be integrated into one.

(msaitoh)

2020-09-01 04:06:56 UTC MAIN commitmail json YAML

Call ixgbe_ifstop() instead of ixgbe_stop_locked() in
ixgbe_setup_low_power_mode() to stop the timer workqueue.

(msaitoh)

2020-09-01 01:15:28 UTC MAIN commitmail json YAML

Improvements from Dan Plassche.

(uwe)

2020-09-01 00:35:30 UTC MAIN commitmail json YAML

eat the sign, pointed out by uwe@

(christos)

2020-09-01 00:21:02 UTC MAIN commitmail json YAML

check explicitly for inf and nan. We can't check if it is a number,
because awk parses 1a as 1...

(christos)

2020-08-31 23:37:55 UTC MAIN commitmail json YAML

Add a check_number function that does what is repeated in many places in
the code, but better.

(christos)

2020-08-31 23:36:58 UTC MAIN commitmail json YAML

Don't try so hard to convert strings into numbers. Results in bogus
conversions like:

% awk 'BEGIN { print "nanotime" + 123 }'
nan
% awk 'BEGIN { print "microtime" + 123 }'
123
% awk 'BEGIN { print "inftime" + 123 }'
inf

(christos)

2020-08-31 20:34:43 UTC MAIN commitmail json YAML

wg: Avoid memory leak if socreate fails.

(riastradh)

2020-08-31 20:34:18 UTC MAIN commitmail json YAML

wg: Make it build with WG_DEBUG on 32-bit platforms.

(riastradh)

2020-08-31 20:33:58 UTC MAIN commitmail json YAML

wg: Simplify locking.

Summary: Access to a stable established session is still allowed via
psref; all other access to peer and session state is now serialized
by struct wg_peer::wgp_lock, with no dancing around a per-session
lock.  This way, the handshake paths are locked, while the data
transmission paths are pserialized.

- Eliminate struct wg_session::wgs_lock.

- Eliminate wg_get_unstable_session -- access to the unstable session
  is allowed only with struct wgp_peer::wgp_lock held.

- Push INIT_PASSIVE->ESTABLISHED transition down into a thread task.

- Push rekey down into a thread task.

- Allocate session indices only on transition from UNKNOWN and free
  them only on transition back to UNKNOWN.

- Be a little more explicit about allowed state transitions, and
  reject some nonsensical ones.

- Sprinkle assertions and comments.

- Reduce atomic r/m/w swap operations that can just as well be
  store-release.

(riastradh)

2020-08-31 20:32:58 UTC MAIN commitmail json YAML

tests/net/if_wg: Allow one second of leeway for rekey.

(riastradh)

2020-08-31 20:31:43 UTC MAIN commitmail json YAML

wg: M_NOWAIT -> M_DONTWAIT

These happen to be aliases, but M_NOWAIT is part of the legacy malloc
API whereas M_DONTWAIT is part of the mbuf API.

(riastradh)

2020-08-31 20:31:03 UTC MAIN commitmail json YAML

wg: wg_sockaddr audit.

- Ensure all access to struct wg_peer::wgp_endpoint happens while
  holding a psref.

- Simplify internalize/externalize logic and be more careful about
  verifying it before printing anything.

(riastradh)

2020-08-31 20:30:34 UTC MAIN commitmail json YAML

wg: On INIT, do DH and decrypt timestamp before locking session.

This narrows the window when the session is unlocked.  Really there
should be no such window, but we'll finish getting rid of it later.

(riastradh)

2020-08-31 20:29:14 UTC MAIN commitmail json YAML

wg: Verify or send cookie challenge before looking up session.

This step doesn't depend on the session, so let's avoid touching the
session state until we've passed it.

(riastradh)

2020-08-31 20:27:06 UTC MAIN commitmail json YAML

wg: Verify mac1 as the first step on INIT and RESP messages.

This avoids the expensive DH computation before the sender has proven
knowledge of our public key.

(riastradh)

2020-08-31 20:26:46 UTC MAIN commitmail json YAML

wg: Omit needless variable.

(riastradh)

2020-08-31 20:26:21 UTC MAIN commitmail json YAML

wg: Switch to callout_stop for session destructor timer.

Can't release the lock here, and can't sleep waiting for the callout
while we hold it without risking deadlock.  But not waiting is fine;
after we transition out of WGS_STATE_UNKNOWN the timer has no effect.

(riastradh)

2020-08-31 20:25:33 UTC MAIN commitmail json YAML

wg: Fix indentation.  No functional change.

(riastradh)

2020-08-31 20:25:12 UTC MAIN commitmail json YAML

wg: Just call callout_halt directly.

No functional change, just makes it easier to read where callout_halt
happens.

(riastradh)

2020-08-31 20:24:49 UTC MAIN commitmail json YAML

wg: Fix byte order on wire.

Give this a chance to work on big-endian systems.

(riastradh)

2020-08-31 20:24:19 UTC MAIN commitmail json YAML

wg: mbuf m_freem audit.

1. wg_handle_msg_data frees m but the other wg_handle_msg_* just take
  a pointer to the mbuf content and not m itself, so free m in those
  cases.

2. Can't trivially prove that the pcq is empty by the time
  wg_destroy_peer runs pcq_destroy, so let's explicitly purge it
  just in case.

3. If wg_send_udp isn't doing udp_send or udp6_output, it still has
  to free m in the !INET6 error branch for IPv6 packets.

4. After rumpuser_wg_send_peer or rumpuser_wg_send_user, we still
  need to free the mbuf.

(riastradh)

2020-08-31 20:23:56 UTC MAIN commitmail json YAML

wg: Use thmap(9) for peer and session lookup.

Make sure we also don't trip over our own shoelaces by choosing the
same session index twice.

(riastradh)

2020-08-31 20:22:57 UTC MAIN commitmail json YAML

thmap: Use keyed BLAKE2s for second-level hash and beyond.

This thwarts hash-flooding, but pays the cost only for those keys
that collide under the cheaper murmurhash2.

(riastradh)

2020-08-31 20:21:30 UTC MAIN commitmail json YAML

wg: XAEAD doesn't use a counter, so don't pass one.

(riastradh)

2020-08-31 20:21:09 UTC MAIN commitmail json YAML

wg: Count down wg_npeers in wg_destroy_all_peers too.

Doesn't actually make a difference -- wg_destroy_all_peers is only
used when we're destroying the wg instance altogether -- but let's
not leave rakes to step on.

(riastradh)

2020-08-31 20:20:48 UTC MAIN commitmail json YAML

wg: Note lock order.

(riastradh)

2020-08-31 20:20:22 UTC MAIN commitmail json YAML

wg: Remove IFF_POINTOPOINT.

Unclear why this was set; setting it seems to have required a kludge
in netinet/in.c that broke ipsec tunnels.  Clearing it makes wg work
again after that kludge was reverted.

(riastradh)

2020-08-31 19:58:21 UTC MAIN commitmail json YAML

make(1): move some of the :ts tests into a separate file

The successful cases can be easily tested in the .if conditions.  Around
these conditions, there is enough space for explaining the test cases
and their purpose.

The failure cases have been left in the file for now since they still
produce unwanted characters in the output.  These characters are not
produced when the parse error occurs in a conditional.

(rillig)

2020-08-31 19:51:30 UTC MAIN commitmail json YAML

PR/55629: Andreas Gustafsson: Don't crash when an emulation does not provide
e_dtrace_syscall (like compat_netbsd32)

(christos)

2020-08-31 19:09:19 UTC MAIN commitmail json YAML

make(1): inline a local variable in VarUniq

Just to eliminate any remote possibility of aliasing and thereby
forgetting to update all involved variables.

(rillig)

2020-08-31 19:05:53 UTC MAIN commitmail json YAML

make(1): add more examples to the documentation of ParseModifierPart

(rillig)

2020-08-31 18:57:41 UTC MAIN commitmail json YAML

make(1): extend the documentation for the test variants

(rillig)

2020-08-31 17:54:18 UTC MAIN commitmail json YAML

defparam and use ADBKBD_LAYOUT, default to KB_US|KB_APPLE for tradition

(macallan)

2020-08-31 17:51:56 UTC MAIN commitmail json YAML

behave like USB keyboards - KB_US uses ctrl-alt-Fn, KB_APPLE variant uses
Command-Fn

(macallan)

2020-08-31 17:41:39 UTC MAIN commitmail json YAML

make(1): fix the :u modifier, which was broken for almost a day

Big thanks go to sjg, who discovered the bug and did the main work to
track it down.

In the unit tests for the :u modifier from the previous commit, I had
forgotten to actually add the :u modifier at the end.  I added it now
and also added a few other tests.  It's better to have a few more tests
than too few.

(rillig)

2020-08-31 17:32:13 UTC MAIN commitmail json YAML

make(1): add test for the currently broken :u variable modifier

The :u modifier had been broken in var.c 1.479 from 2020.08.30.19.56.02.
The code that implements the :u modifier was well-covered in the unit
tests, except for the single line that actually deals with adjacent
duplicate words.

The "refactoring" commit that replaced brk_string with Str_Words had not
taken into account that the number of words (in ac) had to be passed to
WordList_JoinFree.  Instead, the number of words was always preserved,
and the words at the end were therefore duplicated in the result.

The fix for this bug will be in the follow-up commit.

(rillig)

2020-08-31 17:25:29 UTC MAIN commitmail json YAML

make(1): document the purpose of the test variants

(rillig)

2020-08-31 16:51:17 UTC MAIN commitmail json YAML

make(1): add test driver for different build options

This program's purpose is to reduce the build failures of the whole
build.sh just because one of the many possible configurations fails.

(rillig)

2020-08-31 16:44:26 UTC MAIN commitmail json YAML

make(1): fix compilation for -DNDEBUG and -O3

The -O3 option of GCC 5.5 is unsure about whether s and t are always
defined, since SuffParseTransform only defines them if it returns TRUE.

Therefore assert that it does.  When compiled with -NDEBUG, this would
result in an unused variable, therefore use it using the well-known
cast-to-void pattern.

(rillig)

2020-08-31 16:42:10 UTC MAIN commitmail json YAML

make(1): improve documentation for Buffer fields

(rillig)

2020-08-31 16:41:19 UTC MAIN commitmail json YAML

make(1): fix compilation with GCC 8

(rillig)

2020-08-31 16:20:00 UTC MAIN commitmail json YAML

2020-08-31 15:32:16 UTC MAIN commitmail json YAML

Unlike done() childwait() returns, found by clang.

(christos)

2020-08-31 14:12:50 UTC MAIN commitmail json YAML

Rename ix{gbe,v}_stop() with ix{gbe,v}_stop_locked(). No functional change.

(msaitoh)

2020-08-31 14:03:56 UTC MAIN commitmail json YAML

Skip timeout tests, pointing to PR 55632.

(martin)

2020-08-31 11:32:01 UTC MAIN commitmail json YAML

2020-08-31 11:19:54 UTC MAIN commitmail json YAML

If an SFP+ module is not inserted, don't try to access SFP+ EEPROM.
This change eliminate long timeout.

Reduce code duplication using with ixgbe_sfp_cage_full(hw).

(msaitoh)

2020-08-31 06:44:12 UTC MAIN commitmail json YAML

make(1): fix copy-and-paste mistake for compiling with GCC10

(rillig)

2020-08-31 06:23:19 UTC MAIN commitmail json YAML

2020-08-31 06:21:07 UTC MAIN commitmail json YAML

make(1): parenthesize macro arguments

Just in case anyone wants to use them for copy-and-paste.

The invocations of these macros are left cautious since the
system-provided definition of these macros may have forgotten the
parentheses as well.

(rillig)

2020-08-31 06:20:06 UTC MAIN commitmail json YAML

Fix 82598 SFP+ problems.

On 82598, SFP+'s MOD_ABS isn't connected to the MAC's GPIO pin, so we can't
call ixgbe_sfp_cage_full(). Always issue TASK_MOD from ixgbe_handle_timer()
on 82598.

Fix ixgbe_identify_sfp_module_generic() for ixgbe_phy_nl. In the driver,
hw->phy.type sometimes be compared with ixgbe_phy_nl.
In ixgbe_identify_sfp_module_generic(), hw->phy.type may be overridden with
another value. For ixgbe_phy_nl, some code don't override phy.type but others
were not. Make it consistently keep ixgbe_phy_nl. This change fixes a problem
that ixgbe_is_sfp() change the return value true to false when any SFP+
devices are connected to the cage on 82598 and never recover from it.

Don't schedule MSF(multi speed fiber) task from ixgbe_handle_mod() on 82598.
This task is only for devices which support multi speed fiber and 82598
doesn't support it. Before ixgbe.c rev. 1.237, ixgbe_handle_mod() isn't
called on 82598 because 82598 has no SFP+ module insertion/removal interrupt.
ixgbe.c rev. 1.237 changed to call the function via timer on 82598.
This change fixes a bug that 82598 DA interface's link flaps.

(msaitoh)

2020-08-31 05:56:02 UTC MAIN commitmail json YAML

make(1): fix unbalanced Lst_Open/Lst_Close in SuffFindCmds

This bug had been there since the initial import of make, on 1993-03-21.
It just never broke the build because of the missing assertion.

https://mail-index.netbsd.org/tech-toolchain/2020/08/30/msg003847.html

The error message "cd: can't cd to include" that I got when I first
applied the fix was unrelated.  It was caused by an extra directory
"include" in src/tools/compat that didn't belong there.  With that
directory removed, running "./build.sh -j8 tools" succeeds as expected.

(rillig)

2020-08-30 21:20:06 UTC MAIN commitmail json YAML

make(1): fix comment for Lst_Destroy

(rillig)

2020-08-30 21:12:45 UTC MAIN commitmail json YAML

include bsd.init.mk to avoid:
make: Bad conditional expression ` != "no"' in  != "no"? -DINET6 :

(christos)

2020-08-30 20:14:07 UTC MAIN commitmail json YAML

Mark up path with Pa and use Ev for environment variable.

(wiz)

2020-08-30 20:08:47 UTC MAIN commitmail json YAML

make(1): remove unreachable code from CompatRunCommand

At the point where Str_Words is called, the string contains no
meta-characters.  This means that the parameter "expand" in Str_Words is
never looked at.  This in turn means that this parameter can be set to
FALSE, thereby making it impossible that Str_Words returns NULL.

(rillig)

2020-08-30 19:56:02 UTC MAIN commitmail json YAML

make(1): replace brk_string with Str_Words

The API is much simpler, and there is less detail that is exposed by
default and fewer punctuation to type on the caller's side.  To see that
there is some memory to be freed, one would have to look into the
struct.  Having part of the return value as the actual return value and
the rest in output parameters was unnecessarily asymmetrical.

(rillig)

2020-08-30 19:45:05 UTC MAIN commitmail json YAML

Since "struct job" gained a pgrp member some time ago now, use it
instead of simply assuming that the pid of the first (leftmost) process
in a pipeline is the pgrp - someday we may switch things around and
create pipelines right to left instead, which has several advantages,
but which would invalidate the assumption which was being made here.

(kre)

2020-08-30 19:41:39 UTC MAIN commitmail json YAML

Note that negative pid args are permitted (indicating to send to the pgrp
abs(pid)) and indicate that -- is (strictly) needed if the first pid arg
(there often is only one) is negative - though this implementation works
without it if a signal to send has been explicitly given, but whereas
'kill 1234" is valid (send SIGTERM to pid 1234) "kill -1234" will generate
a usage error from the attempt to send signal 1234 to nothing, to send
SIGTERM to pgrp 1234 it needs to be "kill -- -1234" (or "kill -s term -1234").

While here do a couple of markup improvements, and allow for the
possibility that users might be running the builtin kill from some
shell other than csh or sh.

(kre)

2020-08-30 19:35:10 UTC MAIN commitmail json YAML

Every integer that fits within a pid_t is a potential "pid" arg to kill.
That means we cannot use (pid_t)-1 as an error indicator, as that's a
valid pid to use (described as working in kill(1) - yet it wasn't working
in /bin/kill (nor sh's builtin kill, which is essentially the same code).
This is even required to work by POSIX.

So change processnum() (the parser/validator for the pid args) to take
a pointer to a pid_t and return the pid that way, leaving the return value
of the (now int) function to indicate just ok/error.  While here, fix
the validation a little ('' is no longer an accepted alias for 0) and in
case of an error from kill(2) have the error message indicate whether the
kill was targeted at a pid of a pgrp.

(kre)

2020-08-30 18:26:41 UTC MAIN commitmail json YAML

make(1): add debug macros to suff.c

This reduces the visual space that the debugging statements need.

(rillig)

2020-08-30 16:26:56 UTC MAIN commitmail json YAML

When initializing the PROM interface, check to see if we're running
inside Qemu by consulting the system serial number, and quickly abort
calls into the PROM if we are.

This is a temporary measure until I can figure out why calling into
the Qemu PROM interface blows up.

(thorpej)

2020-08-30 16:10:40 UTC MAIN commitmail json YAML

Use the POSIX specified format if POSIXLY_CORRECT is set in the
environment, rather than the nicer layout that is normally used.

Note this applies to /bin/kill only, the builtin kill in sh uses its
"posix" option for the same purpose, the one in csh only ever uses
POSIX format.

(kre)

2020-08-30 14:25:45 UTC MAIN commitmail json YAML

2020-08-30 14:11:42 UTC MAIN commitmail json YAML

make(1): rename GNode.iParents to implicitParents

The i alone was too ambiguous.  It could have meant ignore, implicit,
interactive, and probably many more.

(rillig)

2020-08-30 13:53:02 UTC MAIN commitmail json YAML

make(1): remove ineffective malloc_options variable

According to jemalloc(3), the variable must be called _malloc_options,
with a leading underscore, to have an effect.

Renaming the variable indeed enables the option.  There's not much point
having this variable around though, since it neither detects a trivial
double-free nor freeing an invalid pointer in the following code
snippet:

char *asdf = bmake_malloc(10);
fprintf(stderr, "%c\n", *asdf);
free(asdf + 8);
free(asdf);
free(asdf);
exit(1);

Instead, it just crashes with a segmentation fault.

(rillig)

2020-08-30 11:16:17 UTC MAIN commitmail json YAML

2020-08-30 11:15:05 UTC MAIN commitmail json YAML

2020-08-30 11:12:06 UTC MAIN commitmail json YAML

2020-08-30 07:09:02 UTC MAIN commitmail json YAML

Add some debug options to help find why the automated tests are failing.

XXX turn off on release branch

(skrll)

2020-08-30 07:08:13 UTC MAIN commitmail json YAML

2020-08-30 04:53:28 UTC MAIN commitmail json YAML

2020-08-30 04:51:03 UTC MAIN commitmail json YAML

2020-08-29 23:00:10 UTC MAIN commitmail json YAML

make us.apple the default USB keyboard layout

(macallan)

2020-08-29 22:50:27 UTC MAIN commitmail json YAML

G/C GET_IDLE_PCB -- it hasn't been used for some time.

(thorpej)

2020-08-29 22:42:53 UTC MAIN commitmail json YAML

provide KB_APPLE layout variant which uses Command-F* to switch console screens
mostly for consistent behaviour across *Books which may have ADB or USB
keyboards

(macallan)

2020-08-29 22:33:53 UTC MAIN commitmail json YAML

properly map left Command to Meta_L and left Option to Alt_L
Mostly for correctness, should help non-US layouts

(macallan)

2020-08-29 21:42:25 UTC MAIN commitmail json YAML

Minor wording tweaks from Dan Plassche.

(uwe)

2020-08-29 20:20:44 UTC MAIN commitmail json YAML

make(1): use loops instead of Lst_ForEach for propagating to cohorts

For one-liners, Lst_ForEach creates a lot of overhead, both at runtime
and for reading and understanding the code.

In this simple case where the structure of the traversed nodes is not
modified, a simple loop is enough.  This avoids a lot of conversions to
void * and thus prevents type mistakes.

(rillig)

2020-08-29 20:08:08 UTC MAIN commitmail json YAML

Bump UBC_WINSHIFT to 16 (64KB), and UBC_NWINS to 4096 (256MB total).
Alpha has plenty of KVA to use for this.

(thorpej)

2020-08-29 20:07:00 UTC MAIN commitmail json YAML

- Centralize per-CPU pmap initialization into a new pmap_init_cpu()
  function.  Call in from pmap_bootstrap() for the boot CPU, and
  from cpu_hatch() for secondaary CPUs.
- Eliminiate the dedicated I-stream memory barrier IPI; handle it all from
  the TLB shootdown IPI.  Const poison, and add some additional memory
  barriers and a TBIA to the PAUSE IPI.
- Completly rewrite TLB management in the alpha pmap module, borrowing
  somoe ideas from the x86 pmap and adapting them to the alpha environment.
  See the comments for theory of operation.  Add a bunch of stats that
  can be reported (disabled by default).
- Add some additional symbol decorations to improve cache behavior on
  MP systems.  Ensure coherency unit alignment for several structures
  in the pmap module.  Use hashed locks for pmap structures.
- Start out all new processes on the kernel page tables until their
  first trip though pmap_activate() to avoid the potential of polluting
  the current ASN in TLB with cross-process mappings.

(thorpej)

2020-08-29 19:35:39 UTC MAIN commitmail json YAML

make(1): fix sh-dots test

The exact output depends on the shell.  Some shells prefix the error
message with their name, some don't.

(rillig)

2020-08-29 19:28:32 UTC MAIN commitmail json YAML

Make the "interesting" flags match the netstat ones, so:

    route show -inet
    netstat -r -f inet

outputs match.

(christos)

2020-08-29 19:27:40 UTC MAIN commitmail json YAML

Instead of defining RTF_LLINFO, use RTF_LLDATA

(christos)

2020-08-29 19:27:08 UTC MAIN commitmail json YAML

2020-08-29 19:07:32 UTC MAIN commitmail json YAML

2020-08-29 19:06:33 UTC MAIN commitmail json YAML

- cpu_need_resched(): Explicitly cover each RESCHED_* case, and add a
  comment explaining why we don't need to act on IDLE+REMOTE.
- cpu_signotify(): Move to machdep.c, and if we're asked to notify
  an LWP running on another CPU, send an AST IPI to that CPU.  Add some
  assertions.
- cpu_need_proftick(): Move to machdep.c, add some assertions.

(thorpej)

2020-08-29 19:06:18 UTC MAIN commitmail json YAML

tegra_xusb: fix xusb static firmware build

To work around objcopy and ld now being unable to create a EABI5 object
from a binary, use the assembler directive .incbin in inline assembly
to pull in the firmware blob.

This also probably makes TEGRA210_XUSB_BIN_STATIC actually work.

(jakllsch)

2020-08-29 18:54:33 UTC MAIN commitmail json YAML

2020-08-29 18:50:25 UTC MAIN commitmail json YAML

2020-08-29 17:41:14 UTC MAIN commitmail json YAML

Partially revert previous: set RTF_HOST regardless of mask for point-to-point
links. Unbreaks IPSEC/L2TP configurations.

(christos)

2020-08-29 17:34:21 UTC MAIN commitmail json YAML

2020-08-29 17:03:39 UTC netbsd-9 commitmail json YAML

2020-08-29 17:02:36 UTC netbsd-9 commitmail json YAML

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

sys/arch/alpha/alpha/prom.c: revision 1.52

Make sure init_prom_interface() only runs once, otherwise we initialize
a mutex twice, and that upsets LOCKDEBUG.  But instead of seeing a
proper message about it, the output happens before the PROM console
interfcace is initialized, we would end up with a translation fault
back into SRM.

(martin)

2020-08-29 17:00:28 UTC netbsd-9 commitmail json YAML

Pull up following revision(s) (requested by maxv in ticket #1068):

sys/dev/nvmm/x86/nvmm_x86_svm.c: revision 1.71
sys/dev/nvmm/nvmm.c: revision 1.34
sys/dev/nvmm/x86/nvmm_x86_svm.c: revision 1.72
sys/dev/nvmm/nvmm.c: revision 1.35
sys/dev/nvmm/nvmm.c: revision 1.36
sys/dev/nvmm/x86/nvmm_x86_svmfunc.S: revision 1.5
sys/dev/nvmm/nvmm.c: revision 1.37
sys/dev/nvmm/x86/nvmm_x86_vmxfunc.S: revision 1.5
sys/dev/nvmm/x86/nvmm_x86_vmx.c: revision 1.70
sys/dev/nvmm/x86/nvmm_x86_svm.c: revision 1.68
sys/dev/nvmm/x86/nvmm_x86.c: revision 1.15
sys/dev/nvmm/nvmm_ioctl.h: revision 1.10

Micro-optimize: use pushq instead of pushw. To avoid LCP stalls and
unaligned stack accesses.

nvmm-x86: also flush the guest TLB when CR4.{PCIDE,SMEP} changes

nvmm: localify a variable that doesn't need to be global

nvmm: use relaxed atomics to read nmachines

nvmm-x86-svm: dedup code

nvmm-x86: hide more CPUID flags, mostly related to perf monitors

nvmm: misc improvements
- use mach->ncpus to get the number of vcpus, now that we have it
- don't forget to decrement mach->ncpus when a machine gets killed
- add more __predict_false()

nvmm-x86-svm: don't forget to intercept INVD
INVD executed in the guest can be dangerous for the host, due to CPU
caches being flushed without write-back.

nvmm: slightly clarify

nvmm: explicitly include atomic.h

(martin)

2020-08-29 16:47:45 UTC MAIN commitmail json YAML

2020-08-29 16:13:27 UTC MAIN commitmail json YAML

make(1): explain the shuffled messages in the test output

(rillig)

2020-08-29 16:07:11 UTC MAIN commitmail json YAML

Locking protocol changed again, unlock after send/recv

(christos)

2020-08-29 16:00:36 UTC MAIN commitmail json YAML

Enable DIAGNOSTIC by default in -current.  Should be commented out
in release branches.  Add commented-out LOCKDEBUG option.

(thorpej)