|
@@ -67,13 +67,10 @@ void qat_crypto_put_instance(struct qat_crypto_instance *inst)
|
|
|
|
|
|
static int qat_crypto_free_instances(struct adf_accel_dev *accel_dev)
|
|
|
{
|
|
|
- struct qat_crypto_instance *inst;
|
|
|
- struct list_head *list_ptr, *tmp;
|
|
|
+ struct qat_crypto_instance *inst, *tmp;
|
|
|
int i;
|
|
|
|
|
|
- list_for_each_safe(list_ptr, tmp, &accel_dev->crypto_list) {
|
|
|
- inst = list_entry(list_ptr, struct qat_crypto_instance, list);
|
|
|
-
|
|
|
+ list_for_each_entry_safe(inst, tmp, &accel_dev->crypto_list, list) {
|
|
|
for (i = 0; i < atomic_read(&inst->refctr); i++)
|
|
|
qat_crypto_put_instance(inst);
|
|
|
|
|
@@ -89,7 +86,7 @@ static int qat_crypto_free_instances(struct adf_accel_dev *accel_dev)
|
|
|
if (inst->pke_rx)
|
|
|
adf_remove_ring(inst->pke_rx);
|
|
|
|
|
|
- list_del(list_ptr);
|
|
|
+ list_del(&inst->list);
|
|
|
kfree(inst);
|
|
|
}
|
|
|
return 0;
|
|
@@ -97,17 +94,13 @@ static int qat_crypto_free_instances(struct adf_accel_dev *accel_dev)
|
|
|
|
|
|
struct qat_crypto_instance *qat_crypto_get_instance_node(int node)
|
|
|
{
|
|
|
- struct adf_accel_dev *accel_dev = NULL;
|
|
|
- struct qat_crypto_instance *inst = NULL;
|
|
|
- struct list_head *itr;
|
|
|
+ struct adf_accel_dev *accel_dev = NULL, *tmp_dev;
|
|
|
+ struct qat_crypto_instance *inst = NULL, *tmp_inst;
|
|
|
unsigned long best = ~0;
|
|
|
|
|
|
- list_for_each(itr, adf_devmgr_get_head()) {
|
|
|
- struct adf_accel_dev *tmp_dev;
|
|
|
+ list_for_each_entry(tmp_dev, adf_devmgr_get_head(), list) {
|
|
|
unsigned long ctr;
|
|
|
|
|
|
- tmp_dev = list_entry(itr, struct adf_accel_dev, list);
|
|
|
-
|
|
|
if ((node == dev_to_node(&GET_DEV(tmp_dev)) ||
|
|
|
dev_to_node(&GET_DEV(tmp_dev)) < 0) &&
|
|
|
adf_dev_started(tmp_dev) &&
|
|
@@ -123,10 +116,7 @@ struct qat_crypto_instance *qat_crypto_get_instance_node(int node)
|
|
|
if (!accel_dev) {
|
|
|
pr_info("QAT: Could not find a device on node %d\n", node);
|
|
|
/* Get any started device */
|
|
|
- list_for_each(itr, adf_devmgr_get_head()) {
|
|
|
- struct adf_accel_dev *tmp_dev;
|
|
|
-
|
|
|
- tmp_dev = list_entry(itr, struct adf_accel_dev, list);
|
|
|
+ list_for_each_entry(tmp_dev, adf_devmgr_get_head(), list) {
|
|
|
if (adf_dev_started(tmp_dev) &&
|
|
|
!list_empty(&tmp_dev->crypto_list)) {
|
|
|
accel_dev = tmp_dev;
|
|
@@ -139,11 +129,9 @@ struct qat_crypto_instance *qat_crypto_get_instance_node(int node)
|
|
|
return NULL;
|
|
|
|
|
|
best = ~0;
|
|
|
- list_for_each(itr, &accel_dev->crypto_list) {
|
|
|
- struct qat_crypto_instance *tmp_inst;
|
|
|
+ list_for_each_entry(tmp_inst, &accel_dev->crypto_list, list) {
|
|
|
unsigned long ctr;
|
|
|
|
|
|
- tmp_inst = list_entry(itr, struct qat_crypto_instance, list);
|
|
|
ctr = atomic_read(&tmp_inst->refctr);
|
|
|
if (best > ctr) {
|
|
|
inst = tmp_inst;
|