+void __qla_adjust_buf(struct qla_qpair *qp) +{ + u32 trim; + + qp->buf_pool.take_snapshot = 0; + qp->buf_pool.prev_max = qp->buf_pool.max_used; + qp->buf_pool.max_used = qp->buf_pool.num_active; + + if (qp->buf_pool.prev_max > qp->buf_pool.max_used && You are assigning qp->buf_pool.prev_max with the value from qp->buf_pool.max_used a couple of lines above to max_used ... . This check looks incorrect because now the value for buf_pool.prev_max will be the same as buf_pool.max_used. Am I missing something? QT: Thanks for the review. The 'qp->buf_pool.max_used = qp->buf_pool.num_active;' line seems to be overlooked. It changes max_used, where prev_max is not the same as max_used.