Commit 75f0f6e
committed
render: carry the hole-aware slot count into json and markdown
The memory-KASLR windows (direct map, vmalloc, vmemmap) exported only
min/max, so a machine consumer could see the window but not how many
candidates it holds. That number is not derivable downstream: interior
C_EXCLUDE holes are carved at read time inside quantity_slots() and never
reach the wire, so (max - min) / align yields the hole-blind figure with no
route to the real one. Emit slots and entropy_bits on each json region and
in the markdown row, matching what the text readout already prints.
The speculative sub-window gains its own slots for the same reason: json
exported likely.min and likely.max while dropping how many candidates
survive inside them.
The regression test seeds an eight-slot-wide window with a stored count of
seven, so a renderer that recomputed from the bounds emits nine and fails.1 parent 5b1b10e commit 75f0f6e
3 files changed
Lines changed: 73 additions & 13 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
397 | 397 | | |
398 | 398 | | |
399 | 399 | | |
| 400 | + | |
| 401 | + | |
400 | 402 | | |
401 | 403 | | |
402 | 404 | | |
403 | | - | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
404 | 408 | | |
405 | 409 | | |
406 | | - | |
| 410 | + | |
| 411 | + | |
407 | 412 | | |
408 | 413 | | |
409 | | - | |
| 414 | + | |
| 415 | + | |
410 | 416 | | |
411 | 417 | | |
412 | 418 | | |
| |||
422 | 428 | | |
423 | 429 | | |
424 | 430 | | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
425 | 438 | | |
426 | 439 | | |
427 | 440 | | |
428 | | - | |
429 | | - | |
430 | | - | |
| 441 | + | |
| 442 | + | |
431 | 443 | | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
432 | 448 | | |
433 | 449 | | |
434 | 450 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
73 | 73 | | |
74 | 74 | | |
75 | 75 | | |
76 | | - | |
| 76 | + | |
| 77 | + | |
77 | 78 | | |
78 | 79 | | |
79 | 80 | | |
| |||
84 | 85 | | |
85 | 86 | | |
86 | 87 | | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
87 | 94 | | |
88 | 95 | | |
89 | 96 | | |
| |||
304 | 311 | | |
305 | 312 | | |
306 | 313 | | |
307 | | - | |
308 | | - | |
309 | | - | |
310 | | - | |
| 314 | + | |
| 315 | + | |
| 316 | + | |
| 317 | + | |
| 318 | + | |
311 | 319 | | |
312 | 320 | | |
313 | | - | |
| 321 | + | |
| 322 | + | |
314 | 323 | | |
315 | 324 | | |
316 | | - | |
| 325 | + | |
| 326 | + | |
317 | 327 | | |
318 | 328 | | |
319 | 329 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
828 | 828 | | |
829 | 829 | | |
830 | 830 | | |
| 831 | + | |
| 832 | + | |
| 833 | + | |
| 834 | + | |
| 835 | + | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
| 844 | + | |
| 845 | + | |
| 846 | + | |
| 847 | + | |
| 848 | + | |
| 849 | + | |
| 850 | + | |
| 851 | + | |
| 852 | + | |
| 853 | + | |
| 854 | + | |
| 855 | + | |
| 856 | + | |
| 857 | + | |
| 858 | + | |
| 859 | + | |
| 860 | + | |
| 861 | + | |
| 862 | + | |
| 863 | + | |
831 | 864 | | |
832 | 865 | | |
833 | 866 | | |
| |||
2495 | 2528 | | |
2496 | 2529 | | |
2497 | 2530 | | |
| 2531 | + | |
2498 | 2532 | | |
2499 | 2533 | | |
2500 | 2534 | | |
| |||
0 commit comments