All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [Intel-gfx] [PATCH 4/5] Critical-KlockWork-Fix-intel_tv.c-Possible-Null
@ 2020-08-20  9:05 kernel test robot
  0 siblings, 0 replies; 7+ messages in thread
From: kernel test robot @ 2020-08-20  9:05 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 6710 bytes --]

CC: kbuild-all(a)lists.01.org
In-Reply-To: <20200819043409.26010-4-nischal.varide@intel.com>
References: <20200819043409.26010-4-nischal.varide@intel.com>
TO: Nischal Varide <nischal.varide@intel.com>
TO: intel-gfx(a)lists.freedesktop.org
TO: nischal.varide(a)intel.com

Hi Nischal,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm-intel/for-linux-next]
[also build test WARNING on v5.9-rc1 next-20200819]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Nischal-Varide/Critical-KclockWork-Fixes-intel_atomi-c-PossibleNull/20200819-193249
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
:::::: branch date: 22 hours ago
:::::: commit date: 22 hours ago
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>


cppcheck warnings: (new ones prefixed by >>)

>> drivers/gpu/drm/i915/display/intel_tv.c:1840:56: warning: Either the condition 'old_state&&new_state' is redundant or there is possible null pointer dereference: new_state. [nullPointerRedundantCheck]
    new_crtc_state = drm_atomic_get_new_crtc_state(state, new_state->crtc);
                                                          ^
   drivers/gpu/drm/i915/display/intel_tv.c:1842:18: note: Assuming that condition 'old_state&&new_state' is not redundant
    if (!(old_state && new_state && new_crtc_state))
                    ^
   drivers/gpu/drm/i915/display/intel_tv.c:1840:56: note: Null pointer dereference
    new_crtc_state = drm_atomic_get_new_crtc_state(state, new_state->crtc);
                                                          ^
   drivers/gpu/drm/i915/display/intel_tv.c:1635:8: warning: Variable 'type' is reassigned a value before the old one has been used. [redundantAssignment]
     type = DRM_MODE_CONNECTOR_Composite;
          ^
   drivers/gpu/drm/i915/display/intel_tv.c:1623:7: note: Variable 'type' is reassigned a value before the old one has been used.
    type = -1;
         ^
   drivers/gpu/drm/i915/display/intel_tv.c:1635:8: note: Variable 'type' is reassigned a value before the old one has been used.
     type = DRM_MODE_CONNECTOR_Composite;
          ^

# https://github.com/0day-ci/linux/commit/6fb528c1b424d3c8095085afa7e777ac5502450b
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Nischal-Varide/Critical-KclockWork-Fixes-intel_atomi-c-PossibleNull/20200819-193249
git checkout 6fb528c1b424d3c8095085afa7e777ac5502450b
vim +1840 drivers/gpu/drm/i915/display/intel_tv.c

79e539453b34e3 drivers/gpu/drm/i915/intel_tv.c         Jesse Barnes      2008-11-07  1830  
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1831  static int intel_tv_atomic_check(struct drm_connector *connector,
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11  1832  				 struct drm_atomic_state *state)
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1833  {
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11  1834  	struct drm_connector_state *new_state;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1835  	struct drm_crtc_state *new_crtc_state;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1836  	struct drm_connector_state *old_state;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1837  
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11  1838  	new_state = drm_atomic_get_new_connector_state(state, connector);
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11  1839  	old_state = drm_atomic_get_old_connector_state(state, connector);
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11 @1840  	new_crtc_state = drm_atomic_get_new_crtc_state(state, new_state->crtc);
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1841  
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1842  	if (!(old_state && new_state && new_crtc_state))
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1843  		return 0;
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1844  
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1845  	if (!new_state->crtc)
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1846  		return 0;
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1847  
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1848  	if (old_state->tv.mode != new_state->tv.mode ||
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1849  		old_state->tv.margins.left != new_state->tv.margins.left ||
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1850  		old_state->tv.margins.right != new_state->tv.margins.right ||
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1851  		old_state->tv.margins.top != new_state->tv.margins.top ||
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1852  		old_state->tv.margins.bottom != new_state->tv.margins.bottom) {
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1853  		/* Force a modeset. */
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1854  
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1855  		new_crtc_state->connectors_changed = true;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1856  	}
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1857  
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1858  	return 0;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1859  }
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1860  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

^ permalink raw reply	[flat|nested] 7+ messages in thread
* Re: [Intel-gfx] [PATCH 4/5] Critical-KlockWork-Fix-intel_tv.c-Possible-Null
@ 2020-08-25  5:03 kernel test robot
  0 siblings, 0 replies; 7+ messages in thread
From: kernel test robot @ 2020-08-25  5:03 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 5623 bytes --]

CC: kbuild-all(a)lists.01.org
In-Reply-To: <20200819043409.26010-4-nischal.varide@intel.com>
References: <20200819043409.26010-4-nischal.varide@intel.com>
TO: Nischal Varide <nischal.varide@intel.com>
TO: intel-gfx(a)lists.freedesktop.org
TO: nischal.varide(a)intel.com

Hi Nischal,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm-intel/for-linux-next]
[also build test WARNING on v5.9-rc2 next-20200824]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Nischal-Varide/Critical-KclockWork-Fixes-intel_atomi-c-PossibleNull/20200819-193249
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
:::::: branch date: 6 days ago
:::::: commit date: 6 days ago
config: i386-randconfig-m021-20200824 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

smatch warnings:
drivers/gpu/drm/i915/display/intel_tv.c:1842 intel_tv_atomic_check() warn: variable dereferenced before check 'new_state' (see line 1840)

# https://github.com/0day-ci/linux/commit/6fb528c1b424d3c8095085afa7e777ac5502450b
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Nischal-Varide/Critical-KclockWork-Fixes-intel_atomi-c-PossibleNull/20200819-193249
git checkout 6fb528c1b424d3c8095085afa7e777ac5502450b
vim +/new_state +1842 drivers/gpu/drm/i915/display/intel_tv.c

79e539453b34e3 drivers/gpu/drm/i915/intel_tv.c         Jesse Barnes      2008-11-07  1830  
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1831  static int intel_tv_atomic_check(struct drm_connector *connector,
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11  1832  				 struct drm_atomic_state *state)
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1833  {
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11  1834  	struct drm_connector_state *new_state;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1835  	struct drm_crtc_state *new_crtc_state;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1836  	struct drm_connector_state *old_state;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1837  
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11  1838  	new_state = drm_atomic_get_new_connector_state(state, connector);
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11  1839  	old_state = drm_atomic_get_old_connector_state(state, connector);
6f3b62781bbd26 drivers/gpu/drm/i915/intel_tv.c         Sean Paul         2019-06-11 @1840  	new_crtc_state = drm_atomic_get_new_crtc_state(state, new_state->crtc);
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1841  
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19 @1842  	if (!(old_state && new_state && new_crtc_state))
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1843  		return 0;
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1844  
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1845  	if (!new_state->crtc)
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1846  		return 0;
6fb528c1b424d3 drivers/gpu/drm/i915/display/intel_tv.c Nischal Varide    2020-08-19  1847  
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1848  	if (old_state->tv.mode != new_state->tv.mode ||
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1849  		old_state->tv.margins.left != new_state->tv.margins.left ||
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1850  		old_state->tv.margins.right != new_state->tv.margins.right ||
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1851  		old_state->tv.margins.top != new_state->tv.margins.top ||
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1852  		old_state->tv.margins.bottom != new_state->tv.margins.bottom) {
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1853  		/* Force a modeset. */
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1854  
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1855  		new_crtc_state->connectors_changed = true;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1856  	}
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1857  
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1858  	return 0;
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1859  }
0e891b3f447f4d drivers/gpu/drm/i915/intel_tv.c         Maarten Lankhorst 2017-04-10  1860  

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 40662 bytes --]

^ permalink raw reply	[flat|nested] 7+ messages in thread
* [Intel-gfx] [PATCH 1/5] Critical-KclockWork-Fixes-intel_atomi.c-PossibleNull
@ 2020-08-19  4:34 Nischal Varide
  2020-08-19  4:34 ` [Intel-gfx] [PATCH 4/5] Critical-KlockWork-Fix-intel_tv.c-Possible-Null Nischal Varide
  0 siblings, 1 reply; 7+ messages in thread
From: Nischal Varide @ 2020-08-19  4:34 UTC (permalink / raw)
  To: intel-gfx, nischal.varide

This Patch fixes the Klocwork errors and the Current fix is avoiding
Possible Null Pointer Dereference

Signed-off-by: Nischal Varide <nischal.varide@intel.com>
---
 drivers/gpu/drm/i915/display/intel_atomic.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/display/intel_atomic.c b/drivers/gpu/drm/i915/display/intel_atomic.c
index 630f49b7aa01..cf51f1005ec1 100644
--- a/drivers/gpu/drm/i915/display/intel_atomic.c
+++ b/drivers/gpu/drm/i915/display/intel_atomic.c
@@ -132,6 +132,9 @@ int intel_digital_connector_atomic_check(struct drm_connector *conn,
 		to_intel_digital_connector_state(old_state);
 	struct drm_crtc_state *crtc_state;
 
+	if (!(new_state && new_conn_state && old_state && old_conn_state))
+		return 0;
+
 	intel_hdcp_atomic_check(conn, old_state, new_state);
 	intel_psr_atomic_check(conn, old_state, new_state);
 
@@ -192,6 +195,8 @@ intel_connector_needs_modeset(struct intel_atomic_state *state,
 
 	old_conn_state = drm_atomic_get_old_connector_state(&state->base, connector);
 	new_conn_state = drm_atomic_get_new_connector_state(&state->base, connector);
+	if (!(old_conn_state && new_conn_state))
+		return 0;
 
 	return old_conn_state->crtc != new_conn_state->crtc ||
 	       (new_conn_state->crtc &&
@@ -418,7 +423,7 @@ int intel_atomic_setup_scalers(struct drm_i915_private *dev_priv,
 	 */
 
 	/* fail if required scalers > available scalers */
-	if (num_scalers_need > intel_crtc->num_scalers){
+	if (num_scalers_need > intel_crtc->num_scalers) {
 		drm_dbg_kms(&dev_priv->drm,
 			    "Too many scaling requests %d > %d\n",
 			    num_scalers_need, intel_crtc->num_scalers);
-- 
2.26.0

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

^ permalink raw reply related	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2020-08-25  9:34 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-08-20  9:05 [Intel-gfx] [PATCH 4/5] Critical-KlockWork-Fix-intel_tv.c-Possible-Null kernel test robot
  -- strict thread matches above, loose matches on Subject: below --
2020-08-25  5:03 kernel test robot
2020-08-19  4:34 [Intel-gfx] [PATCH 1/5] Critical-KclockWork-Fixes-intel_atomi.c-PossibleNull Nischal Varide
2020-08-19  4:34 ` [Intel-gfx] [PATCH 4/5] Critical-KlockWork-Fix-intel_tv.c-Possible-Null Nischal Varide
2020-08-24  6:32   ` Anshuman Gupta
2020-08-25  9:31   ` Dan Carpenter
2020-08-25  9:31     ` Dan Carpenter
2020-08-25  9:31     ` Dan Carpenter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.