Commit Graph

278683 Commits

Author SHA1 Message Date
rillig
bf9a254a57 make(1): move documentation for assignment modifiers 2020-07-20 16:12:52 +00:00
rillig
317c5a3676 make(1): add test for :tu modifier with spaces 2020-07-20 16:12:02 +00:00
rillig
65c0da7b0b make(1): prefer memcmp over strncmp 2020-07-20 15:48:50 +00:00
rillig
b27184d9a8 make(1): fix type of VarPattern.lhsLen and rhsLen
String length is measured in size_t, not int.
2020-07-20 15:44:12 +00:00
rillig
14d545daea make(1): fix undefined behavior in :S modifier
The expression word + wordLen - leftLen had resulted in an out-of-bounds
pointer before.  Luckily the heap addresses were high enough in typical
applications to prevent a wrap-around.
2020-07-20 15:15:32 +00:00
riastradh
8f5a67bbb4 Disable x86 in-kernel AES temporarily.
There's a bug in the FPU state handling that it triggers -- likely
limited to the softint path since I've only ever seen it on a system
using wifi configured with WPA2 and CCMP, which uses AES heavily in
softint.

This is to be reverted once we diagnose the bug.  (There is also a
performance regression on wifi with WPA2 and CCMP, which I plan to
fix too once we figure out the FPU state handling bug.)
2020-07-20 15:11:29 +00:00
rillig
9b9cedd7d3 make(1): make implementation of the :S modifier simpler 2020-07-20 15:10:35 +00:00
jmcneill
51d8a97b81 No need for cpu_hatch_lock after all since we hatch secondaries one at a time 2020-07-20 14:59:57 +00:00
rillig
e5aca3d79b make(1): make modifier handling simpler
Implementing a modifier such as :S or :M should not be concerned with
separating the words of the resulting string.  Ideally this should be
done in the same way by all modifiers.

Before, the :R (filename root) modifier added a separator even if the
resulting filename root was an empty string.  The chances that this
change in behavior breaks anything are epsilon.

The :@ modifier, if it appeared after a :ts modifier, did not use the
word separator from the :ts modifier (which all other modifiers do) but
always added a space.  This behavior has been preserved for now.  It's an
unnecessary inconsistency though.

In contrast to Buffer, the newly added SepBuf uses size_t for memory
sizes and also uses the conventional parameter order (mem, memsize)
instead of the unusual (memsize, mem).
2020-07-20 14:50:41 +00:00
skrll
85188c8353 Fix non-MULTIPROCESSOR build 2020-07-20 14:38:38 +00:00
tsutsui
2414371414 Switch ports using MI wsfb drivers to HAVE_XORG_SERVER_VER=120.
Xorg wsfb servers from 1.20 for dreamcast (16bpp), hp300 (8bpp), and
luna68k (1bpp) work fine even on NetBSD 9.0, and zaurus is also
confirmed working.

Discussed with mrg@ and macallan@ on tech-x11:
 https://mail-index.netbsd.org/tech-x11/2020/07/thread1.html#002098
2020-07-20 14:24:13 +00:00
jmcneill
bb657399e1 Serialize CPU hatch annoucement printfs and wait for CPUs to start before
returning from cpu_boot_secondary_processors.
2020-07-20 14:19:41 +00:00
jmcneill
7d9c74a06d Simplify IPI handling even more for now and run everything at IPL_HIGH. 2020-07-20 14:05:51 +00:00
tsutsui
4cade5e54a Remove extra "-I" for ${X11INCS.DIX} macro. 2020-07-20 13:59:57 +00:00
fcambus
a41247a4c5 Update Spleen wscons fonts to version 1.8.1, bringing the following
improvements:

- Center tilde vertically for all sizes, as modern fonts do
2020-07-20 13:58:52 +00:00
tsutsui
879355ad78 Fix typos in ${X11INCS.DIX} include paths. PR/55500 2020-07-20 13:55:08 +00:00
fcambus
9bcf342ddb Update Spleen kernel fonts to version 1.8.1, bringing the following
improvements:

- Center tilde vertically for all sizes, as modern fonts do
2020-07-20 13:41:16 +00:00
jmcneill
e75f7f687c Fix confusion between ipi bitmask and mbox register bit assignments. 2020-07-20 13:30:41 +00:00
skrll
29538e30ed Move exc_step definition under MIPS64_OCTEON and use it in the zeroising
memset as length for correctness.
2020-07-20 10:53:47 +00:00
mrg
909bc537c1 clear all interrupts, not just those we expect from the hostintmask.
this removes the final hard hang i have seen in pinebookpro wifi,
though one may still need to 'ifconfig bwfm0 down up' occasionally,
so we still have bugs to fix here (the hang is usually associated
with 'checksum error' from bwfm/sdio.)
2020-07-20 06:47:02 +00:00
mrg
d8c7203634 only ask for SDPCMD_INTSTATUS_HMB_SW_MASK and SDPCMD_INTSTATUS_CHIPACTIVE
interrupts, not all of them.  we only ack these ones.

mostly fixes pinebookpro wifi hard hangs.  still is problematic and can
trigger interrupt storm that appears as a hard hang without NET_MPSAFE,
and a follow up, less clearly right, change will reduce that to a soft
hang of the interface that can be cleared with 'ifconfig bwfm0 down up',
and even often recovers itself now.
2020-07-20 06:44:55 +00:00
maxv
ee1ed0c711 Revert previous, to unbreak the build (NVMM declares the macro too).
There are hundreds of MSRs, we're not going to list them all, especially
when the majority are unused.
2020-07-20 05:50:55 +00:00
simonb
0600e66eb5 Less magic numbers. 2020-07-20 03:26:07 +00:00
simonb
d7093b1e3b Remove check/limit for only 2 cores.
Use MIPS_EBASE_CPUNUM instead of magic numbers.
2020-07-20 03:24:59 +00:00
simonb
fa7606ad02 Use MIPS_EBASE_CPUNUM instead of magic numbers. 2020-07-20 03:23:42 +00:00
simonb
fc31894f8f Expose MIPS_EBASE_CPUNUM. 2020-07-20 03:22:39 +00:00
simonb
9a1762babc Expose the width of the MIPS_EBASE_CPUNUM bitfield for asm code. 2020-07-20 03:17:44 +00:00
uwe
7b99bbb4d0 Use COPY_SYMTAB to get kernel symbols. 2020-07-20 02:04:43 +00:00
simonb
7c3b31f5c6 Add an extra bitfield in MIPS_COP_0_EBASE. 2020-07-20 01:10:38 +00:00
uwe
8845bbfb27 Implement cngetc to be able to talk to DDB. 2020-07-20 01:06:33 +00:00
uwe
b24f7b719f Add placeholders/boilerplate for NextVoD.
STMicroelectronics support needs to be written for both the CPU and
devices.  This config and related files is absolute bare bones to get
a scaffolding kernel to compile to actually work on that support.
Don't hold your breath.
2020-07-19 23:44:36 +00:00
rillig
6d9ace8469 make(1): remove unnecessary UNCONST 2020-07-19 22:22:01 +00:00
rillig
9b5167c07b make(1): make ampersand in ${VAR:from=to&} an ordinary character
In SysV substitutions, wildcards are expressed with % instead of &.  The
& is not mentioned in the manual page, and having another wildcard for
the whole word would be such an obscure feature that not even pkgsrc uses
it.  The easiest way to discover this feature had been to read the source
code of make(1) or to use a fuzzer and accidentally stumble upon this
edge case.
2020-07-19 22:04:27 +00:00
rillig
b867778e90 make(1): don't call VarSubstitute unnecessarily 2020-07-19 21:30:49 +00:00
rillig
7bfa0c4111 make(1): remove wrong VarPattern from ApplyModifier_Exclam 2020-07-19 21:14:56 +00:00
rillig
145369c494 make(1): remove wrong VarPattern from ApplyModifier_Assign 2020-07-19 21:10:34 +00:00
rillig
21074ae0c7 make(1): add test for assignment operators in conditions 2020-07-19 21:03:55 +00:00
rillig
f39a952981 make(1): flatten ApplyModifier_Assign 2020-07-19 20:56:34 +00:00
rillig
ed27c935b6 make(1): add tests for the ::= modifiers 2020-07-19 20:49:44 +00:00
rillig
6402b66d6f make(1): fix date in comment in unit test 2020-07-19 20:37:57 +00:00
rillig
9782cccda8 make(1): add tests for maximum number of capturing groups in :C 2020-07-19 19:36:20 +00:00
rillig
1c2d47a75e make(1): fix off-by-one error in :C modifier
Previously this off-by-one error had invoked undefined behavior.
Until today there was no corresponding unit test though.
2020-07-19 19:27:08 +00:00
rillig
a378ff6ccf make(1): fix double free introduced this morning in r1.258 2020-07-19 18:35:53 +00:00
rillig
f5b85b06d7 make(1): remove redundant loop control variable 2020-07-19 17:43:36 +00:00
rillig
f263de59ec make(1): rename ApplyModifiersState.flags to eflags
There are just too many variables called "flags" in this file, and their
constants must not accidentally overlap.
2020-07-19 17:40:30 +00:00
rillig
4f983c4e37 make(1): demonstrate off-by-one bug in :C modifier 2020-07-19 17:24:22 +00:00
rillig
822e1c79f4 make(1): clean up VarLoop structure 2020-07-19 16:48:48 +00:00
rillig
733486b647 make(1): remove unused parameter from ParseModifierPart 2020-07-19 16:22:44 +00:00
jdolecek
e36c697cb1 add #ifdef __HAVE_PCI_MSI_MSIX so this still compiles with NO_PCI_MSI_MSIX 2020-07-19 16:20:36 +00:00
jdolecek
464177a6ba add definition for MSR_IA32_FEATURE_CONTROL, just for information 2020-07-19 16:17:00 +00:00