Message ID | 20210723150944.528c10af@canb.auug.org.au (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | linux-next: build failure after merge of the driver-core tree | expand |
Hello Stephen, On Fri, Jul 23, 2021 at 03:09:44PM +1000, Stephen Rothwell wrote: > Hi all, > > After merging the driver-core tree, today's linux-next build (arm > multi_v7_defconfig) failed like this: > > drivers/gpu/drm/drm_dp_aux_bus.c:106:13: error: initialization of 'void (*)(struct device *)' from incompatible pointer type 'int (*)(struct device *)' [-Werror=incompatible-pointer-types] > 106 | .remove = dp_aux_ep_remove, > | ^~~~~~~~~~~~~~~~ > drivers/gpu/drm/drm_dp_aux_bus.c:106:13: note: (near initialization for 'dp_aux_bus_type.remove') > > Caused by commit > > aeb33699fc2c ("drm: Introduce the DP AUX bus") > > from the drm tree interacting with commit > > fc7a6209d571 ("bus: Make remove callback return void") > > from the driver-core tree. > > I applied the following merge fix patch. > > From: Stephen Rothwell <sfr@canb.auug.org.au> > Date: Fri, 23 Jul 2021 14:58:25 +1000 > Subject: [PATCH] fix for "drm: Introduce the DP AUX bus" > > interaction with "bus: Make remove callback return void" > > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> > --- > drivers/gpu/drm/drm_dp_aux_bus.c | 5 +---- > 1 file changed, 1 insertion(+), 4 deletions(-) > > diff --git a/drivers/gpu/drm/drm_dp_aux_bus.c b/drivers/gpu/drm/drm_dp_aux_bus.c > index e49a70f3691b..298ea7a49591 100644 > --- a/drivers/gpu/drm/drm_dp_aux_bus.c > +++ b/drivers/gpu/drm/drm_dp_aux_bus.c > @@ -67,9 +67,8 @@ static int dp_aux_ep_probe(struct device *dev) > * > * Calls through to the endpoint driver remove. > * > - * Return: 0 if no error or negative error code. > */ > -static int dp_aux_ep_remove(struct device *dev) > +static void dp_aux_ep_remove(struct device *dev) > { > struct dp_aux_ep_driver *aux_ep_drv = to_dp_aux_ep_drv(dev->driver); > struct dp_aux_ep_device *aux_ep = to_dp_aux_ep_dev(dev); > @@ -77,8 +76,6 @@ static int dp_aux_ep_remove(struct device *dev) > if (aux_ep_drv->remove) > aux_ep_drv->remove(aux_ep); > dev_pm_domain_detach(dev, true); > - > - return 0; > } This looks right. Greg provided a tag containing fc7a6209d571 ("bus: Make remove callback return void") at git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git tags/bus_remove_return_void-5.15 (see https://lore.kernel.org/lkml/YPkwQwf0dUKnGA7L@kroah.com). It would be great if this could be merged into the drm tree with the above diff squashed into the merge commit. Best regards Uwe
On Fri, Jul 23, 2021 at 7:35 AM Uwe Kleine-König <u.kleine-koenig@pengutronix.de> wrote: > On Fri, Jul 23, 2021 at 03:09:44PM +1000, Stephen Rothwell wrote: > > After merging the driver-core tree, today's linux-next build (arm > > multi_v7_defconfig) failed like this: > > > > drivers/gpu/drm/drm_dp_aux_bus.c:106:13: error: initialization of 'void (*)(struct device *)' from incompatible pointer type 'int (*)(struct device *)' [-Werror=incompatible-pointer-types] > > 106 | .remove = dp_aux_ep_remove, > > | ^~~~~~~~~~~~~~~~ > > drivers/gpu/drm/drm_dp_aux_bus.c:106:13: note: (near initialization for 'dp_aux_bus_type.remove') > > > > Caused by commit > > > > aeb33699fc2c ("drm: Introduce the DP AUX bus") > > > > from the drm tree interacting with commit > > > > fc7a6209d571 ("bus: Make remove callback return void") > > > > from the driver-core tree. > > > > I applied the following merge fix patch. > > > > From: Stephen Rothwell <sfr@canb.auug.org.au> > > Date: Fri, 23 Jul 2021 14:58:25 +1000 > > Subject: [PATCH] fix for "drm: Introduce the DP AUX bus" > > > > interaction with "bus: Make remove callback return void" > > > > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> > > --- > > drivers/gpu/drm/drm_dp_aux_bus.c | 5 +---- > > 1 file changed, 1 insertion(+), 4 deletions(-) > > > > diff --git a/drivers/gpu/drm/drm_dp_aux_bus.c b/drivers/gpu/drm/drm_dp_aux_bus.c > > index e49a70f3691b..298ea7a49591 100644 > > --- a/drivers/gpu/drm/drm_dp_aux_bus.c > > +++ b/drivers/gpu/drm/drm_dp_aux_bus.c > > @@ -67,9 +67,8 @@ static int dp_aux_ep_probe(struct device *dev) > > * > > * Calls through to the endpoint driver remove. > > * > > - * Return: 0 if no error or negative error code. > > */ > > -static int dp_aux_ep_remove(struct device *dev) > > +static void dp_aux_ep_remove(struct device *dev) > > { > > struct dp_aux_ep_driver *aux_ep_drv = to_dp_aux_ep_drv(dev->driver); > > struct dp_aux_ep_device *aux_ep = to_dp_aux_ep_dev(dev); > > @@ -77,8 +76,6 @@ static int dp_aux_ep_remove(struct device *dev) > > if (aux_ep_drv->remove) > > aux_ep_drv->remove(aux_ep); > > dev_pm_domain_detach(dev, true); > > - > > - return 0; > > } > > This looks right. > > Greg provided a tag containing fc7a6209d571 ("bus: Make remove callback > return void") at > > git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git tags/bus_remove_return_void-5.15 > > (see https://lore.kernel.org/lkml/YPkwQwf0dUKnGA7L@kroah.com). > > It would be great if this could be merged into the drm tree with the > above diff squashed into the merge commit. +1. Gr{oetje,eeting}s, Geert
Hi, On Tue, Aug 10, 2021 at 5:13 AM Geert Uytterhoeven <geert@linux-m68k.org> wrote: > > On Fri, Jul 23, 2021 at 7:35 AM Uwe Kleine-König > <u.kleine-koenig@pengutronix.de> wrote: > > On Fri, Jul 23, 2021 at 03:09:44PM +1000, Stephen Rothwell wrote: > > > After merging the driver-core tree, today's linux-next build (arm > > > multi_v7_defconfig) failed like this: > > > > > > drivers/gpu/drm/drm_dp_aux_bus.c:106:13: error: initialization of 'void (*)(struct device *)' from incompatible pointer type 'int (*)(struct device *)' [-Werror=incompatible-pointer-types] > > > 106 | .remove = dp_aux_ep_remove, > > > | ^~~~~~~~~~~~~~~~ > > > drivers/gpu/drm/drm_dp_aux_bus.c:106:13: note: (near initialization for 'dp_aux_bus_type.remove') > > > > > > Caused by commit > > > > > > aeb33699fc2c ("drm: Introduce the DP AUX bus") > > > > > > from the drm tree interacting with commit > > > > > > fc7a6209d571 ("bus: Make remove callback return void") > > > > > > from the driver-core tree. > > > > > > I applied the following merge fix patch. > > > > > > From: Stephen Rothwell <sfr@canb.auug.org.au> > > > Date: Fri, 23 Jul 2021 14:58:25 +1000 > > > Subject: [PATCH] fix for "drm: Introduce the DP AUX bus" > > > > > > interaction with "bus: Make remove callback return void" > > > > > > Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> > > > --- > > > drivers/gpu/drm/drm_dp_aux_bus.c | 5 +---- > > > 1 file changed, 1 insertion(+), 4 deletions(-) > > > > > > diff --git a/drivers/gpu/drm/drm_dp_aux_bus.c b/drivers/gpu/drm/drm_dp_aux_bus.c > > > index e49a70f3691b..298ea7a49591 100644 > > > --- a/drivers/gpu/drm/drm_dp_aux_bus.c > > > +++ b/drivers/gpu/drm/drm_dp_aux_bus.c > > > @@ -67,9 +67,8 @@ static int dp_aux_ep_probe(struct device *dev) > > > * > > > * Calls through to the endpoint driver remove. > > > * > > > - * Return: 0 if no error or negative error code. > > > */ > > > -static int dp_aux_ep_remove(struct device *dev) > > > +static void dp_aux_ep_remove(struct device *dev) > > > { > > > struct dp_aux_ep_driver *aux_ep_drv = to_dp_aux_ep_drv(dev->driver); > > > struct dp_aux_ep_device *aux_ep = to_dp_aux_ep_dev(dev); > > > @@ -77,8 +76,6 @@ static int dp_aux_ep_remove(struct device *dev) > > > if (aux_ep_drv->remove) > > > aux_ep_drv->remove(aux_ep); > > > dev_pm_domain_detach(dev, true); > > > - > > > - return 0; > > > } > > > > This looks right. > > > > Greg provided a tag containing fc7a6209d571 ("bus: Make remove callback > > return void") at > > > > git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core.git tags/bus_remove_return_void-5.15 > > > > (see https://lore.kernel.org/lkml/YPkwQwf0dUKnGA7L@kroah.com). > > > > It would be great if this could be merged into the drm tree with the > > above diff squashed into the merge commit. > > +1. I looked at trying to do this but I think it's beyond the scope of privileges that I'm granted as a drm_misc committer (not a drm_misc maintainer). Adding the official maintainers [1]. Maarten/Maxime/Thomas would this be something you could do? [1] https://drm.pages.freedesktop.org/maintainer-tools/repositories.html -Doug
diff --git a/drivers/gpu/drm/drm_dp_aux_bus.c b/drivers/gpu/drm/drm_dp_aux_bus.c index e49a70f3691b..298ea7a49591 100644 --- a/drivers/gpu/drm/drm_dp_aux_bus.c +++ b/drivers/gpu/drm/drm_dp_aux_bus.c @@ -67,9 +67,8 @@ static int dp_aux_ep_probe(struct device *dev) * * Calls through to the endpoint driver remove. * - * Return: 0 if no error or negative error code. */ -static int dp_aux_ep_remove(struct device *dev) +static void dp_aux_ep_remove(struct device *dev) { struct dp_aux_ep_driver *aux_ep_drv = to_dp_aux_ep_drv(dev->driver); struct dp_aux_ep_device *aux_ep = to_dp_aux_ep_dev(dev); @@ -77,8 +76,6 @@ static int dp_aux_ep_remove(struct device *dev) if (aux_ep_drv->remove) aux_ep_drv->remove(aux_ep); dev_pm_domain_detach(dev, true); - - return 0; } /**