Commit Graph

289179 Commits

Author SHA1 Message Date
oster 7464f2ddcd Support on-demand re-scanning all devices to look for
autoconfig RAID sets.  raidctl now supports looking
for autoconfig RAID sets with a new '-L' flag.
2021-08-02 20:31:14 +00:00
riastradh 4ea42cccd0 drm: Release fence if we're about to return too.
Should fix another fence leak.

XXX pullup-9
2021-08-02 20:20:54 +00:00
andvar f09c75af85 fix typo in README.compileopts text. 2021-08-02 17:45:10 +00:00
andvar 7424242ff3 s/suported/supported in comments 2021-08-02 17:43:55 +00:00
andvar 02698c5b7f s/diferent/different/ 2021-08-02 17:41:07 +00:00
tnn 6653d809fb ssdfb: define SSD1353 command set
also adjust some SSD1322 command names
2021-08-02 14:00:48 +00:00
andvar 077d1c0f36 fix various typos in comments and log messages. 2021-08-02 12:56:22 +00:00
nia e8507174be curses: clarify documentation regarding the standout attribute 2021-08-02 11:11:20 +00:00
andvar 5298fab779 s/overwriten/overwritten/ in comments. 2021-08-01 21:58:56 +00:00
andvar cba4208ca7 add pcib(4), pceb(4), pcmb(4).
pcmb is a separate man page for i386 only, pceb and pcib are references to pci(4) only and mentioned in its bridges section.
ok riastradh
2021-08-01 21:56:26 +00:00
rillig 01fc44ed45 tests/lint: fix test c11_generic_expression on ILP32
These platforms don't provide __uint128_t, at least not in lint.

The exact data type does not matter in this test, it just has to be
different from 'int'.
2021-08-01 21:12:31 +00:00
thorpej 9584483cb0 Document thorpej-cfargs2. 2021-08-01 21:00:41 +00:00
oster 6b2ddebee8 Move case 'l' to be in sorted order. No functional change. 2021-08-01 20:26:53 +00:00
rillig f4aacdc985 lint: clean up debug logging in the C grammar 2021-08-01 19:18:10 +00:00
rillig a11f7ac3ff lint: merge duplicate debugging code
The functions 'debug_node' and 'display_expression' were similar enough
to be merged.

Migrate debug_node to use the existing debug logging functions.

Remove the now unused option 'd' from the options string.
2021-08-01 19:11:54 +00:00
rillig f8d01ed580 lint: remove option -d, clean up debug logging
The command line option -d was not used by /usr/bin/lint, and it only
triggered a handful of debug messages.  Move this debug logging over to
the compile-time -DDEBUG setting.

Move display_expression further up to avoid the forward declaration.
2021-08-01 18:37:29 +00:00
rillig 86a595a37f lint: make xasprintf simpler
No functional change.
2021-08-01 18:13:53 +00:00
rillig cd66f68dee lint: unexport nomem
No functional change.
2021-08-01 18:07:35 +00:00
andvar 8179431272 fix typo in definition: s/threshhold/threshold/ 2021-08-01 18:02:22 +00:00
rillig fdcb9d74e4 lint: remove xmapalloc
Just trust the standard malloc to be smart enough.

No functional change.
2021-08-01 17:59:47 +00:00
rillig c8782a7cbc tests/lint: test the usual arithmetic conversions in traditional C 2021-08-01 16:29:28 +00:00
tnn 25e0fac49a ssdfb(4): add an iic fdt attachment example also 2021-08-01 16:17:05 +00:00
andvar c651c20bd5 fix syntax error and typo in overwritten. 2021-08-01 15:52:11 +00:00
tnn 2a55bc0beb ssdfb(4): nix BUGS section, add EXAMPLES section 2021-08-01 15:35:47 +00:00
andvar 4b2769fe52 fix typos in word "otherwise". 2021-08-01 15:29:29 +00:00
tnn eafe2c2fde ssdfb: support the 4-wire SPI interface 2021-08-01 14:56:18 +00:00
rillig d9bdf0a3b8 tests/lint: re-add the test for __uint128_t 2021-08-01 14:51:41 +00:00
rillig 05d4ee4022 lint: remove unreachable code from usual arithmetic conversions 2021-08-01 14:45:39 +00:00
rillig 6400299a82 tests/lint: fully cover the usual arithmetic conversions 2021-08-01 14:42:21 +00:00
rillig f33386540b lint: fix usual arithmetic conversions for 128-bit integer types 2021-08-01 13:49:17 +00:00
rillig c574d0575e lint: demonstrate wrong integer conversion for __uint128_t 2021-08-01 13:45:14 +00:00
rillig 5489342aeb tests/lint: test the usual arithmetic conversions
The function 'balance' does not mention __uint128_t and nevertheless
works as expected.  Need to investigate further.
2021-08-01 13:31:48 +00:00
rillig 7b590daa93 tests/lint: document why lint does not check _Generic selections 2021-08-01 13:09:38 +00:00
rillig 653952f0ab lint: remove hash value from symbol buffer
Conceptually, a symbol buffer does not need to remember its hash value
since that belongs to the symbol table.  This makes the code for the
symbol table simpler.  The number of hash calculations increases by
about 5%, which is negligible.

No functional change.
2021-08-01 08:03:43 +00:00
rillig e2febd0a7c lint: merge duplicate code for removing a symbol from the table
No functional change.
2021-08-01 07:46:51 +00:00
rillig a3ba24d77a lint: extract duplicate code for modifying the symbol table
No functional change.
2021-08-01 06:58:58 +00:00
rillig b25dbe034a lint: add debug logging for symbol table, clean up debug logging
When I tried to fix msg_115, I quickly ran into a segmentation fault,
probably related to the symbol table.  To better understand this part,
log insertions and deletions.

The other debug log messages do not need to mention the current file
position anymore, this is what lex_next_line takes care of since scan.l
1.113 from 2021-01-05.
2021-08-01 06:40:37 +00:00
rillig c790f31b75 tests/make: split tests for the variable modifier ':O'
The tests for parse errors are now in varmod-order, which lets the other
tests focus on the desired behavior of the modifiers.
2021-07-31 20:55:45 +00:00
andvar e16cbc3889 s/dependend/dependent/ 2021-07-31 20:51:32 +00:00
andvar 40be87ae1d s/threshhold/threshold 2021-07-31 20:29:36 +00:00
rillig 89727fbc98 lint: improve support for __int128_t and __uint128_t
For the .ln files, I chose the letter 'J' to represent the 128-bit
integer types since it is close to 'I' for int.  The naming of 'L' for
'long' is obvious, but 'Q' for 64-bit integers is a quad-16-bit word,
which is an unusual measurement unit nowadays.  One benefit of choosing
'J' is that the next letter, 'K' can then be used for 256-bit integer
types.

Support for 128-bit integer types is still very basic.  Plus, it is only
supported on LP64 platforms, which means that lint cannot be
cross-compiled to check for an LP64 platform while running on an ILP32
platform.
2021-07-31 19:52:44 +00:00
rillig b344f57d7d lint: initialize shared types in the same order as in tspec_t
This makes it easier to see whether there are any types missing, such as
__uint128_t.

No functional change.
2021-07-31 19:20:59 +00:00
rillig 6e400373b9 lint: do not evaluate arguments of debug_step
To analyze the unexpected test failure of op_shl_lp64, I had reverted
debug_step to evaluate its arguments.  I then accidentally committed
that without running the tests again.

Anyway, the previous commit can now be used as a demonstration that
initdecl is indeed missing the initialization for __uint128_t, which
leads to the internal error in op_shl_lp64.
2021-07-31 19:12:35 +00:00
rillig bbb47da2ee lint: clean up debug logging
The calls to debug_step, unlike printf, don't need a trailing newline.

Remove the debug_step0 macro and its relatives since lint already uses
enough other features from C99 that it essentially requires this
standard, which supports varargs macro arguments.  Among these features
are __func__ and printf("%zu").

In non-debug mode, do not evaluate the arguments of debug_step.
Evaluating the arguments had caused an internal error when running the
test op_shl_lp64.  This is indeed a bug since initdecl should have
initialized the type table for __uint128_t.  This had been forgotten
when support for __uint128_t was added in decl.c 1.69 from 2018-09-07.

No functional change.
2021-07-31 19:07:52 +00:00
rillig de0175e8f1 lint: extract debug logging to separate file
Lint currently has several different kinds of debug log:

* The -DDEBUG log is controlled at compile time.
* The -d command line options enables some other debug logging.
* The -DYYDEBUG log for parsing is controlled at compile time.
* The -y command line option only has an effect in -DYYDEBUG mode.

Extracting the logging into a separate file is a first step towards
unifying these logs and making the code for debug logging stand out less
than the current #ifdef DEBUG.

No functional change.
2021-07-31 18:16:42 +00:00
rillig 535a64a8ac lint: add debugging output for the grammar tokens
No functional change outside debug mode.
2021-07-31 17:09:21 +00:00
andvar 551e3d5fa5 s/propective/prospective 2021-07-31 16:54:37 +00:00
andvar 74bcda346c s/threshhold/threshold 2021-07-31 15:02:54 +00:00
thorpej 84c5c30b63 Fix a silly mistake (missing return) in the DEBUG case of the kernel pmap
case of pmap_extract().
2021-07-31 14:51:25 +00:00
mlelstv ad07108f16 Run devpubd before volume managers and pseudo disks. 2021-07-31 14:47:04 +00:00