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 19struct workqueue_struct *kcrypto_wq; 20EXPORT_SYMBOL_GPL(kcrypto_wq); 21 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 31static void __exit crypto_wq_exit(void) 32{ 33 destroy_workqueue(kcrypto_wq); 34} 35 36subsys_initcall(crypto_wq_init); 37module_exit(crypto_wq_exit); 38 39MODULE_LICENSE("GPL"); 40MODULE_DESCRIPTION("Workqueue for crypto subsystem"); 41