On Fri, 10 Mar 2023, Dan Carpenter <erro...@gmail.com> wrote:
> On Thu, Mar 09, 2023 at 04:51:10PM +0200, Jani Nikula wrote:
>> On Thu, 09 Mar 2023, Dan Carpenter <erro...@gmail.com> wrote:
>> > Hello Jani Nikula,
>> >
>> > This is a semi-automatic email about new static checker warnings.
>> >
>> > The patch 1b28c1c789d0: "drm/i915/dmc: add i915_to_dmc() and 
>> > dmc->i915 and use them" from Mar 1, 2023, leads to the following 
>> > Smatch complaint:
>> >
>> >     drivers/gpu/drm/i915/display/intel_dmc.c:1162 
>> > intel_dmc_debugfs_status_show()
>> >     error: we previously assumed 'dmc' could be null (see line 1148)
>> >
>> > drivers/gpu/drm/i915/display/intel_dmc.c
>> >   1142  
>> >   1143          wakeref = intel_runtime_pm_get(&i915->runtime_pm);
>> >   1144  
>> >   1145          seq_printf(m, "DMC initialized: %s\n", str_yes_no(dmc));'
>> >                                                        ^^^^^^^^^^^^^^^
>> > This is a check for NULL too.
>> >
>> >   1146          seq_printf(m, "fw loaded: %s\n",
>> >   1147                        str_yes_no(intel_dmc_has_payload(i915)));
>> >   1148             seq_printf(m, "path: %s\n", dmc ? dmc->fw_path : "N/A");
>> >                                             ^^^
>> > The patch adds a check for NULL.
>> >
>> >   1149             seq_printf(m, "Pipe A fw needed: %s\n",
>> >   1150                        str_yes_no(GRAPHICS_VER(i915) >= 12));
>> >   1151             seq_printf(m, "Pipe A fw loaded: %s\n",
>> >   1152                        str_yes_no(has_dmc_id_fw(i915, 
>> > DMC_FW_PIPEA)));
>> >   1153             seq_printf(m, "Pipe B fw needed: %s\n",
>> >   1154                        str_yes_no(IS_ALDERLAKE_P(i915) ||
>> >   1155                                   DISPLAY_VER(i915) >= 14));
>> >   1156             seq_printf(m, "Pipe B fw loaded: %s\n",
>> >   1157                        str_yes_no(has_dmc_id_fw(i915, 
>> > DMC_FW_PIPEB)));
>> >   1158     
>> >   1159             if (!intel_dmc_has_payload(i915))
>> 
>> intel_dmc_has_payload() should always return false for dmc == NULL.
>
> Ah, right.  Sorry for the noise.  I'm going to try figure out how to
> make Smatch parse this correctly.

No worries. I did wonder while writing the patch whether it would throw
off people, didn't even consider static analysis. :)

BR,
Jani.


-- 
Jani Nikula, Intel Open Source Graphics Center

Reply via email to