diff options
author | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2010-07-07 19:33:33 +0200 |
---|---|---|
committer | Nikos Mavrogiannopoulos <nmav@gnutls.org> | 2010-07-07 19:33:33 +0200 |
commit | b673efed4a10dc31567b1c29b140b7910daeaf95 (patch) | |
tree | 9dbd383a19543719bf6f3e25b7c3259aa1f461f6 /cryptodev_main.c | |
parent | 4334f22638344873c4361f663be9d3dcad2b6bc4 (diff) | |
download | kernel-crypto-b673efed4a10dc31567b1c29b140b7910daeaf95.tar.gz kernel-crypto-b673efed4a10dc31567b1c29b140b7910daeaf95.tar.xz kernel-crypto-b673efed4a10dc31567b1c29b140b7910daeaf95.zip |
Public and private keys are being generated in a new workqueue. Some other fixes and optimizations.
Diffstat (limited to 'cryptodev_main.c')
-rw-r--r-- | cryptodev_main.c | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/cryptodev_main.c b/cryptodev_main.c index f99c71a305f..4cdb90dfdc4 100644 --- a/cryptodev_main.c +++ b/cryptodev_main.c @@ -780,10 +780,18 @@ cryptodev_register(void) ncr_limits_init(); ncr_master_key_reset(); + + rc = ncr_pk_queue_init(); + if (unlikely(rc)) { + ncr_limits_deinit(); + printk(KERN_ERR PFX "initialization of PK workqueue failed\n"); + return rc; + } rc = misc_register (&cryptodev); if (unlikely(rc)) { ncr_limits_deinit(); + ncr_pk_queue_deinit(); printk(KERN_ERR PFX "registration of /dev/crypto failed\n"); return rc; } @@ -796,10 +804,10 @@ cryptodev_deregister(void) { misc_deregister(&cryptodev); ncr_limits_deinit(); + ncr_pk_queue_deinit(); } /* ====== Module init/exit ====== */ - int __init init_cryptodev(void) { int rc; |