Commit Graph

284715 Commits

Author SHA1 Message Date
rillig d5ff218b54 lint: add test for macro from system header in strict bool mode
Seen in usr.bin/make/meta.c:1670: FD_ZERO(&readfds).  These macros
cannot be fixed since system headers must not include <stdbool.h>.
Therefore INT constants should be accepted as controlling expressions as
well.
2021-01-17 21:19:06 +00:00
thorpej 56caee6270 Use designated initializers and a consistent termination style in
compat_data[].
2021-01-17 21:02:33 +00:00
jmcneill 3cffd25e22 trailing whitespace 2021-01-17 19:53:05 +00:00
jmcneill 7472dc0d7c Fit in 80 columns. NFC. 2021-01-17 19:51:43 +00:00
rillig a5778d2e53 lint: install custom stdbool.h, used for strict bool mode 2021-01-17 19:32:52 +00:00
jmcneill e79a9d7bb8 Use vcons_earlyinit 2021-01-17 19:03:49 +00:00
jmcneill 1b26a1b99a Revert previous and introduce vcons_earlyinit, which is like vcons_init
except it does not setup a vcons_intr thread.
2021-01-17 19:03:32 +00:00
rillig 739c95ae1b lint: rename typeok_amper to typeok_address
This is about the address-of operator, not about the '&' sign that is
also used for bitwise and.
2021-01-17 17:16:47 +00:00
rillig bf9c8d819d lint: add type information to message 126 2021-01-17 17:14:34 +00:00
jmcneill d1b91ade8d The change from config_interrupts to a kthread for VCONS_DRAW_INTR init
unfortunately makes it easier to trigger a race that results in characters
not being erased properly at boot. Work around the original issue a
different way by creating a fake device_t and defer initialization until
we are sure that config_interrupt threads are done. This is not ideal and
the race is still present but fixing this properly would require a rewrite
to make this code MP-safe.
2021-01-17 16:51:12 +00:00
rillig cfba31c317 lint: flatten typeok_ordered_comparison 2021-01-17 16:32:36 +00:00
rillig a7193cf24a lint: extend a few message comments 2021-01-17 16:25:30 +00:00
rillig 8e597c87a3 lint: add test for incrementing const variable 2021-01-17 16:19:54 +00:00
rillig 2ba3ae8c78 lint: add test for rvalue ++ after cast 2021-01-17 16:16:09 +00:00
rillig 69002cf0dc lint: clean up typeok_ordered_comparison 2021-01-17 16:01:19 +00:00
rillig 3bfc030e8c lint: add test for ordered comparison between incompatible types 2021-01-17 16:00:16 +00:00
rillig d89ab73253 lint: fix return type of conaddr 2021-01-17 15:40:27 +00:00
rillig fd0bcadab9 lint: reduce scope of local variables in check_expr_misc 2021-01-17 15:31:11 +00:00
rillig 96d7022028 lint: replace integer constants with bool constants 2021-01-17 15:24:03 +00:00
jmcneill b14e20ccb6 Add appropriate memory barriers around sc_busy accesses. Fixes an issue
where character cells are sometimes not erased properly on aarch64 at
boot.
2021-01-17 15:13:15 +00:00
rillig 37be67f168 lint: rename T_AND to T_AMPER
When parsing a text into a C program, the character '&' does not yet
mean 'bitwise and', it could also be the address operator.
2021-01-17 15:09:56 +00:00
rillig 50e0b9dd83 lint: rename bitwise operators
When there are several variants of the AND operator, both of them should
get a distinguishing prefix, otherwise it's not clear which of the two
possible operators is meant by the plain AND.
2021-01-17 15:06:54 +00:00
rillig dfc4fb6411 lint: rename operator STAR to INDIR
C99 calls this operator the "indirection operator".  The word "star"
does not occur in the index of that standard.
2021-01-17 14:55:22 +00:00
rillig d7ac4d527f lint: rename operator AMPER to ADDR
There is no operator called 'ampersand'.  The ampersand sign is merely
the textual representation of both the operator ADDR and the operator
BITAND.
2021-01-17 14:50:11 +00:00
rillig 129dd59395 lint: rename build_ampersand to build_address
At that stage of analysis, the ampersand is no longer ambiguous, it has
already been resolved as the address-of operator, instead of the
bitwise-and operator.
2021-01-17 14:45:21 +00:00
rillig bf42fe7086 lint: extract fallback_symbol from new_name_node
The code was too close to the right margin, causing unnatural line
breaks.  Furthermore it was getting too long and detailed.
2021-01-17 14:37:48 +00:00
jmcneill a1329c24e1 fix build without VCONS_DRAW_INTR 2021-01-17 14:28:25 +00:00
rillig 29227121ae lint: flatten check_pointer_integer_conversion 2021-01-17 14:26:31 +00:00
rillig 29d26eb8ed lint: in strict bool mode, don't treat bool as arithmetic type 2021-01-17 13:50:32 +00:00
rillig 4567bafeac lint: explain failing test case in strict bool mode 2021-01-17 13:15:03 +00:00
rillig 72a430e500 lint: rename mod_t members 2021-01-17 12:23:01 +00:00
rillig 7f353737b1 lint: rename local variables in lbasename 2021-01-17 11:55:55 +00:00
rillig 8974cec54a lint: demonstrate wrong error message in strict bool mode 2021-01-17 11:32:06 +00:00
rillig 75504707dc lint: fix type mismatch for strict bool mode
No functional change.
2021-01-17 11:28:01 +00:00
simonb 9742d8845a Handle the SIOCGNBRINFO_IN6 ioctl for compat32. ndp -a works with
compat32 now.
2021-01-17 10:50:01 +00:00
mrg 63a30ad674 convert most uses of pmapdebug to use the new DPRINTF() macro.
add PMAP_INITLOUD debug option, that shows how pmap_bootstrap()
eats up the space provided by /boot as spare space.
2021-01-17 01:54:37 +00:00
mrg ca260a897e note that find_cpus() also sets cpu_arch. 2021-01-17 01:04:58 +00:00
mrg ae321cfaf8 set machine_model[] earlier, so that bootstrap can use it.
also, avoid "extern <variable>" in .c files, and add
idempotency to autoconf.h.
2021-01-17 01:02:28 +00:00
jmcneill bc3520e106 trailing whitespace 2021-01-17 00:35:46 +00:00
mrg 83c060cd84 add a command to dump the bootconfig passed meminfo. 2021-01-17 00:23:59 +00:00
jmcneill 39ce9b2f6a Prefer printing the framebuffer's PA instead of VA. It's much more useful.. 2021-01-17 00:23:38 +00:00
mrg 44f9c0cb22 reduce the scope of 'ci' variable. 2021-01-17 00:18:28 +00:00
mrg 1e8d1e7cf5 call it "kernel object linker module framework" not just
"module framework".  the latter is generic enough to
also mean the old ld(1) linked loadable kernel modules.
2021-01-17 00:17:40 +00:00
mrg 3b6cf52f57 also set -D_DEFAULT_SOURCE to open up more headers.
allow passing $(EXTRALIBS).
2021-01-17 00:15:14 +00:00
mrg 031fd7644c remove unset (and always printed as "(null)") gfilename variable. 2021-01-17 00:13:49 +00:00
chs 6aca65cc80 remove unused "_DIAGNOSTIC" option and opt_diagnostic.h.
note that this is unrelated to the widely used "DIAGNOSTIC" option.
2021-01-16 23:51:50 +00:00
chs 9262d00a9e remove a const to allow building with QUEUEDEBUG. 2021-01-16 23:50:49 +00:00
jmcneill f406b92624 Instead of defining VCONS_DONT_READ as the raw value of 0x30, instead
define it as (VCONS_NO_COPYCOLS|VCONS_NO_COPYROWS) for clarify. NFC.
2021-01-16 23:19:50 +00:00
rillig 93104a9b2f lint: remove custom stdbool.h for strict bool mode again
Adding it broke the official builds.
2021-01-16 22:18:14 +00:00
jmcneill b91f7f7d83 Remove MAXCPUS dependency. 2021-01-16 21:05:15 +00:00