net/smc: don't req_notify until all CQEs drained
When we are handling softirq workload, enable hardirq may again interrupt the current routine of softirq, and then try to raise softirq again. This only wastes CPU cycles and won't have any real gain. Since IB_CQ_REPORT_MISSED_EVENTS already make sure if ib_req_notify_cq() returns 0, it is safe to wait for the next event, with no need to poll the CQ again in this case. This patch disables hardirq during the processing of softirq, and re-arm the CQ after softirq is done. Somehow like NAPI. Co-developed-by: NGuangguan Wang <guangguan.wang@linux.alibaba.com> Signed-off-by: NGuangguan Wang <guangguan.wang@linux.alibaba.com> Signed-off-by: NDust Li <dust.li@linux.alibaba.com> Signed-off-by: NDavid S. Miller <davem@davemloft.net>
Showing
想要评论请 注册 或 登录