2019-10-25 19:26:36

by Yunfeng Ye

[permalink] [raw]
Subject: [PATCH] crypto: qat - remove redundant condition accel_dev->is_vf

Warning is found by the code analysis tool:
"Redundant condition: accel_dev->is_vf"

So remove the redundant condition accel_dev->is_vf.

Signed-off-by: Yunfeng Ye <[email protected]>
---
drivers/crypto/qat/qat_common/adf_dev_mgr.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/crypto/qat/qat_common/adf_dev_mgr.c b/drivers/crypto/qat/qat_common/adf_dev_mgr.c
index 2d06409bd3c4..b54b8850fe20 100644
--- a/drivers/crypto/qat/qat_common/adf_dev_mgr.c
+++ b/drivers/crypto/qat/qat_common/adf_dev_mgr.c
@@ -196,7 +196,7 @@ int adf_devmgr_add_dev(struct adf_accel_dev *accel_dev,
atomic_set(&accel_dev->ref_count, 0);

/* PF on host or VF on guest */
- if (!accel_dev->is_vf || (accel_dev->is_vf && !pf)) {
+ if (!accel_dev->is_vf || !pf) {
struct vf_id_map *map;

list_for_each(itr, &accel_table) {
@@ -292,7 +292,7 @@ void adf_devmgr_rm_dev(struct adf_accel_dev *accel_dev,
struct adf_accel_dev *pf)
{
mutex_lock(&table_lock);
- if (!accel_dev->is_vf || (accel_dev->is_vf && !pf)) {
+ if (!accel_dev->is_vf || !pf) {
id_map[accel_dev->accel_id] = 0;
num_devices--;
} else if (accel_dev->is_vf && pf) {
--
2.7.4


2019-10-25 19:35:45

by Yunfeng Ye

[permalink] [raw]
Subject: Re: [PATCH] crypto: qat - remove redundant condition accel_dev->is_vf



On 2019/10/25 17:33, Ard Biesheuvel wrote:
> On Fri, 25 Oct 2019 at 09:24, Yunfeng Ye <[email protected]> wrote:
>>
>> Warning is found by the code analysis tool:
>> "Redundant condition: accel_dev->is_vf"
>>
>> So remove the redundant condition accel_dev->is_vf.
>>
>> Signed-off-by: Yunfeng Ye <[email protected]>
>> ---
>> drivers/crypto/qat/qat_common/adf_dev_mgr.c | 4 ++--
>> 1 file changed, 2 insertions(+), 2 deletions(-)
>>
>> diff --git a/drivers/crypto/qat/qat_common/adf_dev_mgr.c b/drivers/crypto/qat/qat_common/adf_dev_mgr.c
>> index 2d06409bd3c4..b54b8850fe20 100644
>> --- a/drivers/crypto/qat/qat_common/adf_dev_mgr.c
>> +++ b/drivers/crypto/qat/qat_common/adf_dev_mgr.c
>> @@ -196,7 +196,7 @@ int adf_devmgr_add_dev(struct adf_accel_dev *accel_dev,
>> atomic_set(&accel_dev->ref_count, 0);
>>
>> /* PF on host or VF on guest */
>> - if (!accel_dev->is_vf || (accel_dev->is_vf && !pf)) {
>> + if (!accel_dev->is_vf || !pf) {
>
> I disagree with this change. There is no bug here, and the way the
> condition is formulated self-documents the code, i.e.,
>
> IF NOT is_vf
> OR (is_vf BUT NOT pf)
>
> Using an automated tool to reduce every boolean expression to its
> minimal representation doesn't seem that useful to me, since the
> compiler is perfectly capable of doing that when generating the object
> code.
>
ok, thanks, this modify just fix warning, and make code simple.

>
>
>
>> struct vf_id_map *map;
>>
>> list_for_each(itr, &accel_table) {
>> @@ -292,7 +292,7 @@ void adf_devmgr_rm_dev(struct adf_accel_dev *accel_dev,
>> struct adf_accel_dev *pf)
>> {
>> mutex_lock(&table_lock);
>> - if (!accel_dev->is_vf || (accel_dev->is_vf && !pf)) {
>> + if (!accel_dev->is_vf || !pf) {
>> id_map[accel_dev->accel_id] = 0;
>> num_devices--;
>> } else if (accel_dev->is_vf && pf) {
>> --
>> 2.7.4
>>
>
> .
>