Commit Graph

275064 Commits

Author SHA1 Message Date
ad
1d7848ad43 Process concurrent page faults on individual uvm_objects / vm_amaps in
parallel, where the relevant pages are already in-core.  Proposed on
tech-kern.

Temporarily disabled on MP architectures with __HAVE_UNLOCKED_PMAP until
adjustments are made to their pmaps.
2020-03-22 18:32:41 +00:00
christos
8c273a821d cryptlib header moved 2020-03-22 17:35:29 +00:00
ad
2a135a5a57 Temporarily mark hppa, mips, powerpc and riscv with __HAVE_UNLOCKED_PMAP,
for the benefit of UVM.

These need some pmap changes to support concurrent faults on the same
object.  I have changes to do just that, but they're a work in progress.
2020-03-22 17:33:58 +00:00
maxv
fa8beac4b9 Add internal support for multiple endpoints. 2020-03-22 17:15:15 +00:00
macallan
d46ae74c96 do not assume that a bus_space_handle_t is simply an offset
now this has a fighting chance of working on sparc64
2020-03-22 16:46:30 +00:00
ad
652657d90e Fix build failure. 2020-03-22 16:43:57 +00:00
maxv
7d1419fc37 clarify and explain 2020-03-22 15:14:03 +00:00
ad
86d91648b3 NetBSD 9.99.51 - namecache changes 2020-03-22 14:43:05 +00:00
ad
b840e629cd - Don't copy the entire namecache only to look up a few names. Walk the
data structures like cache_revlookup().

- nchash and mb_map are gone.  module_map replaced lkm_map.
2020-03-22 14:41:32 +00:00
ad
134d380e04 - nchash is gone.
- Report new namecache stats.
2020-03-22 14:39:28 +00:00
ad
0371f7496b Regen. 2020-03-22 14:39:03 +00:00
ad
420e6df1ce Merge vfs_cache.c from the ad-namecache branch. With this the namecache
index becomes per-directory (initially, a red-black tree).  The remaining
changes on the branch to namei()/getcwd() will be merged in the future.
2020-03-22 14:38:37 +00:00
ad
5de49fc7c2 Wrap vnode_impl.h in defined(_KERNEL) || defined(_KMEMUSER), and install
it for kmem grovellers.
2020-03-22 14:27:33 +00:00
pgoyette
561f1f3c9a Teach rump to process __link_set_evcnts entries. (Second part of
fix for PR kern/55088)
2020-03-22 13:30:10 +00:00
jdolecek
3ec019e619 actually in data_validated case, there is no need to inspect the data for Rx,
simply set the supported csum offload flags to skip the software csum
verification
2020-03-22 11:20:59 +00:00
khorben
9e6960f916 Forbid command line parameters when parsing configuration files
This behaviour was ambiguous at best.
While there, also correct the usage screen, and the corresponding manual
page.
2020-03-22 07:45:02 +00:00
christos
3f8590da2c Add more casts. 2020-03-22 02:30:15 +00:00
christos
47534e1ef6 Update date 2020-03-22 00:56:45 +00:00
christos
dbd05c5295 new OpenSSL 2020-03-22 00:56:18 +00:00
christos
a6fb1bf611 remove defines now defined in crypto/dso_conf.h 2020-03-22 00:54:03 +00:00
christos
52629741cc merge conflicts 2020-03-22 00:53:02 +00:00
christos
7d0047200d Changes between 1.1.1d and 1.1.1e [17 Mar 2020]
*) Properly detect EOF while reading in libssl. Previously if we hit an EOF
     while reading in libssl then we would report an error back to the
     application (SSL_ERROR_SYSCALL) but errno would be 0. We now add
     an error to the stack (which means we instead return SSL_ERROR_SSL) and
     therefore give a hint as to what went wrong.
     [Matt Caswell]

  *) Check that ed25519 and ed448 are allowed by the security level. Previously
     signature algorithms not using an MD were not being checked that they were
     allowed by the security level.
     [Kurt Roeckx]

  *) Fixed SSL_get_servername() behaviour. The behaviour of SSL_get_servername()
     was not quite right. The behaviour was not consistent between resumption
     and normal handshakes, and also not quite consistent with historical
     behaviour. The behaviour in various scenarios has been clarified and
     it has been updated to make it match historical behaviour as closely as
     possible.
     [Matt Caswell]

  *) [VMS only] The header files that the VMS compilers include automatically,
     __DECC_INCLUDE_PROLOGUE.H and __DECC_INCLUDE_EPILOGUE.H, use pragmas that
     the C++ compiler doesn't understand.  This is a shortcoming in the
     compiler, but can be worked around with __cplusplus guards.

     C++ applications that use OpenSSL libraries must be compiled using the
     qualifier '/NAMES=(AS_IS,SHORTENED)' to be able to use all the OpenSSL
     functions.  Otherwise, only functions with symbols of less than 31
     characters can be used, as the linker will not be able to successfully
     resolve symbols with longer names.
     [Richard Levitte]

  *) Corrected the documentation of the return values from the EVP_DigestSign*
     set of functions.  The documentation mentioned negative values for some
     errors, but this was never the case, so the mention of negative values
     was removed.

     Code that followed the documentation and thereby check with something
     like 'EVP_DigestSignInit(...) <= 0' will continue to work undisturbed.
     [Richard Levitte]

  *) Fixed an an overflow bug in the x64_64 Montgomery squaring procedure
     used in exponentiation with 512-bit moduli. No EC algorithms are
     affected. Analysis suggests that attacks against 2-prime RSA1024,
     3-prime RSA1536, and DSA1024 as a result of this defect would be very
     difficult to perform and are not believed likely. Attacks against DH512
     are considered just feasible. However, for an attack the target would
     have to re-use the DH512 private key, which is not recommended anyway.
     Also applications directly using the low level API BN_mod_exp may be
     affected if they use BN_FLG_CONSTTIME.
     (CVE-2019-1551)
     [Andy Polyakov]

  *) Added a new method to gather entropy on VMS, based on SYS$GET_ENTROPY.
     The presence of this system service is determined at run-time.
     [Richard Levitte]

  *) Added newline escaping functionality to a filename when using openssl dgst.
     This output format is to replicate the output format found in the '*sum'
     checksum programs. This aims to preserve backward compatibility.
     [Matt Eaton, Richard Levitte, and Paul Dale]

  *) Print all values for a PKCS#12 attribute with 'openssl pkcs12', not just
     the first value.
     [Jon Spillett]
2020-03-22 00:49:02 +00:00
kamil
6f2f677023 Revert previous
Clang protests:

error: 'no_sanitize' attribute only applies to functions and methods
2020-03-22 00:25:01 +00:00
ad
c5aab0cad6 x86 pmap:
- Give pmap_remove_all() its own version of pmap_remove_ptes() that on native
  x86 does the bare minimum needed to clear out PTPs.  Cuts ~4% sys time on
  'build.sh release' for me.

- pmap_sync_pv(): there's no need to issue a redundant TLB shootdown.  The
  caller waits for the competing operation to finish.

- Bring 'options TLBSTATS' up to date.
2020-03-22 00:16:16 +00:00
nisimura
23dcfbc211 improve comments 2020-03-22 00:14:16 +00:00
jdolecek
e02ab9f0fa add support for skipping IPv6 checksum validation aka offloading -
for xennet(4) both Rx and Tx, for xvif(4) only Tx for now
2020-03-22 00:11:02 +00:00
nisimura
33e5bb572d - move sc_flowflags = 0 line at earlier place.
- handle a set of speed selection operations.
2020-03-22 00:05:17 +00:00
jdolecek
1c3d30038a need to retain csum_flags in xennetback_copymbuf() when creating
new mbuf for the COPY transmit path, so that later NETRXF_csum_blank
flag is set correctly when passing request over to DomU

fixes bad checksums in DomU when xvif(4) TX offload is enabled;
problem observed when testing new IPv6 offloading, but it should
affect also existing IPv4 offloading

Note: code in xennet(4) is unaffected, there code consults the original
mbuf, rather than the new_m one
2020-03-21 23:25:53 +00:00
kamil
e01b61be71 Disable Address Sanitizer instrumentation of the link_set objects
The link_set array must contain consecutive elements that can be iterated.

GCC disables instrumentation of globals for user-defined sections and this
__noasan attribute is implicit for this compiler. For Clang it is required
to be specified explicitly.
2020-03-21 22:52:48 +00:00
kamil
ad22411d61 Expand the support of __no[sanitizer] attributes
Add support for RUMPKERNEL that can reuse these attributes in the same code.
These macros are not intended to be used by userland and are still disabled
there. They are a NetBSD specific extension.

Add proper support for clang and GCC.

Set __no[sanitizer] only under a sanitizer, as otherwise there are build
warnings about unused compiler attributes.

Reviewed by <maxv>
2020-03-21 22:45:47 +00:00
christos
94b4b9938a remove obsolete option 2020-03-21 20:20:59 +00:00
riastradh
26051592c4 Suppress spurious address-of-packed error in rump lfs too. 2020-03-21 18:58:43 +00:00
ad
ae4dfbfab6 PR port-vax/55094: vax pmap needs locking adjustments
Make the adjustments noted in the PR and don't call uvm_wait() or do
WAITOK ever - UVM takes care of that.
2020-03-21 18:47:54 +00:00
riastradh
d57fd02b1a Fix clang build after packed lfs64 accessor change. 2020-03-21 18:43:47 +00:00
thorpej
556b85afa1 When parsing Enhanced Allocation entries, use the correct calulation for
finding the next entry.
2020-03-21 17:09:29 +00:00
riastradh
a27f5a6022 Revert another historic $Hdr$ collapse. 2020-03-21 17:00:47 +00:00
thorpej
e441067f93 Use the 64-bit DMA tag, if available, with some constraints:
- The data buffers can come from anywhere in the 64-bit region, but
  the upper 16 bits of the data buffer address is stored in a single
  register, so just treat that as 0 and create a 48-bit restricted
  DMA tag.
- The descriptor address registers share a single register for the
  upper 32-bits, so enforce a 4G boundary when allocating memory
  for the descriptors.
2020-03-21 16:56:00 +00:00
thorpej
0f6711ff6c Don't bother with IFF_OACTIVE. 2020-03-21 16:47:05 +00:00
pgoyette
3a65820412 Finish the transition to SYSCTL_SETUP by removing local sysctllog
in favor of the one provided by the module infrastructure.
2020-03-21 16:30:39 +00:00
pgoyette
4af030e5b6 Deal with having to teardown sysctl entries in multiple sub-trees.
(This used to work, but I broke it recently.)
2020-03-21 16:28:56 +00:00
pgoyette
2c1f75181f Restore code to sysctl_free() the compat32 shadow tree 2020-03-21 16:17:08 +00:00
tsutsui
608bd4460c Add "build.sh live-image" support for hpcarm.
Tested on WS003SH.
See also PR/55075 for live-image with FAT partition support.
2020-03-21 14:25:49 +00:00
tsutsui
d9d42379c6 Add "build.sh live-image" support for zaurus.
Tested on SL-C3000 and SL-C700.
See also PR/55075 for live-image with FAT partition support.
2020-03-21 14:24:12 +00:00
tsutsui
2b0ec46162 Add "live-image with a FAT partition for bootstrap files" support.
See PR/55075 for more details.
2020-03-21 14:19:26 +00:00
reinoud
165933c6be Fix use-after-free issue! 2020-03-21 13:39:31 +00:00
reinoud
c0e3afd8a3 Compile in the DPRINTF debug macro's on DEBUG kernels 2020-03-21 13:38:29 +00:00
nisimura
ab309cd331 - handle register adjustment when link speed change.
- make some more care on reset operation.
2020-03-21 11:46:36 +00:00
nisimura
84a92abc7d - add one more missing RXC_EN.
- handle link speed change.
- fix genmask0() bit mask generation error.
2020-03-21 08:16:19 +00:00
nisimura
ab427befe9 make comments about descriptor storage design detail 2020-03-21 07:16:16 +00:00
skrll
1b75da11c2 KNF 2020-03-21 06:55:13 +00:00