Message ID | 20161202230451.1639318-1-arnd@arndb.de |
---|---|
State | Changes Requested, archived |
Delegated to: | David Miller |
Headers | show |
On Sat, 3 Dec 2016, Arnd Bergmann wrote: > ptp now depends on the optional POSIX_TIMERS setting and fails to build > if we select it without that: > > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > ERROR: "posix_clock_unregister" [drivers/ptp/ptp.ko] undefined! > ERROR: "posix_clock_register" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_unregister_source" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_event" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_register_source" [drivers/ptp/ptp.ko] undefined! > > It seems that two patches have collided here, the build failure > is a result of the combination. Changing the new option to 'imply' > as well fixes it. > > Fixes: 111fc64a237f ("liquidio CN23XX: VF registration") > Fixes: d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Acked-by: Nicolas Pitre <nico@linaro.org> > --- > drivers/net/ethernet/cavium/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/cavium/Kconfig b/drivers/net/ethernet/cavium/Kconfig > index bbc8bd16cb97..dcbce6cac63e 100644 > --- a/drivers/net/ethernet/cavium/Kconfig > +++ b/drivers/net/ethernet/cavium/Kconfig > @@ -77,7 +77,7 @@ config OCTEON_MGMT_ETHERNET > config LIQUIDIO_VF > tristate "Cavium LiquidIO VF support" > depends on 64BIT && PCI_MSI > - select PTP_1588_CLOCK > + imply PTP_1588_CLOCK > ---help--- > This driver supports Cavium LiquidIO Intelligent Server Adapter > based on CN23XX chips. > -- > 2.9.0 > >
On 12/02/2016 03:04 PM, Arnd Bergmann wrote: > ptp now depends on the optional POSIX_TIMERS setting and fails to build > if we select it without that: > > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > ERROR: "posix_clock_unregister" [drivers/ptp/ptp.ko] undefined! > ERROR: "posix_clock_register" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_unregister_source" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_event" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_register_source" [drivers/ptp/ptp.ko] undefined! > > It seems that two patches have collided here, the build failure > is a result of the combination. Changing the new option to 'imply' > as well fixes it. > > Fixes: 111fc64a237f ("liquidio CN23XX: VF registration") > Fixes: d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> I didn't know about this new "imply" thing. This seems like a plausible fix, so... Acked-by: David Daney <david.daney@cavium.com> Thanks for fixing this up. > --- > drivers/net/ethernet/cavium/Kconfig | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/drivers/net/ethernet/cavium/Kconfig b/drivers/net/ethernet/cavium/Kconfig > index bbc8bd16cb97..dcbce6cac63e 100644 > --- a/drivers/net/ethernet/cavium/Kconfig > +++ b/drivers/net/ethernet/cavium/Kconfig > @@ -77,7 +77,7 @@ config OCTEON_MGMT_ETHERNET > config LIQUIDIO_VF > tristate "Cavium LiquidIO VF support" > depends on 64BIT && PCI_MSI > - select PTP_1588_CLOCK > + imply PTP_1588_CLOCK > ---help--- > This driver supports Cavium LiquidIO Intelligent Server Adapter > based on CN23XX chips. >
Hi Arnd, [auto build test ERROR on net-next/master] url: https://github.com/0day-ci/linux/commits/Arnd-Bergmann/liquidio-imply-ptp-instead-of-select/20161203-084019 config: x86_64-allmodconfig compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901 reproduce: make ARCH=x86_64 allmodconfig make ARCH=x86_64 All errors (new ones prefixed by >>): >> drivers/net/ethernet/cavium/Kconfig:81: syntax error >> drivers/net/ethernet/cavium/Kconfig:80: unknown option "imply" make[2]: *** [allmodconfig] Error 1 make[1]: *** [allmodconfig] Error 2 make: *** [sub-make] Error 2 -- >> drivers/net/ethernet/cavium/Kconfig:81: syntax error >> drivers/net/ethernet/cavium/Kconfig:80: unknown option "imply" make[2]: *** [oldconfig] Error 1 make[1]: *** [oldconfig] Error 2 make: *** [sub-make] Error 2 -- >> drivers/net/ethernet/cavium/Kconfig:81: syntax error >> drivers/net/ethernet/cavium/Kconfig:80: unknown option "imply" make[2]: *** [olddefconfig] Error 1 make[2]: Target 'oldnoconfig' not remade because of errors. make[1]: *** [oldnoconfig] Error 2 make: *** [sub-make] Error 2 vim +81 drivers/net/ethernet/cavium/Kconfig d07a147f David Daney 2016-03-14 74 port on Cavium Networks' Octeon CN57XX, CN56XX, CN55XX, d07a147f David Daney 2016-03-14 75 CN54XX, CN52XX, and CN6XXX chips. d07a147f David Daney 2016-03-14 76 111fc64a Raghu Vatsavayi 2016-11-28 77 config LIQUIDIO_VF 111fc64a Raghu Vatsavayi 2016-11-28 78 tristate "Cavium LiquidIO VF support" 111fc64a Raghu Vatsavayi 2016-11-28 79 depends on 64BIT && PCI_MSI 2d6e65ca Arnd Bergmann 2016-12-03 @80 imply PTP_1588_CLOCK 111fc64a Raghu Vatsavayi 2016-11-28 @81 ---help--- 111fc64a Raghu Vatsavayi 2016-11-28 82 This driver supports Cavium LiquidIO Intelligent Server Adapter 111fc64a Raghu Vatsavayi 2016-11-28 83 based on CN23XX chips. 111fc64a Raghu Vatsavayi 2016-11-28 84 :::::: The code at line 81 was first introduced by commit :::::: 111fc64a237f231bc2d3187bdf8358eb7966e6a9 liquidio CN23XX: VF registration :::::: TO: Raghu Vatsavayi <rvatsavayi@caviumnetworks.com> :::::: CC: David S. Miller <davem@davemloft.net> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
From: Arnd Bergmann <arnd@arndb.de> Date: Sat, 3 Dec 2016 00:04:32 +0100 > ptp now depends on the optional POSIX_TIMERS setting and fails to build > if we select it without that: > > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > ERROR: "posix_clock_unregister" [drivers/ptp/ptp.ko] undefined! > ERROR: "posix_clock_register" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_unregister_source" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_event" [drivers/ptp/ptp.ko] undefined! > ERROR: "pps_register_source" [drivers/ptp/ptp.ko] undefined! > > It seems that two patches have collided here, the build failure > is a result of the combination. Changing the new option to 'imply' > as well fixes it. > > Fixes: 111fc64a237f ("liquidio CN23XX: VF registration") > Fixes: d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") > Signed-off-by: Arnd Bergmann <arnd@arndb.de> Like the kbuild robot, when I apply this it complains about 'imply' being an unknown option. I guess it worked for you because support for 'imply' exists in the -next tree and gets pulled in from somewhere else. In any event, as-is I cannot apply this.
On Sat, 3 Dec 2016, David Miller wrote: > From: Arnd Bergmann <arnd@arndb.de> > Date: Sat, 3 Dec 2016 00:04:32 +0100 > > > ptp now depends on the optional POSIX_TIMERS setting and fails to build > > if we select it without that: > > > > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > > ERROR: "posix_clock_unregister" [drivers/ptp/ptp.ko] undefined! > > ERROR: "posix_clock_register" [drivers/ptp/ptp.ko] undefined! > > ERROR: "pps_unregister_source" [drivers/ptp/ptp.ko] undefined! > > ERROR: "pps_event" [drivers/ptp/ptp.ko] undefined! > > ERROR: "pps_register_source" [drivers/ptp/ptp.ko] undefined! > > > > It seems that two patches have collided here, the build failure > > is a result of the combination. Changing the new option to 'imply' > > as well fixes it. > > > > Fixes: 111fc64a237f ("liquidio CN23XX: VF registration") > > Fixes: d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") > > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > > Like the kbuild robot, when I apply this it complains about 'imply' being > an unknown option. > > I guess it worked for you because support for 'imply' exists in the -next > tree and gets pulled in from somewhere else. Exact. > In any event, as-is I cannot apply this. It should be carried in linux-next for the time being, and suggested as a probable "merge resolution" to Linus when submitting your tree for merging. I think that's the best that can be done. Nicolas
From: Nicolas Pitre <nicolas.pitre@linaro.org> Date: Mon, 5 Dec 2016 10:44:32 -0500 (EST) > On Sat, 3 Dec 2016, David Miller wrote: > >> From: Arnd Bergmann <arnd@arndb.de> >> Date: Sat, 3 Dec 2016 00:04:32 +0100 >> >> > ptp now depends on the optional POSIX_TIMERS setting and fails to build >> > if we select it without that: >> > >> > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) >> > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) >> > ERROR: "posix_clock_unregister" [drivers/ptp/ptp.ko] undefined! >> > ERROR: "posix_clock_register" [drivers/ptp/ptp.ko] undefined! >> > ERROR: "pps_unregister_source" [drivers/ptp/ptp.ko] undefined! >> > ERROR: "pps_event" [drivers/ptp/ptp.ko] undefined! >> > ERROR: "pps_register_source" [drivers/ptp/ptp.ko] undefined! >> > >> > It seems that two patches have collided here, the build failure >> > is a result of the combination. Changing the new option to 'imply' >> > as well fixes it. >> > >> > Fixes: 111fc64a237f ("liquidio CN23XX: VF registration") >> > Fixes: d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") >> > Signed-off-by: Arnd Bergmann <arnd@arndb.de> >> >> Like the kbuild robot, when I apply this it complains about 'imply' being >> an unknown option. >> >> I guess it worked for you because support for 'imply' exists in the -next >> tree and gets pulled in from somewhere else. > > Exact. > >> In any event, as-is I cannot apply this. > > It should be carried in linux-next for the time being, and suggested as > a probable "merge resolution" to Linus when submitting your tree for > merging. I think that's the best that can be done. This means the build of pure net-next is broken, which is unacceptble, as this is the tree that many developers do their work and build tests against. You cannot have the proper functioning of net-next depend upon something not in that tree. Therefore, you must resolve this without the 'imply' keyword somehow. Thanks.
On Mon, 5 Dec 2016, David Miller wrote: > From: Nicolas Pitre <nicolas.pitre@linaro.org> > Date: Mon, 5 Dec 2016 10:44:32 -0500 (EST) > > > On Sat, 3 Dec 2016, David Miller wrote: > > > >> From: Arnd Bergmann <arnd@arndb.de> > >> Date: Sat, 3 Dec 2016 00:04:32 +0100 > >> > >> > ptp now depends on the optional POSIX_TIMERS setting and fails to build > >> > if we select it without that: > >> > > >> > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > >> > warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) > >> > ERROR: "posix_clock_unregister" [drivers/ptp/ptp.ko] undefined! > >> > ERROR: "posix_clock_register" [drivers/ptp/ptp.ko] undefined! > >> > ERROR: "pps_unregister_source" [drivers/ptp/ptp.ko] undefined! > >> > ERROR: "pps_event" [drivers/ptp/ptp.ko] undefined! > >> > ERROR: "pps_register_source" [drivers/ptp/ptp.ko] undefined! > >> > > >> > It seems that two patches have collided here, the build failure > >> > is a result of the combination. Changing the new option to 'imply' > >> > as well fixes it. > >> > > >> > Fixes: 111fc64a237f ("liquidio CN23XX: VF registration") > >> > Fixes: d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") > >> > Signed-off-by: Arnd Bergmann <arnd@arndb.de> > >> > >> Like the kbuild robot, when I apply this it complains about 'imply' being > >> an unknown option. > >> > >> I guess it worked for you because support for 'imply' exists in the -next > >> tree and gets pulled in from somewhere else. > > > > Exact. > > > >> In any event, as-is I cannot apply this. > > > > It should be carried in linux-next for the time being, and suggested as > > a probable "merge resolution" to Linus when submitting your tree for > > merging. I think that's the best that can be done. > > This means the build of pure net-next is broken, which is unacceptble, as > this is the tree that many developers do their work and build tests against. Why would it be broken? The only thing that needs to happen is for that "select" to be turned into a "imply" when your tree is merged into Linus' tree. Or when your tree is merged into linux-next (I'm sure Stephen can carry a patch to that effect). It doesn't have to live in net-next directly. The "imply" support has been available in linux-next for almost a month now, and it has been discussed for much longer than that. And if people forget then we'll fix it then. That's not a big issue. Nicolas
diff --git a/drivers/net/ethernet/cavium/Kconfig b/drivers/net/ethernet/cavium/Kconfig index bbc8bd16cb97..dcbce6cac63e 100644 --- a/drivers/net/ethernet/cavium/Kconfig +++ b/drivers/net/ethernet/cavium/Kconfig @@ -77,7 +77,7 @@ config OCTEON_MGMT_ETHERNET config LIQUIDIO_VF tristate "Cavium LiquidIO VF support" depends on 64BIT && PCI_MSI - select PTP_1588_CLOCK + imply PTP_1588_CLOCK ---help--- This driver supports Cavium LiquidIO Intelligent Server Adapter based on CN23XX chips.
ptp now depends on the optional POSIX_TIMERS setting and fails to build if we select it without that: warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) warning: (LIQUIDIO_VF && TI_CPTS) selects PTP_1588_CLOCK which has unmet direct dependencies (NET && POSIX_TIMERS) ERROR: "posix_clock_unregister" [drivers/ptp/ptp.ko] undefined! ERROR: "posix_clock_register" [drivers/ptp/ptp.ko] undefined! ERROR: "pps_unregister_source" [drivers/ptp/ptp.ko] undefined! ERROR: "pps_event" [drivers/ptp/ptp.ko] undefined! ERROR: "pps_register_source" [drivers/ptp/ptp.ko] undefined! It seems that two patches have collided here, the build failure is a result of the combination. Changing the new option to 'imply' as well fixes it. Fixes: 111fc64a237f ("liquidio CN23XX: VF registration") Fixes: d1cbfd771ce8 ("ptp_clock: Allow for it to be optional") Signed-off-by: Arnd Bergmann <arnd@arndb.de> --- drivers/net/ethernet/cavium/Kconfig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)