Re: pinctrl-msm build error on Linus' tree

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


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?
>

Looks like the pinctrl tree did not include the merge with the immutable
branch with the necessary infrastructure in its pull request to Linus :-(.
As for how it was tested in the pinctrl tree, no idea. Maybe pinctrl-msm has
some dependency which was missing in the pinctrl tree and came in through
a different pull request.

For this to build, you'll need to merge

git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging.git restart-handler-for-v3.18

which was supposed to be merged by all trees using it, to avoid exactly
this problem (clk, power/restart, and watchdog are the other trees I am
aware of).

Best solution might be for Linus to pull the above tag directly, after
screaming at me appropriately. Sorry, I thought we had this well covered.

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/