Since packet alignment (pkt_align) is always a power of 2, it is safe to replace expensive divide with shift.
Signed-off-by: Stephen Hemminger <sthem...@microsoft.com> --- drivers/net/hyperv/netvsc.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/hyperv/netvsc.c b/drivers/net/hyperv/netvsc.c index d9bd1a2db4db..767ff20d659e 100644 --- a/drivers/net/hyperv/netvsc.c +++ b/drivers/net/hyperv/netvsc.c @@ -722,7 +722,7 @@ static u32 netvsc_copy_to_send_buf(struct netvsc_device *net_device, int i; u32 msg_size = 0; u32 padding = 0; - u32 remain = packet->total_data_buflen % net_device->pkt_align; + u32 remain = packet->total_data_buflen & (net_device->pkt_align - 1); u32 page_count = packet->cp_partial ? packet->rmsg_pgcnt : packet->page_buf_cnt; -- 2.11.0