Commit Graph

29 Commits

Author SHA1 Message Date
jakllsch
3eade4a405 Acknowledge clang warning for NEON cipher code on aarch64eb
We've already made the nonportable vector initializations portable; the
code works on aarch64eb.
2020-09-08 17:35:27 +00:00
riastradh
7f7b51ca34 Make the AES and ChaCha NEON tests work in softfloat userland.
(`Softfloat' here refers to the ABI, which of course may be running
on a CPU with NEON.)
2020-08-17 16:26:02 +00:00
martin
9c197a80ad Restrict the NEON code to v7hf - the softfloat toolchain does not like
it (nor is it likely to work if there is no FPU present).
2020-08-16 15:52:14 +00:00
riastradh
7a8eb9a111 Implement 4-way vectorization of ChaCha for armv7 NEON.
cgd performance is not as good as I was hoping (~4% improvement over
chacha_ref.c) but it should improve substantially more if we let the
cgd worker thread keep fpu state so we don't have to pay the cost of
isb and zero-the-fpu on every 512-byte cgd block.
2020-07-28 20:08:48 +00:00
riastradh
dadf58c832 It's __ARM_NEON, not __ARM_NEON__, sometimes, apparently. 2020-07-27 20:59:53 +00:00
riastradh
f7b532dd9f Enable ChaCha NEON code on armv7 too.
The 4-blocks-at-a-time assembly helper is disabled for now; adapting
it to armv7 is going to be a little annoying with only 16 128-bit
vector registers.

(Should also do a fifth block in the integer registers for 320 bytes
at a time.)
2020-07-27 20:51:29 +00:00
riastradh
ed8eacd373 Sort includes. 2020-07-26 14:01:14 +00:00
martin
9c03d654a9 Add missing include to fix the build on architectures w/o any special
accelerated AES implementation.
2020-07-26 12:43:27 +00:00
riastradh
59613b8a1a Add kernel ChaCha test to exercise all available implementations. 2020-07-25 22:53:38 +00:00
riastradh
36d44afd5a Implement AES-CCM with ARMv8.5-AES. 2020-07-25 22:33:04 +00:00
riastradh
341c574011 Pass the requisite -msse options for i386. 2020-07-01 09:58:29 +00:00
riastradh
bd9707e06e New test sys/crypto/aes/t_aes.
Runs aes_selftest on all kernel AES implementations supported on the
current hardware, not just the preferred one.
2020-06-30 20:32:10 +00:00
fox
4bfe81d9d9 Fixed issues with uvm_page_physunload_delete_end test case.
1. "avail_start" and "start" were different, resulting in unreachable code in
uvm_page_physunload(), where the condition check "avail_start" < "end" fails.
The test has been fixed by setting "avail_start" and "start" to the same value.

2. If "start" is the address with end address being "start + 2", we can
unplug twice, the first paddr_t would be "start" and the second one would be
"start + 1". Modified the ATF_CHECK_EQ() to reflect these changes.

Reviewed by <cherry>
2019-01-16 13:54:17 +00:00
fox
66ea64ecd5 Fixed issues with uvm_physseg_atboot_free_leak test case.
"\n" in ATF discriptions make it behave in weird ways, like saying "this
test is bogus.", fixed the issue by removing the "\n".

Reviewed by <cherry>
2019-01-16 13:45:29 +00:00
fox
ff43743a55 Fixed issues with uvm_physseg_plug test case.
There is a condition check which failed for VM_PHYSSEG_MAX == 2 (not for
1 or 3 and above), in case of 2, pgs == slab + npages1 + npages3, so we
need to change ">" check to ">=" check.

Reviewed by <cherry>
2019-01-16 13:35:51 +00:00
fox
497a8f2bfd Fixed the build failures caused by incompatible type comparisons when
VM_PHYSSEG is > 1.

Reviewed by <cherry>
2019-01-16 13:21:02 +00:00
fox
a85205fc7c Fixed the build failures caused by incompatible type comparisons.
Reviewed by <cherry>
2018-12-18 07:11:35 +00:00
dholland
32cded6cc9 Typos. 2018-02-08 09:05:16 +00:00
cherry
e6ff351e1a convention about function names for predicate checking:
s/uvm_physseg_valid()/uvm_physseg_valid_p()/

per. matt@
2016-12-22 08:15:20 +00:00
cherry
07acf3c096 This is a preview of the uvm_hotplug(9) api code.
This commit does not actually introduce the UVM_HOTPLUG option.
However it does provide developers a way to review, test and try out
the API.

To do this, please go to tests/sys/uvm/ and build and run the tests
there. The tests also have a set of basic load tests, to get a measure
of the performance penalties due to enabling the UVM_HOTPLUG option.

In order to build the tests you need to have at least done the
following in $SRC/

cd $SRC; $NBMAKE do-distrib-dirs includes
cd $SRC/lib/csu; $NBMAKE all install || exit
cd $SRC/external/gpl3/gcc/lib/libgcc/libgcc_s; $NBMAKE all install || exit
cd $SRC/external/gpl3/gcc/lib/libgcc/libgcc; $NBMAKE all install || exit
cd $SRC/lib/libc; $NBMAKE includes all install || exit
cd $SRC/lib/libpthread; $NBMAKE all install || exit
cd $SRC/lib/libm; $NBMAKE all install || exit
cd $SRC/external/gpl3/gcc/lib/libstdc++-v3/; $NBMAKE all install || exit

Once the development environment has these userspace libraries, one
can simple build using $NBMAKE and finally test the kernel API using

atf-run|atf-report
2016-12-19 12:21:29 +00:00
christos
4b0d182541 catch up with link printing. 2016-08-27 11:30:49 +00:00
christos
1369c74b97 Add casts for big endian machines 2014-12-03 13:10:49 +00:00
ozaki-r
279c636338 Fix TESTSDIR 2014-12-03 08:14:26 +00:00
christos
d36c52e73e tests for network address printers. 2014-12-02 19:48:21 +00:00
jmmv
decf2b5e0f Adjusts tests after import of atf-0.12:
- The use.fs property is gone.
- Mark the tests/fs/t_create:attrs test as broken when using the default
  unprivileged-user:_atf setting.  This probably deserves a fix somehow
  but I'm not sure at this point.
2010-11-07 17:51:16 +00:00
jmmv
9d0b4b5bb8 Get rid of static Atffiles and let bsd.test.mk generate them on the fly. 2010-07-13 21:13:21 +00:00
jmmv
6b84fb92ac atf-0.9 introduces an use.fs test-case property to allow tests to write to
their work directory.  The purpose is to be able to know which tests intend
to touch the file system and to allow a minor optimization in atf-run.

Define use.fs=true for all those tests requiring it.  (This highlights that
some tests currently require modifying the file system but conceptually
they shouldn't be... which leaves room for further improvements/cleanups
later :-)
2010-06-04 08:39:40 +00:00
jmmv
0c7618681c Fix execution of the installed tests by using h_{simple,args} as program
names, without the .sh extension.
2010-05-04 09:33:57 +00:00
jmmv
2c2857e920 Add some basic tests for rc.d scripts to validate the execution of
subcommands and the optional argument passing to them from the command
line.

Triggered by the modification of the run_rc_command function in rc.subr
to allow passing in extra parameters to the commands defined in rc.d
scripts.
2010-03-15 19:03:08 +00:00