1 /* 2 * Workqueue for crypto subsystem 3 * 4 * Copyright (c) 2009 Intel Corp. 5 * Author: Huang Ying <ying.huang@intel.com> 6 * 7 * This program is free software; you can redistribute it and/or modify it 8 * under the terms of the GNU General Public License as published by the Free 9 * Software Foundation; either version 2 of the License, or (at your option) 10 * any later version. 11 * 12 */ 13 14 #include <linux/workqueue.h> 15 #include <linux/module.h> 16 #include <crypto/algapi.h> 17 #include <crypto/crypto_wq.h> 18 19 struct workqueue_struct *kcrypto_wq; 20 EXPORT_SYMBOL_GPL(kcrypto_wq); 21 crypto_wq_init(void)22static int __init crypto_wq_init(void) 23 { 24 kcrypto_wq = alloc_workqueue("crypto", 25 WQ_MEM_RECLAIM | WQ_CPU_INTENSIVE, 1); 26 if (unlikely(!kcrypto_wq)) 27 return -ENOMEM; 28 return 0; 29 } 30 crypto_wq_exit(void)31static void __exit crypto_wq_exit(void) 32 { 33 destroy_workqueue(kcrypto_wq); 34 } 35 36 subsys_initcall(crypto_wq_init); 37 module_exit(crypto_wq_exit); 38 39 MODULE_LICENSE("GPL"); 40 MODULE_DESCRIPTION("Workqueue for crypto subsystem"); 41