lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 21 Oct 2022 15:56:26 +0300
From:   Dan Carpenter <dan.carpenter@...cle.com>
To:     kbuild@...ts.01.org, Paolo Valente <paolo.valente@...aro.org>,
        Jens Axboe <axboe@...nel.dk>
Cc:     lkp@...el.com, kbuild-all@...ts.01.org,
        linux-block@...r.kernel.org, linux-kernel@...r.kernel.org,
        glen.valante@...aro.org, arie.vanderhoeven@...gate.com,
        rory.c.chen@...gate.com, Paolo Valente <paolo.valente@...aro.org>,
        Gabriele Felici <felicigb@...il.com>,
        Carmine Zaccagnino <carmine@...minezacc.com>
Subject: [kbuild] Re: [PATCH V4 1/8] block, bfq: split sync bfq_queues on a
 per-actuator basis

Hi Paolo,

https://git-scm.com/docs/git-format-patch#_base_tree_information  ]

url:    https://github.com/intel-lab-lkp/linux/commits/Paolo-Valente/block-bfq-extend-bfq-to-support-multi-actuator-drives/20221020-233011  
base:   https://git.kernel.org/pub/scm/linux/kernel/git/axboe/linux-block.git   for-next
patch link:    https://lore.kernel.org/r/20221020152643.21199-2-paolo.valente%40linaro.org  
patch subject: [PATCH V4 1/8] block, bfq: split sync bfq_queues on a per-actuator basis
config: openrisc-randconfig-m041-20221019
compiler: or1k-linux-gcc (GCC) 12.1.0

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <lkp@...el.com>
| Reported-by: Dan Carpenter <dan.carpenter@...cle.com>

New smatch warnings:
block/bfq-iosched.c:5423 bfq_exit_icq() error: we previously assumed 'bfqd' could be null (see line 5420)
block/bfq-iosched.c:5431 bfq_exit_icq() warn: variable dereferenced before check 'bfqd' (see line 5423)

Old smatch warnings:
block/bfq-iosched.c:6115 __bfq_insert_request() warn: variable dereferenced before check 'bfqq' (see line 6111)

vim +/bfqd +5423 block/bfq-iosched.c

aee69d78dec0ff Paolo Valente 2017-04-19  5409  static void bfq_exit_icq(struct io_cq *icq)
aee69d78dec0ff Paolo Valente 2017-04-19  5410  {
aee69d78dec0ff Paolo Valente 2017-04-19  5411  	struct bfq_io_cq *bic = icq_to_bic(icq);
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5412  	struct bfq_data *bfqd = bic_to_bfqd(bic);
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5413  	unsigned long flags;
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5414  	unsigned int act_idx;
430a67f9d6169a Paolo Valente 2021-03-04  5415  
430a67f9d6169a Paolo Valente 2021-03-04  5416  	/*
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5417  	 * bfqd is NULL if scheduler already exited, and in that case
                                                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

fc8f914d9fc5a0 Paolo Valente 2022-10-20  5418  	 * this is the last time these queues are accessed.
430a67f9d6169a Paolo Valente 2021-03-04  5419  	 */
fc8f914d9fc5a0 Paolo Valente 2022-10-20 @5420  	if (bfqd)
430a67f9d6169a Paolo Valente 2021-03-04  5421  		spin_lock_irqsave(&bfqd->lock, flags);
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5422  
fc8f914d9fc5a0 Paolo Valente 2022-10-20 @5423  	for (act_idx = 0; act_idx < bfqd->num_actuators; act_idx++) {
                                                                            ^^^^^^^^^^^^^^^^^^^
If "bfqd" is NULL then we're toasted.

fc8f914d9fc5a0 Paolo Valente 2022-10-20  5424  		if (bic->stable_merge_bfqq)
430a67f9d6169a Paolo Valente 2021-03-04  5425  			bfq_put_stable_ref(bic->stable_merge_bfqq);
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5426  
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5427  		bfq_exit_icq_bfqq(bic, true, act_idx);
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5428  		bfq_exit_icq_bfqq(bic, false, act_idx);
430a67f9d6169a Paolo Valente 2021-03-04  5429  	}
430a67f9d6169a Paolo Valente 2021-03-04  5430  
fc8f914d9fc5a0 Paolo Valente 2022-10-20 @5431  	if (bfqd)
fc8f914d9fc5a0 Paolo Valente 2022-10-20  5432  		spin_unlock_irqrestore(&bfqd->lock, flags);
aee69d78dec0ff Paolo Valente 2017-04-19  5433  }

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp  

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ