mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c:72:6-12: inconsistent IS_ERR and PTR_ERR on line 73.
@ 2026-10-06  6:40 kernel test robot
  2026-10-06  9:14 ` Luca Ceresoli
  0 siblings, 1 reply; 3+ messages in thread
From: kernel test robot @ 2026-10-06  6:40 UTC (permalink / raw)
  To: Luca Ceresoli
  Cc: oe-kbuild-all, linux-kernel, Linus Walleij, Laurent Pinchart,
	Louis Chauvet

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   2c3418fffa9d037b2038a6db48be63f9e2291806
commit: 5b03d4907db93627ef48396f39c3455ce644c946 drm: rcar-du: encoder: convert to of_drm_find_and_get_bridge()
date:   6 months ago
config: sparc64-randconfig-r2106-20261005 (https://download.01.org/0day-ci/archive/20261006/202610060853.t5Q4BX8P-lkp@intel.com/config)
compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 195c81658995a4b7531c30a12c5aef6cf2bbd671)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Fixes: 5b03d4907db9 ("drm: rcar-du: encoder: convert to of_drm_find_and_get_bridge()")
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202610060853.t5Q4BX8P-lkp@intel.com/

cocci warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c:72:6-12: inconsistent IS_ERR and PTR_ERR on line 73.

vim +72 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c

f5f16725edbc1a drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03   47  
6978f123776594 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2013-06-15   48  int rcar_du_encoder_init(struct rcar_du_device *rcdu,
ef67a902e946ad drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2013-06-17   49  			 enum rcar_du_output output,
5aebc852af25d8 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-01-17   50  			 struct device_node *enc_node)
4bf8e1962f91ee drivers/gpu/drm/rcar-du/rcar_du_lvds.c            Laurent Pinchart 2013-06-19   51  {
4bf8e1962f91ee drivers/gpu/drm/rcar-du/rcar_du_lvds.c            Laurent Pinchart 2013-06-19   52  	struct rcar_du_encoder *renc;
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25   53  	struct drm_connector *connector;
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   54  	struct drm_bridge *bridge __free(drm_bridge_put) = NULL;
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25   55  	int ret;
4bf8e1962f91ee drivers/gpu/drm/rcar-du/rcar_du_lvds.c            Laurent Pinchart 2013-06-19   56  
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   57  	/*
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   58  	 * Locate the DRM bridge from the DT node. For the DPAD outputs, if the
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   59  	 * DT node has a single port, assume that it describes a panel and
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   60  	 * create a panel bridge.
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   61  	 */
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   62  	if ((output == RCAR_DU_OUTPUT_DPAD0 ||
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   63  	     output == RCAR_DU_OUTPUT_DPAD1) &&
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   64  	    rcar_du_encoder_count_ports(enc_node) == 1) {
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   65  		struct drm_panel *panel = of_drm_find_panel(enc_node);
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   66  
9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03   67  		if (IS_ERR(panel))
9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03   68  			return PTR_ERR(panel);
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   69  
89958b7cd9555a drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-09-04   70  		bridge = devm_drm_panel_bridge_add_typed(rcdu->dev, panel,
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   71  							 DRM_MODE_CONNECTOR_DPI);
9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03  @72  		if (IS_ERR(bridge))
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09  @73  			return PTR_ERR(no_free_ptr(bridge));
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   74  
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   75  		/*
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   76  		 * The reference taken by devm_drm_panel_bridge_add_typed() is
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   77  		 * released automatically. Take a second one for the __free()
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   78  		 * when this function will return.
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   79  		 */
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   80  		drm_bridge_get(bridge);
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   81  	} else {
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   82  		bridge = of_drm_find_and_get_bridge(enc_node);
9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03   83  		if (!bridge)
9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03   84  			return -EPROBE_DEFER;
53ced169373aab drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-04   85  
53ced169373aab drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-04   86  		if (output == RCAR_DU_OUTPUT_LVDS0 ||
53ced169373aab drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-04   87  		    output == RCAR_DU_OUTPUT_LVDS1)
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   88  			rcdu->lvds[output - RCAR_DU_OUTPUT_LVDS0] =
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   89  				drm_bridge_get(bridge);
957fe62d7d15f4 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Tomi Valkeinen   2022-08-24   90  
957fe62d7d15f4 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Tomi Valkeinen   2022-08-24   91  		if (output == RCAR_DU_OUTPUT_DSI0 ||
957fe62d7d15f4 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Tomi Valkeinen   2022-08-24   92  		    output == RCAR_DU_OUTPUT_DSI1)
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   93  			rcdu->dsi[output - RCAR_DU_OUTPUT_DSI0] =
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09   94  				drm_bridge_get(bridge);
73eb5476df7207 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-02   95  	}
ef67a902e946ad drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2013-06-17   96  
8e8fddab0d0acd drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-05   97  	/*
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22   98  	 * Create and initialize the encoder. On Gen3, skip the LVDS1 output if
9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03   99  	 * the LVDS1 encoder is used as a companion for LVDS0 in dual-link
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  100  	 * mode, or any LVDS output if it isn't connected. The latter may happen
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  101  	 * on D3 or E3 as the LVDS encoders are needed to provide the pixel
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  102  	 * clock to the DU, even when the LVDS outputs are not used.
8e8fddab0d0acd drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-05  103  	 */
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  104  	if (rcdu->info->gen >= 3) {
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  105  		if (output == RCAR_DU_OUTPUT_LVDS1 &&
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  106  		    rcar_lvds_dual_link(bridge))
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  107  			return -ENOLINK;
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  108  
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  109  		if ((output == RCAR_DU_OUTPUT_LVDS0 ||
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  110  		     output == RCAR_DU_OUTPUT_LVDS1) &&
187502afe87a0f drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  111  		    !rcar_lvds_is_connected(bridge))
9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03  112  			return -ENOLINK;
8e8fddab0d0acd drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-05  113  	}
8e8fddab0d0acd drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2019-03-05  114  
206c54710882d8 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  115  	dev_dbg(rcdu->dev, "initializing encoder %pOF for output %s\n",
206c54710882d8 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  116  		enc_node, rcar_du_output_name(output));
9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03  117  
7a1adbd2399023 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Kieran Bingham   2021-01-13  118  	renc = drmm_encoder_alloc(&rcdu->ddev, struct rcar_du_encoder, base,
7a1adbd2399023 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Kieran Bingham   2021-01-13  119  				  &rcar_du_encoder_funcs, DRM_MODE_ENCODER_NONE,
7a1adbd2399023 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Kieran Bingham   2021-01-13  120  				  NULL);
40f43730f43699 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Dan Carpenter    2023-02-27  121  	if (IS_ERR(renc))
40f43730f43699 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Dan Carpenter    2023-02-27  122  		return PTR_ERR(renc);
f5f16725edbc1a drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03  123  
7a1adbd2399023 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Kieran Bingham   2021-01-13  124  	renc->output = output;
4bf8e1962f91ee drivers/gpu/drm/rcar-du/rcar_du_lvds.c            Laurent Pinchart 2013-06-19  125  
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  126  	/* Attach the bridge to the encoder. */
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  127  	ret = drm_bridge_attach(&renc->base, bridge, NULL,
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  128  				DRM_BRIDGE_ATTACH_NO_CONNECTOR);
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  129  	if (ret) {
206c54710882d8 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  130  		dev_err(rcdu->dev,
206c54710882d8 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  131  			"failed to attach bridge %pOF for output %s (%d)\n",
206c54710882d8 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  132  			bridge->of_node, rcar_du_output_name(output), ret);
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  133  		return ret;
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  134  	}
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  135  
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  136  	/* Create the connector for the chain of bridges. */
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  137  	connector = drm_bridge_connector_init(&rcdu->ddev, &renc->base);
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  138  	if (IS_ERR(connector)) {
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  139  		dev_err(rcdu->dev,
206c54710882d8 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  140  			"failed to created connector for output %s (%ld)\n",
206c54710882d8 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2021-08-22  141  			rcar_du_output_name(output), PTR_ERR(connector));
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  142  		return PTR_ERR(connector);
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  143  	}
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  144  
c24110a8fd09ac drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-05-25  145  	return drm_connector_attach_encoder(connector, &renc->base);
4bf8e1962f91ee drivers/gpu/drm/rcar-du/rcar_du_lvds.c            Laurent Pinchart 2013-06-19  146  }
5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09  147  

:::::: The code at line 72 was first introduced by commit
:::::: 9a248605980a7547100d06ab9053f49f3ce43418 drm: rcar-du: Skip encoder allocation for LVDS1 in dual-link mode

:::::: TO: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>
:::::: CC: Laurent Pinchart <laurent.pinchart+renesas@ideasonboard.com>

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

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

* Re: drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c:72:6-12: inconsistent IS_ERR and PTR_ERR on line 73.
  2026-10-06  6:40 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c:72:6-12: inconsistent IS_ERR and PTR_ERR on line 73 kernel test robot
@ 2026-10-06  9:14 ` Luca Ceresoli
  2026-10-06 10:21   ` Laurent Pinchart
  0 siblings, 1 reply; 3+ messages in thread
From: Luca Ceresoli @ 2026-10-06  9:14 UTC (permalink / raw)
  To: kernel test robot, Luca Ceresoli
  Cc: oe-kbuild-all, linux-kernel, Linus Walleij, Laurent Pinchart,
	Louis Chauvet

Hello,

On Tue Oct 6, 2026 at 8:40 AM CEST, kernel test robot wrote:
> tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head:   2c3418fffa9d037b2038a6db48be63f9e2291806
> commit: 5b03d4907db93627ef48396f39c3455ce644c946 drm: rcar-du: encoder: convert to of_drm_find_and_get_bridge()
> date:   6 months ago
> config: sparc64-randconfig-r2106-20261005 (https://download.01.org/0day-ci/archive/20261006/202610060853.t5Q4BX8P-lkp@intel.com/config)
> compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 195c81658995a4b7531c30a12c5aef6cf2bbd671)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Fixes: 5b03d4907db9 ("drm: rcar-du: encoder: convert to of_drm_find_and_get_bridge()")
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202610060853.t5Q4BX8P-lkp@intel.com/
>
> cocci warnings: (new ones prefixed by >>)
>>> drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c:72:6-12: inconsistent IS_ERR and PTR_ERR on line 73.

...

> 9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03  @72  		if (IS_ERR(bridge))
> 5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09  @73  			return PTR_ERR(no_free_ptr(bridge));

This looks like a false positive to me. I guess this code would not trigger
any warning without the infixed no_free_ptr(). But no_free_ptr(p) is
transparent in the sense that it returns a copy of p.

So I guess no fix is needed for this driver. Just let me know in case I'm
wrong.

Luca

--
Luca Ceresoli, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com

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

* Re: drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c:72:6-12: inconsistent IS_ERR and PTR_ERR on line 73.
  2026-10-06  9:14 ` Luca Ceresoli
@ 2026-10-06 10:21   ` Laurent Pinchart
  0 siblings, 0 replies; 3+ messages in thread
From: Laurent Pinchart @ 2026-10-06 10:21 UTC (permalink / raw)
  To: Luca Ceresoli
  Cc: kernel test robot, oe-kbuild-all, linux-kernel, Linus Walleij,
	Louis Chauvet

On Tue, Oct 06, 2026 at 11:14:09AM +0200, Luca Ceresoli wrote:
> On Tue Oct 6, 2026 at 8:40 AM CEST, kernel test robot wrote:
> > tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> > head:   2c3418fffa9d037b2038a6db48be63f9e2291806
> > commit: 5b03d4907db93627ef48396f39c3455ce644c946 drm: rcar-du: encoder: convert to of_drm_find_and_get_bridge()
> > date:   6 months ago
> > config: sparc64-randconfig-r2106-20261005 (https://download.01.org/0day-ci/archive/20261006/202610060853.t5Q4BX8P-lkp@intel.com/config)
> > compiler: clang version 24.0.0git (https://github.com/llvm/llvm-project 195c81658995a4b7531c30a12c5aef6cf2bbd671)
> >
> > If you fix the issue in a separate patch/commit (i.e. not just a new version of
> > the same patch/commit), kindly add following tags
> > | Fixes: 5b03d4907db9 ("drm: rcar-du: encoder: convert to of_drm_find_and_get_bridge()")
> > | Reported-by: kernel test robot <lkp@intel.com>
> > | Closes: https://lore.kernel.org/oe-kbuild-all/202610060853.t5Q4BX8P-lkp@intel.com/
> >
> > cocci warnings: (new ones prefixed by >>)
> >>> drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c:72:6-12: inconsistent IS_ERR and PTR_ERR on line 73.
> 
> ...
> 
> > 9a248605980a75 drivers/gpu/drm/rcar-du/rcar_du_encoder.c         Laurent Pinchart 2020-12-03  @72  		if (IS_ERR(bridge))
> > 5b03d4907db936 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c Luca Ceresoli    2026-04-09  @73  			return PTR_ERR(no_free_ptr(bridge));
> 
> This looks like a false positive to me. I guess this code would not trigger
> any warning without the infixed no_free_ptr(). But no_free_ptr(p) is
> transparent in the sense that it returns a copy of p.
> 
> So I guess no fix is needed for this driver. Just let me know in case I'm
> wrong.

That's my understanding too. The coccinelle semantic patch probably
needs an update.

-- 
Regards,

Laurent Pinchart

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

end of thread, other threads:[~2026-10-06 10:21 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2026-10-06  6:40 drivers/gpu/drm/renesas/rcar-du/rcar_du_encoder.c:72:6-12: inconsistent IS_ERR and PTR_ERR on line 73 kernel test robot
2026-10-06  9:14 ` Luca Ceresoli
2026-10-06 10:21   ` Laurent Pinchart

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®