Re: pinctrl-msm build error on Linus' tree

From: Guenter Roeck
Date: Wed Oct 08 2014 - 19:19:07 EST


On Wed, Oct 08, 2014 at 07:09:18PM -0400, Josh Boyer wrote:
> On Wed, Oct 8, 2014 at 6:49 PM, Josh Cartwright <joshc@xxxxxxxxxxxxxx> wrote:
> > Hey Josh-
> >
> > On Wed, Oct 08, 2014 at 06:42:55PM -0400, Josh Boyer wrote:
> >> We're hitting a build error on ARM with Linus' tree as of Linux
> >> v3.17-2860-gef0625b70dac :
> >>
> >> drivers/pinctrl/qcom/pinctrl-msm.c: In function 'msm_pinctrl_setup_pm_reset':
> >> drivers/pinctrl/qcom/pinctrl-msm.c:875:4: error: implicit declaration
> >> of function 'register_restart_handler'
> >> [-Werror=implicit-function-declaration]
> >> if (register_restart_handler(&pctrl->restart_nb))
> >> ^
> >> drivers/pinctrl/qcom/pinctrl-msm.c: In function 'msm_pinctrl_remove':
> >> drivers/pinctrl/qcom/pinctrl-msm.c:949:2: error: implicit declaration
> >> of function 'unregister_restart_handler'
> >> [-Werror=implicit-function-declaration]
> >> unregister_restart_handler(&pctrl->restart_nb);
> >> ^
> >> cc1: some warnings being treated as errors
> >>
> >> Looking at the git logs it seems this was added via:
> >>
> >> commit cf1fc187628913070c3e418ce0e205732435aa2f
> >> Author: Josh Cartwright <joshc@xxxxxxxxxxxxxx>
> >> Date: Tue Sep 23 15:59:53 2014 -0500
> >>
> >> pinctrl: qcom: use restart_notifier mechanism for ps_hold
> >>
> >>
> >> However, there is literally nothing else in the tree that calls or
> >> provides those functions:
> >>
> >> [jwboyer@vader linux]$ git grep unregister_restart_handler
> >> drivers/pinctrl/qcom/pinctrl-msm.c: unregister_restart_handler(&pctrl->resta
> >> [jwboyer@vader linux]$
> >>
> >>
> >> I'm rather confused. How was this commit built and tested?
> >
> > This may be my fault for not clearly stating that this particular patch
> > was dependent on Guenter's restart notifier patchset. This patch was
> > applied to linusw's tree without these patches. Perhaps it should be
> > dropped for now until the restart_notifier stuff lands?
>
> Thanks, that explains things. I'm not sure if Linus would do a revert
> at this point. I guess it depends on how fast he's going to merge
> Guenter's patches.
>
> Is there a reason this wasn't all brought in via one tree? Seems like
> it should have been.
>
Too many dependencies all over the place, and thus risk to create merge-time
conflicts. Besides pinctrl, the restart handler infrastructure is already
used by clock, power/restart, and watchdog drivers.

The idea was for me to provide a pointer to an immutable branch
with the infrastructure (which I did), and for all trees using it
to merge with that branch. This way the infrastructure would have been merged
automatically with its first user, and no separate pull request would have
been necessary. Again, I thought we had this well covered. Apparently not,
and of course the one tree who didn't merge the infrastructure got into
mainline first :-(.

Guenter
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/