All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/gpu/drm/i915/display/intel_panel.c:159:46: warning: dereference of NULL 'preferred_mode' [CWE-476]
@ 2022-06-18 23:44 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-06-18 23:44 UTC (permalink / raw)
  To: kbuild

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

:::::: 
:::::: Manual check reason: "low confidence bisect report"
:::::: Manual check reason: "low confidence static check warning: drivers/gpu/drm/i915/display/intel_panel.c:159:46: warning: dereference of NULL 'preferred_mode' [CWE-476] [-Wanalyzer-null-dereference]"
:::::: 

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: "Ville Syrjälä" <ville.syrjala@linux.intel.com>
CC: Jani Nikula <jani.nikula@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   4b35035bcf80ddb47c0112c4fbd84a63a2836a18
commit: c19909d037b640a5e3580c68f420e7ba058c68e4 drm/i915: Allow higher refresh rate alternate fixed modes
date:   3 months ago
:::::: branch date: 27 hours ago
:::::: commit date: 3 months ago
config: x86_64-randconfig-c001-20220613 (https://download.01.org/0day-ci/archive/20220619/202206190758.RdYUewoz-lkp(a)intel.com/config)
compiler: gcc-11 (Debian 11.3.0-3) 11.3.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=c19909d037b640a5e3580c68f420e7ba058c68e4
        git remote add linus https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
        git fetch --no-tags linus master
        git checkout c19909d037b640a5e3580c68f420e7ba058c68e4
        # save the config file
         ARCH=x86_64 KBUILD_USERCFLAGS='-fanalyzer -Wno-error' 

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


gcc-analyzer warnings: (new ones prefixed by >>)
   drivers/gpu/drm/i915/display/intel_panel.c: In function 'is_alt_fixed_mode':
>> drivers/gpu/drm/i915/display/intel_panel.c:159:46: warning: dereference of NULL 'preferred_mode' [CWE-476] [-Wanalyzer-null-dereference]
     159 |                 mode->clock != preferred_mode->clock;
         |                                ~~~~~~~~~~~~~~^~~~~~~
     'intel_panel_add_edid_alt_fixed_modes': event 1
       |
       |  162 | static void intel_panel_add_edid_alt_fixed_modes(struct intel_connector *connector)
       |      |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       |      |             |
       |      |             (1) entry to 'intel_panel_add_edid_alt_fixed_modes'
       |
     'intel_panel_add_edid_alt_fixed_modes': event 2
       |
       |include/linux/list.h:555:59:
       |  555 |         pos__ != head__ ? list_entry(pos__, type, member) : NULL; \
   drivers/gpu/drm/i915/display/intel_panel.c:52:16: note: in expansion of macro 'list_first_entry_or_null'
       |   52 |         return list_first_entry_or_null(&connector->panel.fixed_modes,
       |      |                ^~~~~~~~~~~~~~~~~~~~~~~~
       |
     'intel_panel_add_edid_alt_fixed_modes': event 3
       |
       |cc1:
       | (3): ...to here
       |
     'intel_panel_add_edid_alt_fixed_modes': event 4
       |
       |include/linux/list.h:727:14:
       |  727 |              !list_entry_is_head(pos, head, member);                    \
       |      |              ^
       |      |              |
       |      |              (4) following 'true' branch...
   drivers/gpu/drm/i915/display/intel_panel.c:169:9: note: in expansion of macro 'list_for_each_entry_safe'
       |  169 |         list_for_each_entry_safe(mode, next, &connector->base.probed_modes, head) {
       |      |         ^~~~~~~~~~~~~~~~~~~~~~~~
       |
     'intel_panel_add_edid_alt_fixed_modes': events 5-6
       |
       |  170 |                 if (!is_alt_fixed_mode(mode, preferred_mode))
       |      |                 ^~   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       |      |                 |    |
       |      |                 |    (6) calling 'is_alt_fixed_mode' from 'intel_panel_add_edid_alt_fixed_modes'
       |      |                 (5) ...to here
       |
       +--> 'is_alt_fixed_mode': events 7-10
              |
              |  152 | static bool is_alt_fixed_mode(const struct drm_display_mode *mode,
              |      |             ^~~~~~~~~~~~~~~~~
              |      |             |
              |      |             (7) entry to 'is_alt_fixed_mode'
              |......
              |  155 |         return drm_mode_match(mode, preferred_mode,
              |      |                ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              |  156 |                               DRM_MODE_MATCH_TIMINGS |
              |      |                               ~~~~~~~~~~~~~~~~~~~~~~~~
              |  157 |                               DRM_MODE_MATCH_FLAGS |
              |      |                               ~~~~~~~~~~~~~~~~~~~~~~
              |  158 |                               DRM_MODE_MATCH_3D_FLAGS) &&
              |      |                               ~~~~~~~~~~~~~~~~~~~~~~~~~~~
              |      |                                                        |
              |      |                                                        (8) following 'true' branch...
              |  159 |                 mode->clock != preferred_mode->clock;
              |      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
              |      |                     |                        |
              |      |                     (9) ...to here           (10) dereference of NULL 'preferred_mode'
              |

vim +/preferred_mode +159 drivers/gpu/drm/i915/display/intel_panel.c

1d8e1c75ffa844 drivers/gpu/drm/i915/intel_panel.c         Chris Wilson  2010-08-07  151  
c19909d037b640 drivers/gpu/drm/i915/display/intel_panel.c Ville Syrjälä 2022-03-31  152  static bool is_alt_fixed_mode(const struct drm_display_mode *mode,
c19909d037b640 drivers/gpu/drm/i915/display/intel_panel.c Ville Syrjälä 2022-03-31  153  			      const struct drm_display_mode *preferred_mode)
9f6fbe22be90b7 drivers/gpu/drm/i915/intel_panel.c         Ville Syrjälä 2019-03-21  154  {
c19909d037b640 drivers/gpu/drm/i915/display/intel_panel.c Ville Syrjälä 2022-03-31  155  	return drm_mode_match(mode, preferred_mode,
9f6fbe22be90b7 drivers/gpu/drm/i915/intel_panel.c         Ville Syrjälä 2019-03-21  156  			      DRM_MODE_MATCH_TIMINGS |
9f6fbe22be90b7 drivers/gpu/drm/i915/intel_panel.c         Ville Syrjälä 2019-03-21  157  			      DRM_MODE_MATCH_FLAGS |
9f6fbe22be90b7 drivers/gpu/drm/i915/intel_panel.c         Ville Syrjälä 2019-03-21  158  			      DRM_MODE_MATCH_3D_FLAGS) &&
c19909d037b640 drivers/gpu/drm/i915/display/intel_panel.c Ville Syrjälä 2022-03-31 @159  		mode->clock != preferred_mode->clock;
9f6fbe22be90b7 drivers/gpu/drm/i915/intel_panel.c         Ville Syrjälä 2019-03-21  160  }
9f6fbe22be90b7 drivers/gpu/drm/i915/intel_panel.c         Ville Syrjälä 2019-03-21  161  

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

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-06-18 23:44 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-06-18 23:44 drivers/gpu/drm/i915/display/intel_panel.c:159:46: warning: dereference of NULL 'preferred_mode' [CWE-476] kernel test robot

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.