Commit Graph

280641 Commits

Author SHA1 Message Date
rillig
be4d8db544 make(1): group the condition parsing state into a struct
Instead of having 3 global variables, the struct clearly communicates
that the 3 variables belong together. During debugging, it's easy to
just "p *lex" instead of remembering the names of the 3 former global
variables.

Converting the global variables into a local variable makes it
immediately clear that the functions in this file operate on this
struct.  Keeping the global variables in mind is more difficult.  Having
a local variable also gets rid of the 3 sv_* variables in
Cond_EvalExpression, which were also a sign that these "global
variables" were not that global at all.

This commit only contains the minimal code changes for converting the
variables into a local struct.  It was tempting to add functions like
CondLexer_SkipWhitespace, but this is better left for a follow-up
commit.
2020-09-08 17:55:23 +00:00
jakllsch
fa2a85c807 Enable __BUS_SPACE_HAS_STREAM_METHODS in std.generic64
These are needed for virtio_pci on aarch64eb.
2020-09-08 17:39:04 +00:00
jakllsch
3eade4a405 Acknowledge clang warning for NEON cipher code on aarch64eb
We've already made the nonportable vector initializations portable; the
code works on aarch64eb.
2020-09-08 17:35:27 +00:00
wiz
7088981fda Serial comma. 2020-09-08 17:30:44 +00:00
wiz
428b31fd5e Improve BINDANY formatting. 2020-09-08 17:30:10 +00:00
wiz
850df987a7 Remove superfluous Pp. 2020-09-08 17:29:20 +00:00
wiz
1e0cbee197 Use \(em. 2020-09-08 17:29:09 +00:00
jmcneill
c71ab72cec Disable EFI runtime support for BE kernels 2020-09-08 17:20:10 +00:00
jakllsch
b762c4de07 use correct condition 2020-09-08 17:17:32 +00:00
riastradh
d18cf1b917 workqueue: Lift unnecessary restriction on workqueue_wait.
Allow multiple concurrent waits at a time, and allow enqueueing work
at the same time (as long as it's not the work we're waiting for).
This way multiple users can use a shared global workqueue and safely
wait for individual work items concurrently, while the workqueue is
still in use for other items (e.g., wg(4) peers).

This has the side effect of taking away a diagnostic measure, but I
think allowing the diagnostic's false positives instead of rejecting
them is worth it.  We could cheaply add it back with some false
negatives if it's important.
2020-09-08 17:02:18 +00:00
maxv
e578d74917 nvmm-x86: avoid hogging behavior observed recently
When the FPU code got rewritten in NetBSD, the dependency on IPL_HIGH was
eliminated, and I took _vcpu_guest_fpu_enter() out of the VCPU loop since
there was no need to be in the splhigh window.

Later, the code was switched to use the kernel FPU API, API that works at
IPL_VM, not at IPL_NONE.

These two changes mean that the whole VCPU loop is now executing at IPL_VM,
which is not desired, because it introduces a delay in interrupt processing
on the host in certain cases.

Fix this by putting _vcpu_guest_fpu_enter() back inside the VCPU loop.
2020-09-08 17:02:03 +00:00
maxv
ed31958707 nvmm-x86-vmx: improve the handling of CR0
- CR0_ET is hard-wired to 1 in the cpu, so force CR0_ET to 1 in the
   shadow.
 - Clarify.
2020-09-08 17:00:07 +00:00
maxv
8d3066d385 nvmm: cosmetic changes
- Style.
 - Explicitly include ioccom.h.
2020-09-08 16:58:38 +00:00
jmcneill
96761d896a Define ACPI_BIG_ENDIAN on BE targets 2020-09-08 16:56:29 +00:00
riastradh
3a2683694c wg: Drop wgp_lock while waiting for endpoint psref to drain.
- This is safe because wgp_endpoint_changing locks out any attempts
  to change the endpoint until the draining is complete.

- This is necessary to avoid a deadlock where the handshake thread
  holds a psref and awaits mutex_enter(wgp->wgp_lock).

XXX The same deadlock may occur in wg_destroy_session.  Not clear
that it's safe to just release wgp_lock there; may need to create a
new session state, say WGS_STATE_DRAINING, while we wait for
psref_target_destroy.  But this needs a little more thought; a new
state may not be necessary, and would be nice to avoid if not
necessary.
2020-09-08 16:39:57 +00:00
jmcneill
6a59eace58 Build EFI bootloader on big endian armv7 and aarch64 targets. 2020-09-08 16:39:36 +00:00
jmcneill
e66e766944 Be explicit about building for little endian. This allows efiboot to be
built with the aarch64eb toolchain.
2020-09-08 16:34:43 +00:00
martin
6cb68e4497 Ooops, overlooked one MOUNTCRITLOCAL reference in the rename to
CRITLOCALMOUNTED.
2020-09-08 16:10:53 +00:00
riastradh
da697e67ba ipi: Split up initialization into two parts.
First part runs early so ipi_register can be used in module
initialization, e.g. via pktqueue_create; second part runs after CPUs
have been detected.
2020-09-08 16:00:35 +00:00
jmcneill
b4ab0863f3 Be explicit about building for little endian. This allows efiboot to be
built with the armv7be toolchain.
2020-09-08 15:36:37 +00:00
martin
e6dd42d44f Add if_iavf 2020-09-08 14:57:32 +00:00
martin
bdb3c472cf Remove if_iavf 2020-09-08 14:55:44 +00:00
martin
3f05a659fd Add if_iavf 2020-09-08 14:53:10 +00:00
rillig
9f6b7470f7 make(1): in CondGetString, replace repeated Buf_Add with Buf_AddStr 2020-09-08 14:51:43 +00:00
christos
cf8329dab9 Add bind test 2020-09-08 14:17:03 +00:00
christos
ecd0250189 Add tests for IP_BINDANY, IPV6_BINDANY 2020-09-08 14:13:50 +00:00
christos
e5e40d965d Add IP_BINDANY, IPV6_BINDANY which can be used to bind to any address in
order to implement transparent proxies.
2020-09-08 14:12:57 +00:00
jakllsch
65211a97a9 iaq_datalen is 16-bit, always use htole16
fixes build failure on big endian
2020-09-08 13:28:51 +00:00
adam
1575e0afaa Restore libgomp, liblsan, and libstdc++ as GCC-only 2020-09-08 13:01:47 +00:00
martin
8782d54f6b Sort - no functional change 2020-09-08 12:54:36 +00:00
martin
fdb483b5a5 Adjust for MOUNTCRITLOCAL -> CRITLOCALMOUNTED rename 2020-09-08 12:52:44 +00:00
martin
0a9098d00f Rename MOUNTCRITLOCAL to CRITLOCALMOUNTED to avoid a name collision
on case insensitive file systems
2020-09-08 12:52:18 +00:00
martin
2647485e8b Make it work with empty /var 2020-09-08 12:45:03 +00:00
skrll
0e2eb26032 A few bus_dmatag_subregion fixes
- return EOPNOTSUPP if min_addr isn't less than max_addr
- fix the subset check to ensure that all the ranges in the parent tag are
  within the {min,max}_addr range.  If so we can just continue to use the
  parent tag.
- when building the new ranges read the parent tag range rather than un-
  initialised memory.
- remove the max_addr != 0xffffffff check - the overflow should be handled
  by the unsigned arithmetic for arm32.
- add a KASSERT
- add comments
2020-09-08 10:30:17 +00:00
wiz
dd6ca9990a Remove empty line. End sentence with dot. Avoid unnecessary linebreak. 2020-09-08 10:07:35 +00:00
yamaguchi
f474b47c56 Added iavf(4) that is based on OpenBSD's iavf(4) implementation
reviewed by msaitoh@n.o and knakahara@n.o
2020-09-08 10:05:47 +00:00
skrll
8a99708f0f KNF 2020-09-08 06:13:53 +00:00
mrg
a29667efc0 disable these tests unless ATF_SBIN_IFCONFIG_WIFI_ENABLE=yes is
in the environment.  they change wifi configuration, restart
wpa_supplicant and hostapd, and, on broken wifi chipsets, may
hang the test run.
2020-09-08 06:11:32 +00:00
rillig
d8bc78b637 make(1): add test for wildcards in dependency declarations 2020-09-08 05:33:05 +00:00
rillig
112c95a538 make(1): fix off-by-one error in SuffExpandChildren
In suff.c r1.144 from yesterday, in the line "cp += nested_p - cp", I
accidentally removed the "- 1".  Since these "- 1" lines lead to slow
execution, each branch now increments the pointer separately by the
actually needed amount.

Fixing this bug posed way more new questions than it answered, and it
revealed an inconsistency in the parser about how characters are to be
escaped, and missing details in the documentation of Var_Parse, as well
as a parse error that unexpectedly doesn't stop make from continuing.
2020-09-08 05:26:21 +00:00
mrg
71e6058904 don't warn about array bounds for dodgy diagnostic code.
fixes gcc9 builds.
2020-09-08 00:51:29 +00:00
mrg
5d7c2fdd95 ia64 works, sun3 (m68k?) works, powerpc works, note powerpc64 issue,
evbarmv7-eb dtb issue, prep overflow issue, note that almost all
platform builds are now working for m68k/mips/ppc.
2020-09-07 23:47:02 +00:00
mrg
b5edf6945a move the __packed attribute from struct frame::F_t into the single
unaligned member inside.  CTASSERT() the size is unchanged.

with this, sun3 and GCC 9 appears to work.
2020-09-07 23:41:38 +00:00
mrg
28c1b35579 apply some GCC_NO_ADDR_OF_PACKED_MEMBER. 2020-09-07 22:22:17 +00:00
mrg
6b90dfb69d use the generic ppc64 LINK_GCC_C_SEQUENCE_SPEC. 2020-09-07 22:21:55 +00:00
rillig
3bb127c1bf make(1): document that nested braces work as expected now 2020-09-07 19:48:08 +00:00
dogcow
1a71ad483f Fix build.sh tools -j1 compilation, where bfd.h wasn't generated early
enough.
2020-09-07 19:46:45 +00:00
christos
29ff04b87c Simplify to avoid packed struct alignment issue. 2020-09-07 19:37:21 +00:00
rillig
db958a8ce2 make(1): extend and explain the test for comments 2020-09-07 19:17:36 +00:00
christos
625508a57b Disable an init-list-lifetime warning from gcc-9. 2020-09-07 19:05:41 +00:00