Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1652289

[PATCH v2 00/11] introduce crypto wait for async op

Path csiph.com!news.mixmin.net!news.unit0.net!news.panservice.it!bofh.it!news.nic.it!robomod
From Gilad Ben-Yossef <gilad@benyossef.com>
Newsgroups linux.kernel
Subject [PATCH v2 00/11] introduce crypto wait for async op
Date Mon, 29 May 2017 10:30:02 +0200
Message-ID <tModP-5Cf-5@gated-at.bofh.it> (permalink)
X-Mailer git-send-email 2.1.4
Sender robomod@news.nic.it
List-ID <linux-kernel.vger.kernel.org>
X-Mailing-List linux-kernel@vger.kernel.org
Approved robomod@news.nic.it
Lines 65
Organization linux.* mail to news gateway
X-Original-Cc Eric Biggers <ebiggers3@gmail.com>, Ofir Drang <ofir.drang@arm.com>, Pavel Shilovsky <pshilov@microsoft.com>, linux-crypto@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, keyrings@vger.kernel.org, linux-raid@vger.kernel.org, linux-cifs@vger.kernel.org, samba-technical@lists.samba.org, linux-fscrypt@vger.kernel.org, linux-ima-devel@lists.sourceforge.net, linux-ima-user@lists.sourceforge.net, linux-security-module@vger.kernel.org
X-Original-Date Mon, 29 May 2017 11:22:47 +0300
X-Original-Message-ID <1496046180-21962-1-git-send-email-gilad@benyossef.com>
X-Original-Sender linux-kernel-owner@vger.kernel.org
Xref csiph.com linux.kernel:1652289

Show key headers only | View raw


Many users of kernel async. crypto services have a pattern of
starting an async. crypto op and than using a completion
to wait for it to end, resulting of the same code repeating
itself in multiple places, sometime with coding errors.

This patch aims to introduce a generic "wait for async.
crypto op to complete" functions and move all the users
I could find to use it.  This gets rid of almost 300
lines of code and uncovered a few bugs in existing code
(separate bug fix patch set sent previously).

The patch set was boot tested on x86_64 and arm64 which
at the very least tests the crypto users via testmgr
but I am less confident regarding some of the other
users and would love more testers.
 
Changes from v1:
- Address review comments from Eric Biggers.
- Separated out bug fixes of existing code and rebase
  on top of that patch set.
- Rename 'ecr' to 'wait' in fscrypto code.
- Split patch introducing the new API from the change
  moving over the algif code which it originated from
  to the new API.
- Inline crypto_wait_req().
- Some code indentation fixes.

Gilad Ben-Yossef (11):
  crypto: introduce crypto wait for async op
  crypto: move algif to generic async completion
  crypto: move pub key to generic async completion
  crypto: move drbg to generic async completion
  crypto: move gcm to generic async completion
  crypto: move testmgr to generic async completion
  dm: move dm-verity to generic async completion
  fscrypt: move to generic async completion
  cifs: move to generic async completion
  ima: move to generic async completion
  crypto: adapt api sample to use async. op wait

 Documentation/crypto/api-samples.rst |  52 ++--------
 crypto/af_alg.c                      |  27 -----
 crypto/algif_aead.c                  |  14 +--
 crypto/algif_hash.c                  |  29 +++---
 crypto/algif_skcipher.c              |  15 ++-
 crypto/api.c                         |  13 +++
 crypto/asymmetric_keys/public_key.c  |  28 +-----
 crypto/drbg.c                        |  34 ++-----
 crypto/gcm.c                         |  32 ++----
 crypto/testmgr.c                     | 184 +++++++++++------------------------
 drivers/md/dm-verity-target.c        |  81 ++++-----------
 drivers/md/dm-verity.h               |   5 -
 fs/cifs/smb2ops.c                    |  30 +-----
 fs/crypto/crypto.c                   |  28 +-----
 fs/crypto/fname.c                    |  36 ++-----
 fs/crypto/fscrypt_private.h          |  10 --
 fs/crypto/keyinfo.c                  |  21 +---
 include/crypto/drbg.h                |   3 +-
 include/crypto/if_alg.h              |  14 ---
 include/linux/crypto.h               |  41 ++++++++
 security/integrity/ima/ima_crypto.c  |  56 ++++-------
 21 files changed, 220 insertions(+), 533 deletions(-)

-- 
2.1.4

Back to linux.kernel | Previous | NextNext in thread | Find similar | Unroll thread


Thread

[PATCH v2 00/11] introduce crypto wait for async op Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200
  [PATCH v2 04/11] crypto: move drbg to generic async completion Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200
  [PATCH v2 02/11] crypto: move algif to generic async completion Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200
  [PATCH v2 05/11] crypto: move gcm to generic async completion Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200
  [PATCH v2 10/11] ima: move to generic async completion Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200
  [PATCH v2 07/11] dm: move dm-verity to generic async completion Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200
  [PATCH v2 08/11] fscrypt: move to generic async completion Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200
  [PATCH v2 09/11] cifs: move to generic async completion Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200
  [PATCH v2 01/11] crypto: introduce crypto wait for async op Gilad Ben-Yossef <gilad@benyossef.com> - 2017-05-29 10:30 +0200

csiph-web