cpu_ioreq_pio, cpu_ioreq_move: i should be uint32_t rather than int

The current code compare i (int) with req->count (uint32_t) in a for
loop, risking an infinite loop if req->count is equal to UINT_MAX.

Also i is only used in comparisons or multiplications with unsigned
integers.

Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: Dongxiao Xu <dongxiao.xu@intel.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
master
Ian Jackson 2012-12-17 11:44:02 +00:00 committed by Stefano Stabellini
parent a38648290e
commit 249e7e0fff
1 changed files with 2 additions and 2 deletions

View File

@ -721,7 +721,7 @@ static inline void write_phys_req_item(hwaddr addr,
static void cpu_ioreq_pio(ioreq_t *req)
{
int i;
uint32_t i;
if (req->dir == IOREQ_READ) {
if (!req->data_is_ptr) {
@ -750,7 +750,7 @@ static void cpu_ioreq_pio(ioreq_t *req)
static void cpu_ioreq_move(ioreq_t *req)
{
int i;
uint32_t i;
if (!req->data_is_ptr) {
if (req->dir == IOREQ_READ) {