Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | global: change BUG_ON to WARN_ON | Jason A. Donenfeld | 2018-10-02 | 2 | -18/+11 | |
| | | | | Suggested-by: Andrew Lunn <andrew@lunn.ch> | |||||
* | poly1305: document rationale for base 2^26->2^64/32 conversion | Jason A. Donenfeld | 2018-10-02 | 2 | -0/+20 | |
| | ||||||
* | crypto: use ZINC_ARCH macros | Jason A. Donenfeld | 2018-10-02 | 2 | -9/+9 | |
| | ||||||
* | chacha20: no need to align ctx | Jason A. Donenfeld | 2018-10-02 | 1 | -1/+1 | |
| | | | | | | We don't use vmovdqa any more. Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> | |||||
* | chacha20: split chacha20_ctx into union | Jason A. Donenfeld | 2018-10-02 | 5 | -45/+50 | |
| | | | | This avoids casts and makes counter increments obvious. | |||||
* | crypto: add missing static keyword to fpu init functions | Jason A. Donenfeld | 2018-10-02 | 4 | -4/+3 | |
| | ||||||
* | crypto: document what's used from <crypto/ beside #include | Jason A. Donenfeld | 2018-10-02 | 4 | -4/+3 | |
| | ||||||
* | crypto: WARN_ON in module_init if selftest fails | Jason A. Donenfeld | 2018-10-02 | 5 | -5/+5 | |
| | | | | | | | If it's a built-in and initcall fails, it won't be fatal. So we should at least be loud. Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> | |||||
* | poly1305-mips64: use compiler-defined macros in assembly | Jason A. Donenfeld | 2018-10-02 | 1 | -5/+10 | |
| | | | | | | | Andy and I agreed it's more correct to use the compiler-defined macros in assembly code, and not the project specific macros. Suggested-by: Andy Polyakov <appro@openssl.org> | |||||
* | blake2s: rename arch function and use slicker le32 helper | Jason A. Donenfeld | 2018-10-02 | 2 | -11/+8 | |
| | ||||||
* | blake2s: feed fpu functions PAGE_SIZE at a time | Jason A. Donenfeld | 2018-10-02 | 1 | -14/+28 | |
| | ||||||
* | poly1305: feed fpu functions PAGE_SIZE at a time | Jason A. Donenfeld | 2018-10-02 | 4 | -29/+49 | |
| | ||||||
* | chacha20: feed fpu functions PAGE_SIZE at a time | Jason A. Donenfeld | 2018-10-02 | 4 | -23/+54 | |
| | | | | Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> | |||||
* | chacha20: test multiple page span in selftest | Jason A. Donenfeld | 2018-10-02 | 2 | -3/+27 | |
| | ||||||
* | chacha20: break out of zero loops in selftest | Jason A. Donenfeld | 2018-10-02 | 1 | -0/+5 | |
| | ||||||
* | crypto: prefer IS_ENABLED to ifdefs | Jason A. Donenfeld | 2018-10-02 | 8 | -135/+73 | |
| | | | | Suggested-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> | |||||
* | crypto: ignore ARMv3 | Jason A. Donenfeld | 2018-10-02 | 1 | -1/+1 | |
| | ||||||
* | crypto: rename DEBUG to SELFTEST | Jason A. Donenfeld | 2018-09-25 | 11 | -59/+59 | |
| | | | | | Also we make selftest errors of type err, so that they're obvious in dmesg. | |||||
* | poly1305-arm: swap endianness in base 2^26 conversion | Jason A. Donenfeld | 2018-09-25 | 1 | -1/+5 | |
| | | | | | | | These are actually 32-bit limbs, so we have to swap them back after the 64-bit arithmetic. Also, change type of boolean for 64-bit. Suggested-by: Andy Polyakov <appro@openssl.org> | |||||
* | curve25519-arm: disable on big-endian | Jason A. Donenfeld | 2018-09-25 | 2 | -3/+3 | |
| | | | | | The qhasm was only written for little-endian systems, and we don't want disaster to ensue. | |||||
* | chacha20-arm,poly1305-arm: fix big-endian aarch64 | Jason A. Donenfeld | 2018-09-25 | 2 | -21/+21 | |
| | | | | Suggested-by: Andy Polyakov <appro@openssl.org> | |||||
* | curve25519: show all failures in test case | Jason A. Donenfeld | 2018-09-25 | 1 | -2/+0 | |
| | ||||||
* | curve25519-hacl64: reduce stack usage under KASAN | Jason A. Donenfeld | 2018-09-25 | 1 | -2/+1 | |
| | | | | Suggested-by: Arnd Bergmann <arnd@arndb.de> | |||||
* | chacha20: add bounds checking to selftests | Jason A. Donenfeld | 2018-09-25 | 1 | -1/+45 | |
| | ||||||
* | chacha20-mips32r2: reduce stack and branches in loop, refactor jumptable handling | René van Dorst | 2018-09-25 | 1 | -79/+94 | |
| | | | | Signed-off-by: René van Dorst <opensource@vdorst.com> | |||||
* | crypto: make constant naming scheme consistent | Jason A. Donenfeld | 2018-09-25 | 15 | -148/+148 | |
| | ||||||
* | hchacha20: keep in native endian in words | Jason A. Donenfeld | 2018-09-25 | 8 | -42/+46 | |
| | ||||||
* | chacha20-arm: remove unused preambles | Jason A. Donenfeld | 2018-09-24 | 2 | -30/+1 | |
| | ||||||
* | chacha20-arm: updated scalar code from Andy | Jason A. Donenfeld | 2018-09-23 | 1 | -310/+273 | |
| | ||||||
* | poly1305-mips64: remove useless preprocessor error | Jason A. Donenfeld | 2018-09-23 | 1 | -4/+0 | |
| | ||||||
* | crypto-arm: rework KERNEL_MODE_NEON handling again | Jason A. Donenfeld | 2018-09-23 | 8 | -27/+16 | |
| | ||||||
* | crypto: flatten out makefile | Jason A. Donenfeld | 2018-09-23 | 1 | -47/+33 | |
| | | | | This brings us more in line with the integration tree's style. | |||||
* | curve25519-fiat32: work around m68k compiler stack frame bug | Jason A. Donenfeld | 2018-09-23 | 1 | -6/+4 | |
| | | | | | | | The m68k compiler generates a 1032 byte stack frame. Moving these variables inside the loop fixes that. It also means we're not explicitly memzeroing it any more either, but hopefully that memory is reused anyway by the multiplications. | |||||
* | chacha20-arm: use new scalar implementation | Jason A. Donenfeld | 2018-09-23 | 2 | -569/+1208 | |
| | | | | | It turns out this is faster than NEON on some chips, so it's nice to have. | |||||
* | crypto-arm: rework KERNEL_MODE_NEON handling | Jason A. Donenfeld | 2018-09-23 | 2 | -9/+16 | |
| | | | | It might be defined even if the compiler doesn't support it. | |||||
* | global: reduce stack frame size | Jason A. Donenfeld | 2018-09-23 | 3 | -26/+36 | |
| | | | | This brings it under 1280 on 64-bit and under 1024 on 32-bit systems. | |||||
* | chacha20: add chunked selftest and test sliding alignments and hchacha20 | Jason A. Donenfeld | 2018-09-23 | 2 | -1160/+2467 | |
| | | | | | This ensures we're properly updating state[12] and that we're handling all unaligned acceses (in the jump tables for MIPS). | |||||
* | chacha20-mips32r2: reduce jumptable entry size and stack usage | René van Dorst | 2018-09-22 | 1 | -39/+48 | |
| | | | | Signed-off-by: René van Dorst <opensource@vdorst.com> | |||||
* | chacha20-mips32r2: use simpler calling convention | Jason A. Donenfeld | 2018-09-21 | 2 | -179/+143 | |
| | | | | | | | Since we now set up the block in the generic code, we can rely on that to use fewer variables and reduce stack pressure within the MIPS code. This in turn means we have more registers and more uniformity, so we're able to rewrite quite a bit. | |||||
* | chacha20-arm: go with Ard's version to optimize for Cortex-A7 | Jason A. Donenfeld | 2018-09-21 | 6 | -732/+599 | |
| | ||||||
* | chacha20-mips32r2: remove reorder directives | René van Dorst | 2018-09-21 | 2 | -107/+69 | |
| | | | | | | | | This requires some minimal rearranging to make work, but for the most part as does the right thing, provided we pass it an optimization flag. Suggested-by: Paul Burton <paul.burton@mips.com> Signed-off-by: René van Dorst <opensource@vdorst.com> | |||||
* | chacha20-mips32r2: fix typo to allow reorder again | René van Dorst | 2018-09-21 | 1 | -1/+1 | |
| | | | | | Reported-by: Paul Burton <paul.burton@mips.com> Signed-off-by: René van Dorst <opensource@vdorst.com> | |||||
* | poly1305-mips32r2: remove all reorder directives | René van Dorst | 2018-09-21 | 2 | -32/+23 | |
| | | | | | | | | This requires some minimal rearranging to make work, but for the most part as does the right thing, provided we pass it an optimization flag. Suggested-by: Paul Burton <paul.burton@mips.com> Signed-off-by: René van Dorst <opensource@vdorst.com> | |||||
* | global: put SPDX identifier on its own line | Jason A. Donenfeld | 2018-09-20 | 41 | -82/+82 | |
| | | | | | The kernel has very specific rules correlating file type with comment type, and also SPDX identifiers can't be merged with other comments. | |||||
* | crypto: do not waste space on selftest items | Jason A. Donenfeld | 2018-09-20 | 3 | -9458/+10993 | |
| | | | | | | This unfortunately means we have to define symbols, since we want them in __initconst, but it's better than the other two options (no initconst or wasting space for fixed size buffers). | |||||
* | crypto: explicitly dual license | Jason A. Donenfeld | 2018-09-20 | 41 | -41/+41 | |
| | | | | Suggested-by: Thomas Gleixner <tglx@linutronix.de> | |||||
* | poly1305: account for simd being toggled off midway | Jason A. Donenfeld | 2018-09-20 | 3 | -26/+131 | |
| | | | | | | This is a very rare occurance, but we should account for it, so that the calculations aren't wrong. Here we convert from base 2^26 back to base 2^64. | |||||
* | chacha20: prefer crypto_xor_cpy to avoid memmove | Jason A. Donenfeld | 2018-09-20 | 1 | -5/+3 | |
| | | | | Suggested-by: Eric Biggers <ebiggers@kernel.org> | |||||
* | poly1305: no need to trick gcc 8.1 | Jason A. Donenfeld | 2018-09-19 | 1 | -2/+2 | |
| | | | | | | | This reverts 37f114a73ba37219b00a66f0a51219a696599745, since gcc 8.2 no longer exhibits that bug. Suggested-by: Eric Biggers <ebiggers@kernel.org> | |||||
* | blake2s: simplify final function | Jason A. Donenfeld | 2018-09-19 | 2 | -40/+9 | |
| | | | | Suggested-by: Eric Biggers <ebiggers@kernel.org> |