Coverity: nouveau_dp_irq(): Null pointer dereferences
Hello!
This is an experimental semi-automated report about issues detected by Coverity from a scan of next-20221110 as part of the linux-next scan project:
https://scan.coverity.com/projects/linux-next-weekly-scan
You're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Mon Aug 31 19:10:08 2020 -0400
a0922278f83e ("drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling")Coverity reported the following:
*** CID 1527266: Null pointer dereferences (REVERSE_INULL) drivers/gpu/drm/nouveau/nouveau_dp.c:237 in nouveau_dp_irq()
231 struct nouveau_encoder *outp = find_encoder(connector, DCB_OUTPUT_DP); 232 struct nouveau_drm *drm = nouveau_drm(outp->base.base.dev); 233 struct nv50_mstm *mstm; 234 u64 hpd = 0; 235 int ret; 236 vvv CID 1527266: Null pointer dereferences (REVERSE_INULL) vvv Null-checking "outp" suggests that it may be null, but it has already been dereferenced on all paths leading to the check. 237 if (!outp) 238 return;
239
240 mstm = outp->dp.mstm;
241 NV_DEBUG(drm, "service %s\n", connector->name);
242
If this is a false positive, please let us know so we can mark it as such, or teach the Coverity rules to be smarter. If not, please make sure fixes get into linux-next. :) For patches fixing this, please include these lines (but double-check the "Fixes" first):
Addresses-Coverity-ID: 1527266 ("Null pointer dereferences")
Thanks for your attention!
Signature · 1 line
Coverity-bot
Quoted 11 lines · coverity-bot
Hello!
This is an experimental semi-automated report about issues detected by Coverity from a scan of next-20221110 as part of the linux-next scan project:
https://scan.coverity.com/projects/linux-next-weekly-scanYou're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Mon Aug 31 19:10:08 2020 -0400
a0922278f83e ("drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling")
Hi Kees, this looks like a good idea, but maybe double check the Cc list generation? I was Cc'd on four mails today that I thought were irrelevant to me.
Thanks,
Jani.
Quoted 30 lines
Coverity reported the following:
*** CID 1527266: Null pointer dereferences (
REVERSE_INULL)drivers/gpu/drm/nouveau/nouveau_dp.c:237innouveau_dp_irq()231 struct nouveau_encoder *outp = find_encoder(connector, DCB_OUTPUT_DP); 232 struct nouveau_drm *drm = nouveau_drm(outp->base.base.dev); 233 struct nv50_mstm *mstm; 234 u64 hpd = 0; 235 int ret; 236 vvv CID 1527266: Null pointer dereferences (REVERSE_INULL) vvv Null-checking "outp" suggests that it may be null, but it has already been dereferenced on all paths leading to the check. 237 if (!outp) 238 return;239
240 mstm =outp->dp.mstm;
241NV_DEBUG(drm, "service %s\n", connector->name);
242If this is a false positive, please let us know so we can mark it as such, or teach the Coverity rules to be smarter. If not, please make sure fixes get into linux-next. :) For patches fixing this, please include these lines (but double-check the "Fixes" first):
Reported-by coverity-bot <[email protected]>Addresses-Coverity-ID: 1527266 ("Null pointer dereferences")
Fixes a0922278f83e ("drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling")Thanks for your attention!
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center
Quoted 10 lines · Jani Nikula
Quoted 9 lines · coverity-bot
Hello!
This is an experimental semi-automated report about issues detected by Coverity from a scan of next-20221110 as part of the linux-next scan project:
https://scan.coverity.com/projects/linux-next-weekly-scanYou're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Quoted 6 lines
Quoted 2 lines
Mon Aug 31 19:10:08 2020 -0400
a0922278f83e ("drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling")Hi Kees, this looks like a good idea, but maybe double check the Cc list generation? I was Cc'd on four mails today that I thought were irrelevant to me.
Hi!
Heh, I was recently asked to _expand_ the CC list. :)
For these last pass of reports, I added a get_maintainers.pl run to the identified commit. In this instance, the commit touched:
drivers/gpu/drm/nouveau/dispnv04/disp.c | 6 + drivers/gpu/drm/nouveau/dispnv50/disp.c | 192 ++++++++++++++++++++++-------------------------- drivers/gpu/drm/nouveau/nouveau_connector.c | 14 --- drivers/gpu/drm/nouveau/nouveau_display.c | 2 drivers/gpu/drm/nouveau/nouveau_display.h | 2 drivers/gpu/drm/nouveau/nouveau_dp.c | 132 ++++++++++++++++++++++++++++----- drivers/gpu/drm/nouveau/nouveau_encoder.h | 33 +++++++- 7 files changed, 244 insertions(+), 137 deletions(-)
And the get_maintainers.pl rationale was:
Ben Skeggs <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:1/1=100%,commit_signer:6/16=38%,authored:4/16=25%,added_lines:23/124=19%,removed_lines:36/152=24%) Karol Herbst <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:2/1=100%)
Lyude Paul <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:9/16=56%,authored:6/16=38%,added_lines:92/124=74%,removed_lines:107/152=70%) David Airlie <[email protected]> (maintainer:DRM DRIVERS)
Daniel Vetter <[email protected]> (maintainer:DRM DRIVERS)
Ilia Mirkin <[email protected]> (commit_signer:1/1=100%,authored:1/1=100%,added_lines:2/2=100%,removed_lines:2/2=100%)
"Nathan E. Egge" <[email protected]> (commit_signer:1/1=100%)
Jani Nikula <[email protected]> (commit_signer:6/16=38%)
Dave Airlie <[email protected]> (commit_signer:5/16=31%)
Thomas Zimmermann <[email protected]> (commit_signer:4/16=25%,authored:4/16=25%)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
Signature · 1 line
Kees Cook
Quoted 37 lines · Kees Cook
Quoted 10 lines · Jani Nikula
Quoted 9 lines · coverity-bot
Hello!
This is an experimental semi-automated report about issues detected by Coverity from a scan of next-20221110 as part of the linux-next scan project:
https://scan.coverity.com/projects/linux-next-weekly-scanYou're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Quoted 6 lines
Quoted 2 lines
Mon Aug 31 19:10:08 2020 -0400
a0922278f83e ("drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling")Hi Kees, this looks like a good idea, but maybe double check the Cc list generation? I was Cc'd on four mails today that I thought were irrelevant to me.
Hi!
Heh, I was recently asked to _expand_ the CC list. :)
For these last pass of reports, I added a get_maintainers.pl run to the identified commit. In this instance, the commit touched:
drivers/gpu/drm/nouveau/dispnv04/disp.c | 6 + drivers/gpu/drm/nouveau/dispnv50/disp.c | 192 ++++++++++++++++++++++-------------------------- drivers/gpu/drm/nouveau/nouveau_connector.c | 14 --- drivers/gpu/drm/nouveau/nouveau_display.c | 2 drivers/gpu/drm/nouveau/nouveau_display.h | 2 drivers/gpu/drm/nouveau/nouveau_dp.c | 132 ++++++++++++++++++++++++++++----- drivers/gpu/drm/nouveau/nouveau_encoder.h | 33 +++++++- 7 files changed, 244 insertions(+), 137 deletions(-)And the get_maintainers.pl rationale was:
Quoted 13 lines
Ben Skeggs <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:1/1=100%,commit_signer:6/16=38%,authored:4/16=25%,added_lines:23/124=19%,removed_lines:36/152=24%) Karol Herbst <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:2/1=100%)
Lyude Paul <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:9/16=56%,authored:6/16=38%,added_lines:92/124=74%,removed_lines:107/152=70%) David Airlie <[email protected]> (maintainer:DRM DRIVERS)
Daniel Vetter <[email protected]> (maintainer:DRM DRIVERS)
Ilia Mirkin <[email protected]> (commit_signer:1/1=100%,authored:1/1=100%,added_lines:2/2=100%,removed_lines:2/2=100%)
"Nathan E. Egge" <[email protected]> (commit_signer:1/1=100%)
Jani Nikula <[email protected]> (commit_signer:6/16=38%)
Dave Airlie <[email protected]> (commit_signer:5/16=31%)
Thomas Zimmermann <[email protected]> (commit_signer:4/16=25%,authored:4/16=25%)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
I'd say it's good enough to message supporters and the mailing lists for at least Nouveau code, maybe even all drm drivers.
Not sure what to do about actual maintainers, but I doubt Dave and Daniel want to be CCed on every Coverity report here either.
Karol
Quoted 4 lines
--
Kees Cook
Quoted 52 lines · Karol Herbst
Quoted 37 lines · Kees Cook
Quoted 10 lines · Jani Nikula
Quoted 9 lines · coverity-bot
Hello!
This is an experimental semi-automated report about issues detected by Coverity from a scan of next-20221110 as part of the linux-next scan project:
https://scan.coverity.com/projects/linux-next-weekly-scanYou're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Quoted 6 lines
Quoted 2 lines
Mon Aug 31 19:10:08 2020 -0400
a0922278f83e ("drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling")Hi Kees, this looks like a good idea, but maybe double check the Cc list generation? I was Cc'd on four mails today that I thought were irrelevant to me.
Hi!
Heh, I was recently asked to _expand_ the CC list. :)
For these last pass of reports, I added a get_maintainers.pl run to the identified commit. In this instance, the commit touched:
drivers/gpu/drm/nouveau/dispnv04/disp.c | 6 + drivers/gpu/drm/nouveau/dispnv50/disp.c | 192 ++++++++++++++++++++++-------------------------- drivers/gpu/drm/nouveau/nouveau_connector.c | 14 --- drivers/gpu/drm/nouveau/nouveau_display.c | 2 drivers/gpu/drm/nouveau/nouveau_display.h | 2 drivers/gpu/drm/nouveau/nouveau_dp.c | 132 ++++++++++++++++++++++++++++----- drivers/gpu/drm/nouveau/nouveau_encoder.h | 33 +++++++- 7 files changed, 244 insertions(+), 137 deletions(-)And the get_maintainers.pl rationale was:
Quoted 13 lines
Ben Skeggs <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:1/1=100%,commit_signer:6/16=38%,authored:4/16=25%,added_lines:23/124=19%,removed_lines:36/152=24%) Karol Herbst <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:2/1=100%)
Lyude Paul <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:9/16=56%,authored:6/16=38%,added_lines:92/124=74%,removed_lines:107/152=70%) David Airlie <[email protected]> (maintainer:DRM DRIVERS)
Daniel Vetter <[email protected]> (maintainer:DRM DRIVERS)
Ilia Mirkin <[email protected]> (commit_signer:1/1=100%,authored:1/1=100%,added_lines:2/2=100%,removed_lines:2/2=100%)
"Nathan E. Egge" <[email protected]> (commit_signer:1/1=100%)
Jani Nikula <[email protected]> (commit_signer:6/16=38%)
Dave Airlie <[email protected]> (commit_signer:5/16=31%)
Thomas Zimmermann <[email protected]> (commit_signer:4/16=25%,authored:4/16=25%)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
Quoted 2 lines
I'd say it's good enough to message supporters and the mailing lists for at least Nouveau code, maybe even all drm drivers.
i.e. leave out the commit_signer hits?
Quoted 2 lines
Not sure what to do about actual maintainers, but I doubt Dave and Daniel want to be CCed on every Coverity report here either.
I updated the CC logic based on this feedback:
https://lore.kernel.org/linux-hardening/[email protected]/
So maybe just mailing lists?
Signature · 1 line
Kees Cook
Quoted 54 lines · Kees Cook
Quoted 52 lines · Karol Herbst
Quoted 50 lines · Kees Cook
Quoted 10 lines · Jani Nikula
Quoted 9 lines · coverity-bot
Hello!
This is an experimental semi-automated report about issues detected by Coverity from a scan of next-20221110 as part of the linux-next scan project:
https://scan.coverity.com/projects/linux-next-weekly-scanYou're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Quoted 6 lines
Quoted 2 lines
Mon Aug 31 19:10:08 2020 -0400
a0922278f83e ("drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling")Hi Kees, this looks like a good idea, but maybe double check the Cc list generation? I was Cc'd on four mails today that I thought were irrelevant to me.
Hi!
Heh, I was recently asked to _expand_ the CC list. :)
For these last pass of reports, I added a get_maintainers.pl run to the identified commit. In this instance, the commit touched:
drivers/gpu/drm/nouveau/dispnv04/disp.c | 6 + drivers/gpu/drm/nouveau/dispnv50/disp.c | 192 ++++++++++++++++++++++-------------------------- drivers/gpu/drm/nouveau/nouveau_connector.c | 14 --- drivers/gpu/drm/nouveau/nouveau_display.c | 2 drivers/gpu/drm/nouveau/nouveau_display.h | 2 drivers/gpu/drm/nouveau/nouveau_dp.c | 132 ++++++++++++++++++++++++++++----- drivers/gpu/drm/nouveau/nouveau_encoder.h | 33 +++++++- 7 files changed, 244 insertions(+), 137 deletions(-)And the get_maintainers.pl rationale was:
Ben Skeggs <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:1/1=100%,commit_signer:6/16=38%,authored:4/16=25%,added_lines:23/124=19%,removed_lines:36/152=24%) Karol Herbst <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:2/1=100%)
Lyude Paul <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:9/16=56%,authored:6/16=38%,added_lines:92/124=74%,removed_lines:107/152=70%) David Airlie <[email protected]> (maintainer:DRM DRIVERS)
Daniel Vetter <[email protected]> (maintainer:DRM DRIVERS)
Ilia Mirkin <[email protected]> (commit_signer:1/1=100%,authored:1/1=100%,added_lines:2/2=100%,removed_lines:2/2=100%)
"Nathan E. Egge" <[email protected]> (commit_signer:1/1=100%)
Jani Nikula <[email protected]> (commit_signer:6/16=38%)
Dave Airlie <[email protected]> (commit_signer:5/16=31%)
Thomas Zimmermann <[email protected]> (commit_signer:4/16=25%,authored:4/16=25%)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
Quoted 5 lines
Quoted 2 lines
I'd say it's good enough to message supporters and the mailing lists for at least Nouveau code, maybe even all drm drivers.
i.e. leave out the
commit_signerhits?
yes.
Quoted 8 lines
Quoted 2 lines
Not sure what to do about actual maintainers, but I doubt Dave and Daniel want to be CCed on every Coverity report here either.
I updated the CC logic based on this feedback:
https://lore.kernel.org/linux-hardening/[email protected]/So maybe just mailing lists?
That should be good enough, but maybe the DRM subsystem is big enough so it's reasonable to add special rules. For Nouveau either way is fine.
Quoted 3 lines
--
Kees Cook
Quoted 55 lines · Karol Herbst
Quoted 54 lines · Kees Cook
Quoted 52 lines · Karol Herbst
Quoted 50 lines · Kees Cook
Quoted 10 lines · Jani Nikula
Quoted 9 lines · coverity-bot
Hello!
This is an experimental semi-automated report about issues detected by Coverity from a scan of next-20221110 as part of the linux-next scan project:
https://scan.coverity.com/projects/linux-next-weekly-scanYou're getting this email because you were associated with the identified lines of code (noted below) that were touched by commits:
Quoted 6 lines
Quoted 2 lines
Mon Aug 31 19:10:08 2020 -0400
a0922278f83e ("drm/nouveau/kms/nv50-: Refactor and cleanup DP HPD handling")Hi Kees, this looks like a good idea, but maybe double check the Cc list generation? I was Cc'd on four mails today that I thought were irrelevant to me.
Hi!
Heh, I was recently asked to _expand_ the CC list. :)
For these last pass of reports, I added a get_maintainers.pl run to the identified commit. In this instance, the commit touched:
drivers/gpu/drm/nouveau/dispnv04/disp.c | 6 + drivers/gpu/drm/nouveau/dispnv50/disp.c | 192 ++++++++++++++++++++++-------------------------- drivers/gpu/drm/nouveau/nouveau_connector.c | 14 --- drivers/gpu/drm/nouveau/nouveau_display.c | 2 drivers/gpu/drm/nouveau/nouveau_display.h | 2 drivers/gpu/drm/nouveau/nouveau_dp.c | 132 ++++++++++++++++++++++++++++----- drivers/gpu/drm/nouveau/nouveau_encoder.h | 33 +++++++- 7 files changed, 244 insertions(+), 137 deletions(-)And the get_maintainers.pl rationale was:
Ben Skeggs <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:1/1=100%,commit_signer:6/16=38%,authored:4/16=25%,added_lines:23/124=19%,removed_lines:36/152=24%) Karol Herbst <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:2/1=100%)
Lyude Paul <[email protected]> (supporter:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS,commit_signer:9/16=56%,authored:6/16=38%,added_lines:92/124=74%,removed_lines:107/152=70%) David Airlie <[email protected]> (maintainer:DRM DRIVERS)
Daniel Vetter <[email protected]> (maintainer:DRM DRIVERS)
Ilia Mirkin <[email protected]> (commit_signer:1/1=100%,authored:1/1=100%,added_lines:2/2=100%,removed_lines:2/2=100%)
"Nathan E. Egge" <[email protected]> (commit_signer:1/1=100%)
Jani Nikula <[email protected]> (commit_signer:6/16=38%)
Dave Airlie <[email protected]> (commit_signer:5/16=31%)
Thomas Zimmermann <[email protected]> (commit_signer:4/16=25%,authored:4/16=25%)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
[email protected] (open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS)
Quoted 7 lines
Quoted 5 lines
Quoted 2 lines
I'd say it's good enough to message supporters and the mailing lists for at least Nouveau code, maybe even all drm drivers.
i.e. leave out the
commit_signerhits?yes.
Agreed.
I understand the point of commit_signer, but I don't think get_maintainers.pl does a very good job with the heuristics, or filtering out "insignificant" contributions to the files being changed.
BR,
Jani.
Quoted 18 lines
Quoted 9 lines
Quoted 3 lines
Not sure what to do about actual maintainers, but I doubt Dave and Daniel want to be CCed on every Coverity report here either.
I updated the CC logic based on this feedback:
https://lore.kernel.org/linux-hardening/[email protected]/So maybe just mailing lists?
That should be good enough, but maybe the DRM subsystem is big enough so it's reasonable to add special rules. For Nouveau either way is fine.
Quoted 3 lines
--
Kees Cook
Signature · 1 line
Jani Nikula, Intel Open Source Graphics Center