rds: ib: force endiannes annotation
While the endiannes is being handled correctly as indicated by the comment above the offending line - sparse was unhappy with the missing annotation as be64_to_cpu() expects a __be64 argument. To mitigate this annotation all involved variables are changed to a consistent __le64 and the conversion to uint64_t delayed to the call to rds_cong_map_updated(). Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org> Acked-by: Santosh Shilimkar <santosh.shilimkar@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
committed by
David S. Miller
parent
f68d7c44e7
commit
f3505745c0
@@ -772,7 +772,7 @@ static void rds_ib_cong_recv(struct rds_connection *conn,
|
|||||||
unsigned long frag_off;
|
unsigned long frag_off;
|
||||||
unsigned long to_copy;
|
unsigned long to_copy;
|
||||||
unsigned long copied;
|
unsigned long copied;
|
||||||
uint64_t uncongested = 0;
|
__le64 uncongested = 0;
|
||||||
void *addr;
|
void *addr;
|
||||||
|
|
||||||
/* catch completely corrupt packets */
|
/* catch completely corrupt packets */
|
||||||
@@ -789,7 +789,7 @@ static void rds_ib_cong_recv(struct rds_connection *conn,
|
|||||||
copied = 0;
|
copied = 0;
|
||||||
|
|
||||||
while (copied < RDS_CONG_MAP_BYTES) {
|
while (copied < RDS_CONG_MAP_BYTES) {
|
||||||
uint64_t *src, *dst;
|
__le64 *src, *dst;
|
||||||
unsigned int k;
|
unsigned int k;
|
||||||
|
|
||||||
to_copy = min(RDS_FRAG_SIZE - frag_off, PAGE_SIZE - map_off);
|
to_copy = min(RDS_FRAG_SIZE - frag_off, PAGE_SIZE - map_off);
|
||||||
@@ -824,9 +824,7 @@ static void rds_ib_cong_recv(struct rds_connection *conn,
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* the congestion map is in little endian order */
|
/* the congestion map is in little endian order */
|
||||||
uncongested = le64_to_cpu(uncongested);
|
rds_cong_map_updated(map, le64_to_cpu(uncongested));
|
||||||
|
|
||||||
rds_cong_map_updated(map, uncongested);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void rds_ib_process_recv(struct rds_connection *conn,
|
static void rds_ib_process_recv(struct rds_connection *conn,
|
||||||
|
|||||||
Reference in New Issue
Block a user