Merge tag 'writeback-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg...
[firefly-linux-kernel-4.4.55.git] / drivers / crypto / ixp4xx_crypto.c
index 4c20c5bf605832a2e2e801396e1c331d566e0aaa..0053d7ebb5cae0a479eacf0d22c69606509644ea 100644 (file)
@@ -265,7 +265,7 @@ static int setup_crypt_desc(void)
        BUILD_BUG_ON(sizeof(struct crypt_ctl) != 64);
        crypt_virt = dma_alloc_coherent(dev,
                        NPE_QLEN * sizeof(struct crypt_ctl),
-                       &crypt_phys, GFP_KERNEL);
+                       &crypt_phys, GFP_ATOMIC);
        if (!crypt_virt)
                return -ENOMEM;
        memset(crypt_virt, 0, NPE_QLEN * sizeof(struct crypt_ctl));
@@ -1449,6 +1449,7 @@ static int __init ixp_module_init(void)
                        /* block ciphers */
                        cra->cra_type = &crypto_ablkcipher_type;
                        cra->cra_flags = CRYPTO_ALG_TYPE_ABLKCIPHER |
+                                        CRYPTO_ALG_KERN_DRIVER_ONLY |
                                         CRYPTO_ALG_ASYNC;
                        if (!cra->cra_ablkcipher.setkey)
                                cra->cra_ablkcipher.setkey = ablk_setkey;
@@ -1461,6 +1462,7 @@ static int __init ixp_module_init(void)
                        /* authenc */
                        cra->cra_type = &crypto_aead_type;
                        cra->cra_flags = CRYPTO_ALG_TYPE_AEAD |
+                                        CRYPTO_ALG_KERN_DRIVER_ONLY |
                                         CRYPTO_ALG_ASYNC;
                        cra->cra_aead.setkey = aead_setkey;
                        cra->cra_aead.setauthsize = aead_setauthsize;