Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit f1acb878 authored by Roel Kluin's avatar Roel Kluin Committed by Dan Williams
Browse files

iop-adma: redundant/wrong tests in iop_*_count()?



When we reach the loop, len is at least 1, we only stay in the loop when
len is at least MAX_BYTE_COUNT + 1, MAX_BYTE_COUNT is subtracted in each
iteration. So when we leave the loop, or didn't take it, len is at least 1.
Testing whether len is non-zero appears redundant.

Signed-off-by: default avatarRoel Kluin <roel.kluin@gmail.com>
Signed-off-by: default avatarDan Williams <dan.j.williams@intel.com>
parent 67b9124f
Loading
Loading
Loading
Loading
+4 −8
Original line number Diff line number Diff line
@@ -366,7 +366,6 @@ static inline int iop_chan_xor_slot_count(size_t len, int src_cnt,
		slot_cnt += *slots_per_op;
	}

	if (len)
	slot_cnt += *slots_per_op;

	return slot_cnt;
@@ -389,7 +388,6 @@ static inline int iop_chan_zero_sum_slot_count(size_t len, int src_cnt,
		slot_cnt += *slots_per_op;
	}

	if (len)
	slot_cnt += *slots_per_op;

	return slot_cnt;
@@ -737,12 +735,10 @@ iop_desc_set_zero_sum_byte_count(struct iop_adma_desc_slot *desc, u32 len)
			i += slots_per_op;
		} while (len > IOP_ADMA_ZERO_SUM_MAX_BYTE_COUNT);

		if (len) {
		iter = iop_hw_desc_slot_idx(hw_desc, i);
		iter->byte_count = len;
	}
}
}

static inline void iop_desc_set_dest_addr(struct iop_adma_desc_slot *desc,
					struct iop_adma_chan *chan,