Fix a panic that may occur when there are more than 16
pools in a system:
qti_pools_add()) ASSERTION( qti->qti_pools_num >= QMT_MAX_POOL_NUM ) failed: Forgot init?
ffff91a5f9625800
HPE-bug-id: LUS-10116
Change-Id: I4f73b74d2fd3e85a51cf3c30e2eec29645f164be
Reviewed-by: Petros Koutoupis <pkoutoupis@cray.com>
Reviewed-by: Shaun Tancheff <stancheff@cray.com>
Tested-by: Elena Gryaznova <c17455@cray.com>
Signed-off-by: Sergey Cheremencev <sergey.cheremencev@hpe.com>
Reviewed-on: https://review.whamcloud.com/45105
Reviewed-by: Petros Koutoupis <petros.koutoupis@hpe.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
{
struct qmt_thread_info *qti = qmt_info(env);
- if (qti->qti_lqes_cnt > qti->qti_lqes_num) {
+ if (qti->qti_lqes_cnt >= qti->qti_lqes_num) {
struct lquota_entry **lqes;
lqes = qti->qti_lqes;
OBD_ALLOC(lqes, sizeof(lqe) * qti->qti_lqes_num * 2);
LASSERTF(qti->qti_pools_num >= QMT_MAX_POOL_NUM,
"Forgot init? %p\n", qti);
- if (qti->qti_pools_cnt > qti->qti_pools_num) {
+ if (qti->qti_pools_cnt >= qti->qti_pools_num) {
OBD_ALLOC(pools, sizeof(qpi) * qti->qti_pools_num * 2);
if (!pools)
return -ENOMEM;