powerpc/vas: Fix potential NULL pointer dereference
commit61cb9ac66b
upstream. (!ptr && !ptr->foo) strikes again. :) The expression (!ptr && !ptr->foo) is bogus and in case ptr is NULL, it leads to a NULL pointer dereference: ptr->foo. Fix this by converting && to || This issue was detected with the help of Coccinelle, and audited and fixed manually. Fixes:1a0d0d5ed5
("powerpc/vas: Add platform specific user window operations") Cc: stable@vger.kernel.org Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org> Reviewed-by: Tyrel Datwyler <tyreld@linux.ibm.com> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au> Link: https://lore.kernel.org/r/20211015050345.GA1161918@embeddedor Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
Родитель
b75b27e4e6
Коммит
0356cc5d27
|
@ -303,7 +303,7 @@ static int coproc_ioc_tx_win_open(struct file *fp, unsigned long arg)
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (!cp_inst->coproc->vops && !cp_inst->coproc->vops->open_win) {
|
||||
if (!cp_inst->coproc->vops || !cp_inst->coproc->vops->open_win) {
|
||||
pr_err("VAS API is not registered\n");
|
||||
return -EACCES;
|
||||
}
|
||||
|
@ -373,7 +373,7 @@ static int coproc_mmap(struct file *fp, struct vm_area_struct *vma)
|
|||
return -EINVAL;
|
||||
}
|
||||
|
||||
if (!cp_inst->coproc->vops && !cp_inst->coproc->vops->paste_addr) {
|
||||
if (!cp_inst->coproc->vops || !cp_inst->coproc->vops->paste_addr) {
|
||||
pr_err("%s(): VAS API is not registered\n", __func__);
|
||||
return -EACCES;
|
||||
}
|
||||
|
|
Загрузка…
Ссылка в новой задаче