1
0
Fork 0
mirror of synced 2025-03-06 20:59:54 +01:00
linux/drivers/net/tokenring
Al Viro da09128685 CONFIG_TR/CONFIG_LLC: work around the problem with select
As it is, with PCI/ISA/MCA/CCW all set to n and PCMCIA set to m
setting TR to y will set LLC to m, with very unpleasant results -
net/802/psnap gets picked into obj-y, resulting in the kernel
that won't link - psnap calls functions from llc.  The cause,
AFAICS, is that kconfig gets rev_dep for LLC containing
|| TR && (deps for TR)
and even though TR is boolean, both LLC and PCMCIA are tristate
and that thing becomes || y && (n || m), i.e. || m.  The reason
for dependency on PCMCIA is that when none of PCI, ISA, MCA, CCW
or PCMCIA is set there'll be no tokenring drivers, so there's no
point building tokenring core.  Proper fix probably belongs in
kconfig (we need strict and, such that y <strict_and> m would be
y, so that rev_deps added for tristate selected by bool would
use that instead of &&; we'd have || TR <strict_and> (deps for TR)
in this case), but it's a rather intrusive change.  There's an
easy workaround in case of TR -> LLC select, namely to have a def_bool y
symbol sitting under if TR and have that symbol selecting LLC.
Kudos to johill for suggesting that one...

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: David S. Miller <davem@davemloft.net>
2012-02-07 13:06:14 -05:00
..
3c359.c net: remove use of ndo_set_multicast_list in drivers 2011-08-17 20:22:03 -07:00
3c359.h 3C359: use request_firmware 2009-03-30 20:02:50 +05:30
abyss.c drivers/net/: use DEFINE_PCI_DEVICE_TABLE() 2010-01-07 23:54:26 -08:00
abyss.h MAINTAINERS: remove Adam Fritzler, remove his email address in other sources 2008-02-03 16:36:24 +02:00
ibmtr.c net: remove use of ndo_set_multicast_list in drivers 2011-08-17 20:22:03 -07:00
ibmtr_cs.c ixbmtr_cs: Move the IBM PCMCIA Token Ring driver 2011-08-27 00:58:39 -07:00
Kconfig CONFIG_TR/CONFIG_LLC: work around the problem with select 2012-02-07 13:06:14 -05:00
lanstreamer.c net: remove use of ndo_set_multicast_list in drivers 2011-08-17 20:22:03 -07:00
lanstreamer.h lanstreamer: convert to internal network stats 2009-01-21 14:02:27 -08:00
madgemc.c drivers/net: Remove casts of void * 2011-06-21 15:48:29 -07:00
madgemc.h MAINTAINERS: remove Adam Fritzler, remove his email address in other sources 2008-02-03 16:36:24 +02:00
Makefile ixbmtr_cs: Move the IBM PCMCIA Token Ring driver 2011-08-27 00:58:39 -07:00
olympic.c net: remove use of ndo_set_multicast_list in drivers 2011-08-17 20:22:03 -07:00
olympic.h olympic: convert to internal network device stats 2009-01-21 14:02:29 -08:00
proteon.c drivers/net: return operator cleanup 2010-09-26 18:34:29 -07:00
skisa.c tokenring: convert drivers to net_device_ops 2009-03-27 00:46:43 -07:00
smctr.c net: remove use of ndo_set_multicast_list in drivers 2011-08-17 20:22:03 -07:00
smctr.h drivers/net/tokenring: fix sparse warning: cast truncates bits from const value 2009-02-17 19:49:21 -08:00
tms380tr.c net: remove use of ndo_set_multicast_list in drivers 2011-08-17 20:22:03 -07:00
tms380tr.h Fix common misspellings 2011-03-31 11:26:23 -03:00
tmspci.c tmspci: fix tr%d in printk 2010-09-21 18:04:44 -07:00