tb [Thu, 20 Jan 2022 20:37:33 +0000 (20:37 +0000)]
Remove the remaining three parens in return statements.
tb [Thu, 20 Jan 2022 20:35:46 +0000 (20:35 +0000)]
Use correct spelling of NULL.
claudio [Thu, 20 Jan 2022 18:06:20 +0000 (18:06 +0000)]
Make sure that all poll loops properly restart the poll loop on EINTR.
Also either fail hard or restart after other errors. In anycase do not
look at pollfds after an error.
OK benno@
benno [Thu, 20 Jan 2022 17:56:35 +0000 (17:56 +0000)]
catch poll() returning EINTR.
ok millert@ claudio@
bluhm [Thu, 20 Jan 2022 17:13:12 +0000 (17:13 +0000)]
pfkey import_flow() must do the NULL check before doing pointer
arithmetic.
found by kubsan; joint work with tobhe@; OK millert@
bluhm [Thu, 20 Jan 2022 17:11:30 +0000 (17:11 +0000)]
snprintf(9) allows NULL string if size is 0. But doing NULL pointer
arithmetic is undefined behavior. Check that size is positive
before adding to pointer. While there, use NUL char for string
termination.
found by kubsan; joint work with tobhe@; OK millert@
claudio [Thu, 20 Jan 2022 16:36:19 +0000 (16:36 +0000)]
Move the notBefore and notAfter checks from proc_parser_root_cert()
to ta_parse(). This fits better there. Also drop extracting and
printing the x509 subject of the TAs. The subject is more or less
the filename anyway which is already printed.
OK tb@
naddy [Thu, 20 Jan 2022 14:18:10 +0000 (14:18 +0000)]
remove unused variable from all copies of _asr_strdname()
... including those inlined into print_dname(). This also fixes
-Wunused-but-set-variable warnings warnings in smtpd and smtpctl.
The code was imported with asr and then copied around.
ok deraadt@ guenther@
naddy [Thu, 20 Jan 2022 14:12:55 +0000 (14:12 +0000)]
ospf6ctl: fix -Wunused-but-set-variable warning
ok guenther@
naddy [Thu, 20 Jan 2022 14:11:27 +0000 (14:11 +0000)]
eigrpd: fix -Wunused-but-set-variable warning
ok guenther@
naddy [Thu, 20 Jan 2022 14:10:07 +0000 (14:10 +0000)]
dvmrpctl: fix -Wunused-but-set-variable warning
ok guenther@
naddy [Thu, 20 Jan 2022 14:07:34 +0000 (14:07 +0000)]
mg: fix -Wunused-but-set-variable warnings
strtonum() is only called to verify that a string is numerical, the
return value is unused.
inlist is no longer used after the code was refactored.
ok millert@ guenther@
naddy [Thu, 20 Jan 2022 14:03:31 +0000 (14:03 +0000)]
ospf6d: fix -Wunused-but-set-variable warnings
ospf6d.c: sync a missing bit of (disabled) code with ospfd
rde.c: ifdef out some more incomplete code
ok denis@ claudio@
tobhe [Thu, 20 Jan 2022 14:02:51 +0000 (14:02 +0000)]
Don't return uninitialized stack memory on copyin() error.
Found with clang static analyzer.
ok gkoehler@
jsg [Thu, 20 Jan 2022 13:12:48 +0000 (13:12 +0000)]
regen
jsg [Thu, 20 Jan 2022 13:12:07 +0000 (13:12 +0000)]
add Tiger Lake H ids
from 11th Generation Intel Core Processor Datasheet 631121-009
some ids from thfr@'s Dell Precision 7560
and ymtc nvme found in jcs@'s Huawei MateBook X (2020)
inoguchi [Thu, 20 Jan 2022 11:31:37 +0000 (11:31 +0000)]
Add check for EVP_CIPHER_CTX_ctrl
suggestion from tb@
inoguchi [Thu, 20 Jan 2022 11:22:48 +0000 (11:22 +0000)]
Add check for EVP_CIPHER_CTX_set_key_length return value
CID 21653
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 11:18:49 +0000 (11:18 +0000)]
Add check for OBJ_nid2obj return value
input from tb@
inoguchi [Thu, 20 Jan 2022 11:15:39 +0000 (11:15 +0000)]
Add check for ASN1_INTEGER_set
CID 24893
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 11:12:14 +0000 (11:12 +0000)]
Fix check for BN_mod_inverse_ct return value
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 11:11:17 +0000 (11:11 +0000)]
Fix check for BN_mod_inverse_ct return value
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 11:10:11 +0000 (11:10 +0000)]
Add check for BN_sub return value
CID 24839
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 11:08:12 +0000 (11:08 +0000)]
Fix check for BN_mod_inverse_ct return value
ok jsing@ millert@ tb@
bluhm [Thu, 20 Jan 2022 11:06:57 +0000 (11:06 +0000)]
Shifting signed integers left by 31 is undefined behavior in C.
found by kubsan; joint work with tobhe@; OK miod@
inoguchi [Thu, 20 Jan 2022 11:06:24 +0000 (11:06 +0000)]
Add check for BIO_indent return value
CID 24778
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 11:03:48 +0000 (11:03 +0000)]
Fix check for BN_mod_inverse_ct return value
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 11:02:44 +0000 (11:02 +0000)]
Fix check for BN_mod_inverse_ct return value
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 11:00:34 +0000 (11:00 +0000)]
Add check for BIO_indent return value
CID 24812
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 10:58:35 +0000 (10:58 +0000)]
Add check for EVP_CIPHER_CTX_set_key_length return value
It returns 1 on success and 0 for failure, never negative value.
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 10:56:22 +0000 (10:56 +0000)]
Add and fix check for BN functions return value
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 10:53:33 +0000 (10:53 +0000)]
Add check for BN functions return value
CID 21665 24835
comment from jsing@ and tb@
ok jsing@ millert@ tb@
inoguchi [Thu, 20 Jan 2022 10:49:56 +0000 (10:49 +0000)]
Add check for BIO_indent return value
CID 24869
ok jsing@ millert@ tb@
jsg [Thu, 20 Jan 2022 10:18:26 +0000 (10:18 +0000)]
drm/amd/display: explicitly set is_dsc_supported to false before use
From Mario Limonciello
ce258c74f8d95e81ce65f53775fcdcbc8ca090da in linux 5.15.y/5.15.16
63ad5371cd1e379519395c49a4b6a652c36c98e5 in mainline linux
claudio [Thu, 20 Jan 2022 09:24:08 +0000 (09:24 +0000)]
Rename mft_check() to proc_parser_mft_check() and make it a static function.
visa [Thu, 20 Jan 2022 07:49:25 +0000 (07:49 +0000)]
dt: Add frame skip parameters for octeon
OK mpi@
jsg [Thu, 20 Jan 2022 06:33:03 +0000 (06:33 +0000)]
xa_pool is protected by xa_lock mtx so drop pool ipl to IPL_NONE
jsg [Thu, 20 Jan 2022 03:43:30 +0000 (03:43 +0000)]
initial support for drm sync files, fences associated with file
descriptors for explicit fencing
tested with libdrm's amdgpu_test syncobj timeline tests and vkcube on
intel broadwell with Mesa 21.3 (which hangs without sync file support
after the 'anv: Assume syncobj support' Mesa commit)
feedback and ok visa@
tb [Wed, 19 Jan 2022 20:28:06 +0000 (20:28 +0000)]
Document the bizarre fact that {CMS,PCKS7}_get0_signers() needs some
freeing of what they return despite being get0 functions: the stack
of X509s that they return must be freed with sk_X509_free(). The get0
thus probably refers to the individual certs, but not to the stack
itself.
The libcrypto and libssl APIs never cease to amaze with new traps.
ok inoguchi
guenther [Wed, 19 Jan 2022 19:39:42 +0000 (19:39 +0000)]
Only invoke the underlying cpuid instruction if the real CPU might support
the leaf (<=cpuid_level) and always pass the subleaf. Delete the
CPUID_LEAF() calls made superfluous by always passing the subleaf.
ok mlarkin@
job [Wed, 19 Jan 2022 17:15:08 +0000 (17:15 +0000)]
Add -f to usage in main routine
OK tb@
job [Wed, 19 Jan 2022 16:33:36 +0000 (16:33 +0000)]
Document the -f file inspection function
claudio [Wed, 19 Jan 2022 15:50:31 +0000 (15:50 +0000)]
Implement a filemode where the passed file from the command line is
printed in human readable form and is also verified against the valid
cache of rpki-client.
To validate the file the chain is explored backwards by looking at the
Authority Information Access URI and X509v3 CRL Distribution Point of
the cert. Once the trust anchor is found this chain can be verified.
Feedback and OK job@ tb@
inoguchi [Wed, 19 Jan 2022 13:47:44 +0000 (13:47 +0000)]
Check return value from EVP_CIPHER_CTX_new in cms_pwri.c
CID 345137
ok jsing@ tb@
visa [Wed, 19 Jan 2022 13:45:22 +0000 (13:45 +0000)]
Mention more controllers that provide sdmmc(4) bus.
Initial diff from and OK jmc@
inoguchi [Wed, 19 Jan 2022 11:10:55 +0000 (11:10 +0000)]
Check function return value in libtls
EVP_EncryptInit_ex, EVP_DecryptInit_ex and HMAC_Init_ex are possible to
fail and return error.
Error from these functions will be fatal for the callback, and I choose to
return -1.
SSL_CTX_set_tlsext_ticket_key_cb.3 explains the return value of callback.
This also could fix Coverity CID 345319.
ok jsing@ tb@
martijn [Wed, 19 Jan 2022 11:05:36 +0000 (11:05 +0000)]
Mark regress set requests as expected failure now that snmpd(8) doesn't
support set requests anymore.
Fix up multi-varbind bulkget requests now that the new application layer
returns the correct order.
OK jmatthew@
martijn [Wed, 19 Jan 2022 11:02:38 +0000 (11:02 +0000)]
Disable regress for set requests after dropping support in new application
layer.
OK jmatthew@
martijn [Wed, 19 Jan 2022 11:00:56 +0000 (11:00 +0000)]
Hook up the new application layer.
OK jmatthew@
tested as part of larger diff by sthen@ and Joel Carnat
martijn [Wed, 19 Jan 2022 10:59:35 +0000 (10:59 +0000)]
Add the new application layer. Changes include:
- Asynchronous design, which should allow us to cleanly implement agentx
support.
- Cluster requests when sending them to backends
- Return a better error code in a lot of cases.
- Allow bulkget to return row by row instead of column by column (as per
RFC3416)
- Better SNMPv1 mapping as per RFC3584
- Allow registration of overlapping regions.
- Stricter OID comparison.
- We loose write support. Previous write support didn't guarantee
atomicity, wasn't persistent across restarts and didn't implement
anything useful. This can be added later if it's missed.
- This is quite a bit slower, but this should clear up once the current
mps.c and mib.c code gets pushed out. Other tricks could help speed
things up, but I don't want to resort to extra tricks if it's not needed.
- More detailed debugging output.
This commit is stand-alone and gets hooked in with the following commit.
"Looks good at first glance" benno@
minor issues pointed out by and OK jmatthew@
Performance loss aceptable to sthen@
tested as part of larger diff by sthen@ and Joel Carnat
patrick [Wed, 19 Jan 2022 10:51:04 +0000 (10:51 +0000)]
On SDHC version 3.0 controllers the divisor doesn't have to be a power
of two, but can be a multiple of two. Make use of this to achieve card
clock frequencies closer to the target frequency.
ok visa@
kn [Wed, 19 Jan 2022 10:43:48 +0000 (10:43 +0000)]
Grab the kernel lock in uvm_wxcheck() when aborting the process
kern.wxabort=1 logs and kills programs after W^X violations.
At least sigexit() -> coredump() as well as the non-atomic increment of
ps_wxcounter require protection, so grab the big lock for the entire block.
This is part of the effort to unlock mmap(2)'s MAP_ANON case.
Feedback mvs claudio kettenis deraadt
OK kettenis
martijn [Wed, 19 Jan 2022 10:36:35 +0000 (10:36 +0000)]
Implement snmpe_send to allow to allow the new application layer to send
messages through the current transport mapping code.
OK jmatthew@
tested as part of larger diff by sthen@ and Joel Carnat
martijn [Wed, 19 Jan 2022 10:28:13 +0000 (10:28 +0000)]
Make sure that we ASN1 verify the varbindlist as soon as we unpack it.
OK jmatthew@
tested as part of larger diff by sthen@ and Joel Carnat
martijn [Wed, 19 Jan 2022 10:26:37 +0000 (10:26 +0000)]
Add definitions for SNMP-TARGET-MIB. These are needed for the new
application layer.
OK jmatthew@
tested as part of larger diff by sthen@ and Joel Carnat
martijn [Wed, 19 Jan 2022 10:25:04 +0000 (10:25 +0000)]
Move some smi.c functions to their own header.
These are needed for a new application layer, where a lot of the snmpd.h
stuff just clutter.
OK jmatthew@
tested as part of larger diff by sthen@ and Joel Carnat
martijn [Wed, 19 Jan 2022 10:22:48 +0000 (10:22 +0000)]
Move some snmpe.c functions to their own header.
These functions are needed from the new application layer and don't
really belong in snmpd.h.
OK jmatthew@
tested as part of larger diff by sthen@ and Joel Carnat
martijn [Wed, 19 Jan 2022 10:19:27 +0000 (10:19 +0000)]
Move log.c functions to their own header.
This is needed for a new application layer where, where a lot of the
snmpd.h stuff just clutter.
Requested by benno@
OK jmatthew@
tested as part of larger diff by sthen@ and Joel Carnat
tb [Wed, 19 Jan 2022 09:22:51 +0000 (09:22 +0000)]
rpki-client: don't leak nfile if no repo is found.
ok claudio
claudio [Wed, 19 Jan 2022 08:24:43 +0000 (08:24 +0000)]
Add missing x509_init_oid() calls in regress tests.
Found by anton@
anton [Wed, 19 Jan 2022 06:46:55 +0000 (06:46 +0000)]
Remove temporary verbose logging.
jsg [Wed, 19 Jan 2022 05:36:54 +0000 (05:36 +0000)]
go back to rev 1.5 of irq_work.h with tasks on system_wq
this may further help people with recent gen intel machines
jsg [Wed, 19 Jan 2022 02:49:05 +0000 (02:49 +0000)]
no longer need to disable -Wtautological-compare and
-Wunneeded-internal-declaration when building drm with clang
jsg [Wed, 19 Jan 2022 02:20:06 +0000 (02:20 +0000)]
move some unused functions under ifdef
mpi [Wed, 19 Jan 2022 02:08:24 +0000 (02:08 +0000)]
Comment out an incorrect lock assertion.
The swap code path in uvm_aio_aiodone() is not holding the corresponding
page lock and shouldn't as long as anons are locked inside uvm_page_unbusy()
to handle the PG_RELEASED case.
Reported by Ralf Horstmann on bugs@
jsg [Wed, 19 Jan 2022 00:34:31 +0000 (00:34 +0000)]
__always_inline needs the inline keyword as well as the attribute
deraadt [Tue, 18 Jan 2022 21:59:29 +0000 (21:59 +0000)]
Avoid pulling sys/param.h, by using _ALIGN instead.
sys/time.h now gets NBBY and howmany() also
ok guenther
deraadt [Tue, 18 Jan 2022 21:00:59 +0000 (21:00 +0000)]
sync
krw [Tue, 18 Jan 2022 19:37:27 +0000 (19:37 +0000)]
PRT_make() can just zap the destination dos_partition if the
source prt has prt_ns == 0 or prt_id == DOSPTYP_UNUSED.
No functional change.
claudio [Tue, 18 Jan 2022 18:19:47 +0000 (18:19 +0000)]
Pass the X509_V_FLAG_CRL_CHECK flag as argument to valid_x509().
For mfts this flag is cleared since the CRL is referenced by the MFT itself.
Also remove some if (crl != NULL) checks since they are not needed.
The functions protected by it are all handling NULL as an input.
OK job@ tb@
claudio [Tue, 18 Jan 2022 16:52:18 +0000 (16:52 +0000)]
Use X509_get0_pubkey() for opk and remove the EVP_PKEY_free(opk).
Suggested by and OK tb@
claudio [Tue, 18 Jan 2022 16:41:00 +0000 (16:41 +0000)]
Adjust after change to cert_parse() and ta_parse().
claudio [Tue, 18 Jan 2022 16:36:49 +0000 (16:36 +0000)]
Change cert_parse() and ta_parse() to no longer take a x509 handle as
argument. The x509 cert is also inside struct cert and easy to access.
Also switch auth_insert() to a void function since it can't fail.
OK tb@
claudio [Tue, 18 Jan 2022 16:29:06 +0000 (16:29 +0000)]
More fixing. Previous revert was incomplete.
claudio [Tue, 18 Jan 2022 16:24:55 +0000 (16:24 +0000)]
Revert all the files that should have not been committed in last commit.
claudio [Tue, 18 Jan 2022 16:18:22 +0000 (16:18 +0000)]
Kill extra newline
tb [Tue, 18 Jan 2022 16:09:51 +0000 (16:09 +0000)]
Fix function name in warn message.
claudio [Tue, 18 Jan 2022 13:46:07 +0000 (13:46 +0000)]
Unify the various X509_verify_cert() calls and the boiler plate code around
it into its own function valid_x509(). Simplifies the code substantially.
This may report a few more errors for .roa and .gbr files but IMO that
special case was a left-over from long time ago.
OK tb@
claudio [Tue, 18 Jan 2022 13:06:43 +0000 (13:06 +0000)]
Cleanup the scattered OBJ_txt2obj() calls and move them into
x509_init_oid() to initalize all necessary OID objects at start.
OK tb@
bluhm [Tue, 18 Jan 2022 12:38:21 +0000 (12:38 +0000)]
Properly handle read-only clusters in m_pullup(9).
If the first mbuf of a chain in m_pullup is a cluster, check if the
cluster is read-only (shared or an external buffer). If so, don't
touch it and create a new mbuf for the pullup data.
This restores original 4.4BSD m_pullup, that not only returned
contiguous mbuf data of the specified length, but also converted
read-only clusters into writeable memory. The latter feature was
lost during some refactoring.
from ehrhardt@; tested by weerd@; OK stsp@ bluhm@ claudio@
patrick [Tue, 18 Jan 2022 11:36:21 +0000 (11:36 +0000)]
Improve how quirks are handled on sdhc(4)-compatible drivers. So far
we have passed a modified version of the contents in the capabilities
register if we wanted to override what sdhc(4) would otherwise read.
Unfortunately there's a second capabilities register that we did not
yet take into consideration, which is why to disable DDR50 support we
created a quirk flag in the softc. The sdhc(4) ACPI nodes have a way
to mask and set bits in both of the capabilities register, which is a
flexible approach to solving that issue and using that for our sdhc(4)
drivers even improves readability.
ok kettenis@
dlg [Tue, 18 Jan 2022 10:54:05 +0000 (10:54 +0000)]
return EIO, not ENXIO, when the interface underneath ifq_deq_sleep dies.
this is consistent with other drivers when they report their
underlying device being detached.
dlg [Tue, 18 Jan 2022 10:48:33 +0000 (10:48 +0000)]
a comment about bridges shouldnt list switch(4), but can have veb(4).
visa [Tue, 18 Jan 2022 07:53:39 +0000 (07:53 +0000)]
Add cdsdhc(4), a driver for the Cadence SD/SDIO/eMMC host controller.
Tested on a PolarFire SoC.
visa [Tue, 18 Jan 2022 07:44:37 +0000 (07:44 +0000)]
plic: Fix cpuid handling
Make `cpu' signed so that the possible return value -1 from
plic_get_cpuid() gets handled correctly in the (cpu < 0) condition.
This prevents plic_attach() from updating sc_contexts[] out of bounds.
When plic_get_cpuid() returns -1, ignore the entry and continue
processing. The error is not fatal. It is normal that secondary CPUs
are not found when running a non-MULTIPROCESSOR kernel on
a multiprocessor machine.
OK kettenis@
djm [Mon, 17 Jan 2022 22:56:04 +0000 (22:56 +0000)]
when decompressing zlib compressed packets, use Z_SYNC_FLUSH instead
of Z_PARTIAL_FLUSH as the latter is not actually specified as a valid
mode for inflate(). There should be no practical change in behaviour
as the compression side ensures a flush that should make all data
available to the receiver in all cases.
repoted by lamm AT ibm.com via bz3372; ok markus
djm [Mon, 17 Jan 2022 21:41:04 +0000 (21:41 +0000)]
make most of the sftp errors more idiomatic, following the general form
of "[local/remote] operation path: error message"; ok markus
djm [Mon, 17 Jan 2022 21:39:51 +0000 (21:39 +0000)]
when transferring multiple files in SFTP mode, create the destination
directory if it doesn't already exist to match olde-scp(1) behaviour.
noticed by deraadt@ ok markus@
bluhm [Mon, 17 Jan 2022 20:50:22 +0000 (20:50 +0000)]
Update libexpat to 2.4.3. This fixes CVE-2021-45960, CVE-2021-46143,
and CVE-2022-22822 to CVE-2022-22827. Relevant for OpenBSD are
security fixes #531 #534 #532 #538 #539 and other changes #527 #513
#514 #502 #503. No library bump necessary.
OK millert@
guenther [Mon, 17 Jan 2022 19:45:34 +0000 (19:45 +0000)]
Stop supporting a GOT with only one reserved entry in static PIE
and ld.so itself: support for that in dynamic objects was removed
in 2010.
Inline RELOC_GOT() into boot_md.c and clean up the result like
boot.c, snag just the three DT_MIPS_* tags needed, and delete the
error case which is verified at build time.
ok visa@
naddy [Mon, 17 Jan 2022 18:19:51 +0000 (18:19 +0000)]
dig: fix -Wunused-but-set-variable warnings
with and ok florian@
naddy [Mon, 17 Jan 2022 18:04:35 +0000 (18:04 +0000)]
rad: fix -Wunused-but-set-variable warning
ok florian@
visa [Mon, 17 Jan 2022 14:17:48 +0000 (14:17 +0000)]
sfcc: Fix accidental spinning
Adjust end condition so that sfcc_cache_wbinv_range() would not spin
when (pa + len) is not cache line aligned.
While here, fix parameter types of sfcc_cache_wbinv_range() as
suggested by kettenis@.
OK kettenis@ (earlier version), miod@
mpi [Mon, 17 Jan 2022 13:55:32 +0000 (13:55 +0000)]
Call uvm_pglistfree(9) instead of uvm_pmr_freepageq().
There is no functionnal change as the former is just a wrapper around the
latter. However upper layer of UVM do not need to mess with the internals
of the page allocator.
This will also help when a page cache will be introduced to reduce contention
on the global mutex serializing acess to pmemrange's data.
ok kettenis@, kn@, tb@
jsg [Mon, 17 Jan 2022 12:42:30 +0000 (12:42 +0000)]
change irq work from interrupt context back to process context like
our 5.10 drm used (via a task) by changing from timeout_set() to
timeout_set_proc()
irq work is supposed to be in interrupt context but some path used on
inteldrm with gen 9 graphics sleeps.
Reported by Agnosto Dvonik on kaby lake and jcs@ and aja@ on comet lake.
For Agnosto Dvonik this occured when running firefox or mpv, for jcs@
when playing a video in firefox, for aja@ after 5 min of running gnome.
aja@ has run gnome for many hours with this change without problem.
nicm [Mon, 17 Jan 2022 10:40:03 +0000 (10:40 +0000)]
Do not try to strdup NULL, from seL4 at disroot dot org in GitHub issue
3038.
jsg [Mon, 17 Jan 2022 04:12:15 +0000 (04:12 +0000)]
filessystems -> filesystems
jsg [Mon, 17 Jan 2022 03:54:03 +0000 (03:54 +0000)]
unstub dma_fence_chain_find_seqno() for non zero seqno
mlarkin [Mon, 17 Jan 2022 02:54:28 +0000 (02:54 +0000)]
Allow more memory ranges in hibernate
The previous limit of VM_PHYSSEG_MAX ranges (16) was proving too small for
newer machines. This diff reorganizes the hibernate signature block to allow
for 22 ranges by removing the kernel version comparison and replacing it
with a SHA of several unique kernel features (the version string and several
addresses of functions not inside the same .o).
Reported by claudio@, who also helped fix some issues in the diff. Input
from deraadt@ as well.
Tested by myself and claudio on a variety of machines. Only compile tested on
i386 as I have no more S4-capable i386 hardware anymore.
ok claudio@
guenther [Mon, 17 Jan 2022 01:35:36 +0000 (01:35 +0000)]
Nothing depends on archdep.h pulling in other #includes anymore,
so delete the #includes and hide the RELOC_* functions that are
only used by lib/csu behind "#ifdef RCRT0"
these are the ones I tested; kettenis@ was on board with the concept