Kees Cook
5d26a105b5
crypto: prefix module autoloading with "crypto-"
...
This prefixes all crypto module loading with "crypto-" so we never run
the risk of exposing module auto-loading to userspace via a crypto API,
as demonstrated by Mathias Krause:
https://lkml.org/lkml/2013/3/4/70
Signed-off-by: Kees Cook <keescook@chromium.org >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-11-24 22:43:57 +08:00
Struk, Tadeusz
aa408d6019
crypto: qat - Use memzero_explicit
...
Use the new memzero_explicit function to cleanup sensitive data.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-11-17 22:53:50 +08:00
Tadeusz Struk
a727c4b6e5
crypto: qat - Move BAR definitions to device specific module
...
Move PCI BARs definitions to device specific module where it belongs.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-11-06 23:14:59 +08:00
Bruce Allan
77ddaba02b
crypto: qat - misspelling typo - "reseting" should be "resetting"
...
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-10-24 22:52:26 +08:00
Bruce Allan
242b1598e6
crypto: qat - cleanup unnecessary break checkpatch warning
...
WARNING:UNNECESSARY_BREAK: break is not useful after a goto or return
#472 : FILE: drivers/crypto/qat/qat_common/qat_algs.c:472:
+ goto bad_key;
+ break;
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-10-24 22:49:39 +08:00
Bruce Allan
8c4cef464b
crypto: qat - fix bad unlock balance
...
The mutex table_lock is unlocked in two functions without first being locked.
Fix the functions to properly protect the accel_table with the table_lock.
Also, fix a spelling error in one of the function's header comment.
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-10-24 22:49:37 +08:00
Tadeusz Struk
09adc8789c
crypto: qat - Enforce valid numa configuration
...
In a system with NUMA configuration we want to enforce that the accelerator is
connected to a node with memory to avoid cross QPI memory transaction.
Otherwise there is no point in using the accelerator as the encryption in
software will be faster.
Cc: stable@vger.kernel.org
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Tested-by: Nikolay Aleksandrov <nikolay@redhat.com >
Reviewed-by: Prarit Bhargava <prarit@redhat.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-10-24 22:37:36 +08:00
Tadeusz Struk
923a6e5e5f
crypto: qat - Prevent dma mapping zero length assoc data
...
Do not attempt to dma map associated data if it is zero length.
Cc: stable@vger.kernel.org
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Tested-by: Nikolay Aleksandrov <nikolay@redhat.com >
Reviewed-by: Prarit Bhargava <prarit@redhat.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-10-24 22:37:33 +08:00
Behan Webster
37e5265437
crypto: LLVMLinux: Remove VLAIS from crypto/.../qat_algs.c
...
Replaced the use of a Variable Length Array In Struct (VLAIS) with a C99
compliant equivalent. This patch allocates the appropriate amount of memory
using a char array using the SHASH_DESC_ON_STACK macro.
The new code can be compiled with both gcc and clang.
Signed-off-by: Behan Webster <behanw@converseincode.com >
Reviewed-by: Mark Charlebois <charlebm@gmail.com >
Reviewed-by: Jan-Simon Möller <dl9pf@gmx.de >
Acked-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-10-14 10:51:23 +02:00
Linus Torvalds
87d7bcee4f
Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6
...
Pull crypto update from Herbert Xu:
- add multibuffer infrastructure (single_task_running scheduler helper,
OKed by Peter on lkml.
- add SHA1 multibuffer implementation for AVX2.
- reenable "by8" AVX CTR optimisation after fixing counter overflow.
- add APM X-Gene SoC RNG support.
- SHA256/SHA512 now handles unaligned input correctly.
- set lz4 decompressed length correctly.
- fix algif socket buffer allocation failure for 64K page machines.
- misc fixes
* git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (47 commits)
crypto: sha - Handle unaligned input data in generic sha256 and sha512.
Revert "crypto: aesni - disable "by8" AVX CTR optimization"
crypto: aesni - remove unused defines in "by8" variant
crypto: aesni - fix counter overflow handling in "by8" variant
hwrng: printk replacement
crypto: qat - Removed unneeded partial state
crypto: qat - Fix typo in name of tasklet_struct
crypto: caam - Dynamic allocation of addresses for various memory blocks in CAAM.
crypto: mcryptd - Fix typos in CRYPTO_MCRYPTD description
crypto: algif - avoid excessive use of socket buffer in skcipher
arm64: dts: add random number generator dts node to APM X-Gene platform.
Documentation: rng: Add X-Gene SoC RNG driver documentation
hwrng: xgene - add support for APM X-Gene SoC RNG support
crypto: mv_cesa - Add missing #define
crypto: testmgr - add test for lz4 and lz4hc
crypto: lz4,lz4hc - fix decompression
crypto: qat - Use pci_enable_msix_exact() instead of pci_enable_msix()
crypto: drbg - fix maximum value checks on 32 bit systems
crypto: drbg - fix sparse warning for cpu_to_be[32|64]
crypto: sha-mb - sha1_mb_alg_state can be static
...
2014-10-08 06:44:48 -04:00
Tadeusz Struk
26c3af6c15
crypto: qat - Removed unneeded partial state
...
Removed additional bufer for HW state for partial requests, which are not going
to be supported.
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-09-24 14:01:26 +08:00
Tadeusz Struk
7752759d95
crypto: qat - Fix typo in name of tasklet_struct
...
Fix typo. resp_hanlder should be resp_handler
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-09-24 14:01:26 +08:00
Masanari Iida
1a84db567a
treewide: fix errors in printk
...
This patch fix spelling typo in printk.
Signed-off-by: Masanari Iida <standby24x7@gmail.com >
Acked-by: Geert Uytterhoeven <geert@linux-m68k.org >
Acked-by: Randy Dunlap <rdunlap@infradead.org >
Signed-off-by: Jiri Kosina <jkosina@suse.cz >
2014-09-01 11:18:25 +02:00
Wei Yongjun
65fafbe9bd
crypto: qat - Fix return value check in adf_chr_drv_create()
...
In case of error, the function device_create() returns ERR_PTR()
and never returns NULL. The NULL test in the return value check
should be replaced with IS_ERR().
Signed-off-by: Wei Yongjun <yongjun_wei@trendmicro.com.cn >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-25 20:34:04 +08:00
Tadeusz Struk
4f74c3989b
crypto: qat - Fixed SKU1 dev issue
...
Fix for issue with SKU1 device.
SKU1 device has 8 micro engines as opposed to 12 in other SKUs
so it was not possible to start the non-existing micro engines.
Signed-off-by: Bo Cui <bo.cui@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:10 +08:00
Tadeusz Struk
d9a44abf3a
crypto: qat - Use hweight for bit counting
...
Use predefined hweight32 function instead of writing a new one.
Signed-off-by: Pingchao Yang <pingchao.yang@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:08 +08:00
Tadeusz Struk
689917211c
crypto: qat - Updated print outputs
...
Updated pr_err output to make it more consistent.
Signed-off-by: Pingchao Yang <pingchao.yang@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:08 +08:00
Tadeusz Struk
9a147cb323
crypto: qat - change ae_num to ae_id
...
Change the logic how acceleration engines are indexed to make it
easier to read. Aslo some return code values updates to better reflect
what failed.
Signed-off-by: Pingchao Yang <pingchao.yang@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:06 +08:00
Tadeusz Struk
8c1f8e3bbf
crypto: qat - change slice->regions to slice->region
...
Change ptr name slice->regions to slice->region to reflect the same
in the page struct.
Signed-off-by: Pingchao Yang <pingchao.yang@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:06 +08:00
Tadeusz Struk
df0088f507
crypto: qat - use min_t macro
...
prefer min_t() macro over two open-coded logical tests
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:04 +08:00
Tadeusz Struk
45cff26080
crypto: qat - remove unnecessary parentheses
...
Resolve new strict checkpatch hits
CHECK:UNNECESSARY_PARENTHESES: Unnecessary parentheses around ...
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:03 +08:00
Tadeusz Struk
a7d217617b
crypto: qat - remove unneeded header
...
Remove include of a no longer necessary header file.
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:02 +08:00
Tadeusz Struk
53275baa03
crypto: qat - checkpatch blank lines
...
Fix new checkpatch hits:
CHECK:LINE_SPACING: Please use a blank line after
function/struct/union/enum declarations
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:01 +08:00
Tadeusz Struk
341b2a3541
crypto: qat - remove unnecessary return codes
...
Remove unnecessary return code variables and change function types
accordingly.
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-08-01 22:36:00 +08:00
Dan Carpenter
ac1a2b49ea
crypto: qat - remove an unneeded cast
...
The cast to (unsigned int *) doesn't hurt anything but it is pointless.
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-07-10 16:50:36 +08:00
Tadeusz Struk
8f312d64b5
crypto: qat - Fix error path crash when no firmware is present
...
Firmware loader crashes when no firmware file is present.
Reviewed-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-26 14:49:46 +08:00
Tadeusz Struk
d65071ecde
crypto: qat - Fixed new checkpatch warnings
...
After updates to checkpatch new warnings pops up this patch fixes them.
Signed-off-by: Bruce Allan <bruce.w.allan@intel.com >
Acked-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-26 14:49:43 +08:00
Tadeusz Struk
bce3cc61d3
crypto: qat - Fix random config build warnings
...
Fix random config build warnings:
Implicit-function-declaration ‘__raw_writel’
Cast to pointer from integer of different size [-Wint-to-pointer-cast]
Reviewed-by: Bruce Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-26 14:49:29 +08:00
Tadeusz Struk
b3416fb8a2
crypto: qat - Intel(R) QAT accelengine part of fw loader
...
This patch adds acceleration engine handler part the firmware loader.
Acked-by: Bo Cui <bo.cui@intel.com >
Reviewed-by: Bruce W. Allan <bruce.w.allan@intel.com >
Signed-off-by: Karen Xiang <karen.xiang@intel.com >
Signed-off-by: Pingchaox Yang <pingchaox.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-20 21:26:17 +08:00
Tadeusz Struk
b4b7e67c91
crypto: qat - Intel(R) QAT ucode part of fw loader
...
This patch adds microcode part of the firmware loader.
v4 - splits FW loader part into two smaller patches.
Acked-by: Bo Cui <bo.cui@intel.com >
Reviewed-by: Bruce W. Allan <bruce.w.allan@intel.com >
Signed-off-by: Karen Xiang <karen.xiang@intel.com >
Signed-off-by: Pingchaox Yang <pingchaox.yang@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-20 21:26:16 +08:00
Tadeusz Struk
d370cec321
crypto: qat - Intel(R) QAT crypto interface
...
This patch adds qat crypto interface.
Acked-by: John Griffin <john.griffin@intel.com >
Reviewed-by: Bruce W. Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-20 21:26:16 +08:00
Tadeusz Struk
38154e65ce
crypto: qat - Intel(R) QAT FW interface
...
This patch adds FW interface structure definitions.
Acked-by: John Griffin <john.griffin@intel.com >
Reviewed-by: Bruce W. Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-20 21:26:16 +08:00
Tadeusz Struk
a672a9dc87
crypto: qat - Intel(R) QAT transport code
...
This patch adds a code that implements communication channel between the
driver and the firmware.
Acked-by: John Griffin <john.griffin@intel.com >
Reviewed-by: Bruce W. Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-20 21:26:15 +08:00
Tadeusz Struk
d8cba25d2c
crypto: qat - Intel(R) QAT driver framework
...
This patch adds a common infractructure that will be used by all Intel(R)
QuickAssist Technology (QAT) devices.
v2 - added ./drivers/crypto/qat/Kconfig and ./drivers/crypto/qat/Makefile
v4 - splits common part into more, smaller patches
Acked-by: John Griffin <john.griffin@intel.com >
Reviewed-by: Bruce W. Allan <bruce.w.allan@intel.com >
Signed-off-by: Tadeusz Struk <tadeusz.struk@intel.com >
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au >
2014-06-20 21:26:15 +08:00