Commit 249e7e0f authored by Ian Jackson's avatar Ian Jackson Committed by Stefano Stabellini
Browse files

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: default avatarStefano Stabellini <stefano.stabellini@eu.citrix.com>
Cc: Dongxiao Xu <dongxiao.xu@intel.com>
Cc: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: default avatarIan Jackson <ian.jackson@eu.citrix.com>
parent a3864829
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -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) {