* ixgbe / mdio dependancy error
@ 2019-01-02 15:48 Dave Jones
2019-01-02 16:16 ` Jeff Kirsher
2019-01-02 17:19 ` Jeff Kirsher
0 siblings, 2 replies; 7+ messages in thread
From: Dave Jones @ 2019-01-02 15:48 UTC (permalink / raw)
To: netdev
Cc: Stephen Douthit, Andrew Lunn, Florian Fainelli, Andrew Bowers,
Jeff Kirsher
If you build IXGBE=y, and MDIO_BUS=y, we currently fail the build like so:
MODPOST vmlinux.o
drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function `ixgbe_mdio_read':
/mnt/data/src/kernel/git-trees/linux-dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8801: undefined reference to `mdiobus_read'
drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function `ixgbe_remove':
/mnt/data/src/kernel/git-trees/linux-dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:11198: undefined reference to `mdiobus_unregister'
drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function `ixgbe_mdio_write':
/mnt/data/src/kernel/git-trees/linux-dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8824: undefined reference to `mdiobus_write'
drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o: In function `devm_mdiobus_alloc':
/mnt/data/src/kernel/git-trees/linux-dj/./include/linux/phy.h:264: undefined reference to `devm_mdiobus_alloc_size'
drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o: In function `ixgbe_mii_bus_init':
/mnt/data/src/kernel/git-trees/linux-dj/drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c:955: undefined reference to `devm_mdiobus_free'
/mnt/data/src/kernel/git-trees/linux-dj/drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c:952: undefined reference to `__mdiobus_register'
Makefile:1027: recipe for target 'vmlinux' failed
make: *** [vmlinux] Error 1
full .config is at http://paste.debian.net/1058334/
Dave
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ixgbe / mdio dependancy error
2019-01-02 15:48 ixgbe / mdio dependancy error Dave Jones
@ 2019-01-02 16:16 ` Jeff Kirsher
2019-01-02 17:19 ` Jeff Kirsher
1 sibling, 0 replies; 7+ messages in thread
From: Jeff Kirsher @ 2019-01-02 16:16 UTC (permalink / raw)
To: Dave Jones, netdev
Cc: Stephen Douthit, Andrew Lunn, Florian Fainelli, Andrew Bowers
[-- Attachment #1: Type: text/plain, Size: 1715 bytes --]
On Wed, 2019-01-02 at 10:48 -0500, Dave Jones wrote:
> If you build IXGBE=y, and MDIO_BUS=y, we currently fail the build
> like so:
>
> MODPOST vmlinux.o
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function
> `ixgbe_mdio_read':
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8801: undefined
> reference to `mdiobus_read'
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function
> `ixgbe_remove':
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:11198: undefined
> reference to `mdiobus_unregister'
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function
> `ixgbe_mdio_write':
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8824: undefined
> reference to `mdiobus_write'
> drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o: In function
> `devm_mdiobus_alloc':
> /mnt/data/src/kernel/git-trees/linux-dj/./include/linux/phy.h:264:
> undefined reference to `devm_mdiobus_alloc_size'
> drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o: In function
> `ixgbe_mii_bus_init':
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c:955: undefined
> reference to `devm_mdiobus_free'
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c:952: undefined
> reference to `__mdiobus_register'
> Makefile:1027: recipe for target 'vmlinux' failed
> make: *** [vmlinux] Error 1
>
>
> full .config is at http://paste.debian.net/1058334/
Hmm, did not see this in our compile testing. I am having our
validation team look further into this, to see if there is gap in our
testing.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ixgbe / mdio dependancy error
2019-01-02 15:48 ixgbe / mdio dependancy error Dave Jones
2019-01-02 16:16 ` Jeff Kirsher
@ 2019-01-02 17:19 ` Jeff Kirsher
2019-01-02 23:30 ` Steve Douthit
1 sibling, 1 reply; 7+ messages in thread
From: Jeff Kirsher @ 2019-01-02 17:19 UTC (permalink / raw)
To: Dave Jones, netdev
Cc: Stephen Douthit, Andrew Lunn, Florian Fainelli, Andrew Bowers
[-- Attachment #1: Type: text/plain, Size: 1730 bytes --]
On Wed, 2019-01-02 at 10:48 -0500, Dave Jones wrote:
> If you build IXGBE=y, and MDIO_BUS=y, we currently fail the build
> like so:
>
> MODPOST vmlinux.o
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function
> `ixgbe_mdio_read':
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8801: undefined
> reference to `mdiobus_read'
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function
> `ixgbe_remove':
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:11198: undefined
> reference to `mdiobus_unregister'
> drivers/net/ethernet/intel/ixgbe/ixgbe_main.o: In function
> `ixgbe_mdio_write':
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c:8824: undefined
> reference to `mdiobus_write'
> drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o: In function
> `devm_mdiobus_alloc':
> /mnt/data/src/kernel/git-trees/linux-dj/./include/linux/phy.h:264:
> undefined reference to `devm_mdiobus_alloc_size'
> drivers/net/ethernet/intel/ixgbe/ixgbe_phy.o: In function
> `ixgbe_mii_bus_init':
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c:955: undefined
> reference to `devm_mdiobus_free'
> /mnt/data/src/kernel/git-trees/linux-
> dj/drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c:952: undefined
> reference to `__mdiobus_register'
> Makefile:1027: recipe for target 'vmlinux' failed
> make: *** [vmlinux] Error 1
>
>
> full .config is at http://paste.debian.net/1058334/
This is because PHYLIB=m which forces MDIO_BUS=m. If you have IXGBE=y,
then PHYLIB and MDIO_BUS can't be modules. Working on a patch to
correct the issue.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ixgbe / mdio dependancy error
2019-01-02 17:19 ` Jeff Kirsher
@ 2019-01-02 23:30 ` Steve Douthit
2019-01-02 23:38 ` Jeff Kirsher
2019-01-02 23:42 ` Florian Fainelli
0 siblings, 2 replies; 7+ messages in thread
From: Steve Douthit @ 2019-01-02 23:30 UTC (permalink / raw)
To: jeffrey.t.kirsher@intel.com, Dave Jones, netdev@vger.kernel.org
Cc: Andrew Lunn, Florian Fainelli, Andrew Bowers
> This is because PHYLIB=m which forces MDIO_BUS=m. If you have IXGBE=y,
> then PHYLIB and MDIO_BUS can't be modules. Working on a patch to
> correct the issue.
There was a review comment to select MDIO_DEVICE instead of PHYLIB.
PHYLIB seems correct to me now that I'm looking at this again though. I
came up empty looking for any other drivers that select MDIO_DEVICE.
The objection was that DSA devices wouldn't need the PHYLIB API, so why
force it to be built-in. NET_DSA selects PHYLINK which selects PHYLIB.
I think we're ok going back to select PHYLIB if that was the only
problem.
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ixgbe / mdio dependancy error
2019-01-02 23:30 ` Steve Douthit
@ 2019-01-02 23:38 ` Jeff Kirsher
2019-01-02 23:42 ` Florian Fainelli
1 sibling, 0 replies; 7+ messages in thread
From: Jeff Kirsher @ 2019-01-02 23:38 UTC (permalink / raw)
To: Steve Douthit, Dave Jones, netdev@vger.kernel.org
Cc: Andrew Lunn, Florian Fainelli, Andrew Bowers
[-- Attachment #1: Type: text/plain, Size: 1075 bytes --]
On Wed, 2019-01-02 at 23:30 +0000, Steve Douthit wrote:
> > This is because PHYLIB=m which forces MDIO_BUS=m. If you have
> > IXGBE=y,
> > then PHYLIB and MDIO_BUS can't be modules. Working on a patch to
> > correct the issue.
>
> There was a review comment to select MDIO_DEVICE instead of PHYLIB.
> PHYLIB seems correct to me now that I'm looking at this again
> though. I
> came up empty looking for any other drivers that select MDIO_DEVICE.
>
> The objection was that DSA devices wouldn't need the PHYLIB API, so
> why
> force it to be built-in. NET_DSA selects PHYLINK which selects
> PHYLIB.
> I think we're ok going back to select PHYLIB if that was the only
> problem.
Unfortunately, we get into a recursive dependency issue when IPSec gets
involved, and IPSec is enabled by default.
I am looking at making MDIO_BUS support for ixgbe an option like IPSec,
DCB, DCA and HWMON. Where a user can select the option to have
MDIO_BUS support for DSA devices, that way we can add the requirement
that it requires !(IXGBE=y && MDIO_BUS=m).
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ixgbe / mdio dependancy error
2019-01-02 23:30 ` Steve Douthit
2019-01-02 23:38 ` Jeff Kirsher
@ 2019-01-02 23:42 ` Florian Fainelli
2019-01-02 23:46 ` Jeff Kirsher
1 sibling, 1 reply; 7+ messages in thread
From: Florian Fainelli @ 2019-01-02 23:42 UTC (permalink / raw)
To: Steve Douthit, jeffrey.t.kirsher@intel.com, Dave Jones,
netdev@vger.kernel.org
Cc: Andrew Lunn, Andrew Bowers
On 1/2/19 3:30 PM, Steve Douthit wrote:
>> This is because PHYLIB=m which forces MDIO_BUS=m. If you have IXGBE=y,
>> then PHYLIB and MDIO_BUS can't be modules. Working on a patch to
>> correct the issue.
>
> There was a review comment to select MDIO_DEVICE instead of PHYLIB.
> PHYLIB seems correct to me now that I'm looking at this again though. I
> came up empty looking for any other drivers that select MDIO_DEVICE.
>
> The objection was that DSA devices wouldn't need the PHYLIB API, so why
> force it to be built-in. NET_DSA selects PHYLINK which selects PHYLIB.
> I think we're ok going back to select PHYLIB if that was the only
> problem.
Apologies if this was a slightly misguided recommendation, I have to
admit, I did not consider a case where ixgbe would not be modular while
everything else it would now depend on is.
There is a similar pattern with any driver that e.g: has a HWMON
capability in that you must add something like:
depends on !FOO=y && DEPS=m or something like that.
--
Florian
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: ixgbe / mdio dependancy error
2019-01-02 23:42 ` Florian Fainelli
@ 2019-01-02 23:46 ` Jeff Kirsher
0 siblings, 0 replies; 7+ messages in thread
From: Jeff Kirsher @ 2019-01-02 23:46 UTC (permalink / raw)
To: Florian Fainelli, Steve Douthit, Dave Jones,
netdev@vger.kernel.org
Cc: Andrew Lunn, Andrew Bowers
[-- Attachment #1: Type: text/plain, Size: 1330 bytes --]
On Wed, 2019-01-02 at 15:42 -0800, Florian Fainelli wrote:
> On 1/2/19 3:30 PM, Steve Douthit wrote:
> > > This is because PHYLIB=m which forces MDIO_BUS=m. If you have
> > > IXGBE=y,
> > > then PHYLIB and MDIO_BUS can't be modules. Working on a patch to
> > > correct the issue.
> >
> > There was a review comment to select MDIO_DEVICE instead of PHYLIB.
> > PHYLIB seems correct to me now that I'm looking at this again
> > though. I
> > came up empty looking for any other drivers that select
> > MDIO_DEVICE.
> >
> > The objection was that DSA devices wouldn't need the PHYLIB API, so
> > why
> > force it to be built-in. NET_DSA selects PHYLINK which selects
> > PHYLIB.
> > I think we're ok going back to select PHYLIB if that was the only
> > problem.
>
> Apologies if this was a slightly misguided recommendation, I have to
> admit, I did not consider a case where ixgbe would not be modular
> while
> everything else it would now depend on is.
>
> There is a similar pattern with any driver that e.g: has a HWMON
> capability in that you must add something like:
>
> depends on !FOO=y && DEPS=m or something like that.
Yes, and DCA has that same format, which is what I am working on. Just
means that all the code added by Steve will need to be wrapped with the
config option.
[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 833 bytes --]
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2019-01-02 23:46 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-01-02 15:48 ixgbe / mdio dependancy error Dave Jones
2019-01-02 16:16 ` Jeff Kirsher
2019-01-02 17:19 ` Jeff Kirsher
2019-01-02 23:30 ` Steve Douthit
2019-01-02 23:38 ` Jeff Kirsher
2019-01-02 23:42 ` Florian Fainelli
2019-01-02 23:46 ` Jeff Kirsher
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).