Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 454336 - app-emulation/lxc-0.8.0-r1: CONFIG_MACVLAN misleading warning
Summary: app-emulation/lxc-0.8.0-r1: CONFIG_MACVLAN misleading warning
Status: RESOLVED OBSOLETE
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Diego Elio Pettenò (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2013-01-27 20:57 UTC by Walter
Modified: 2014-10-18 17:05 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Walter 2013-01-27 20:57:28 UTC
The ebuild screams "CONFIG_MACVLAN: needed for internal (inter-container) networking" however it is actually not required for inter-container networking.

It is an optional, icky, layer 2-oriented solution for providing guest connectivity that is only required in specific situations.

Some viable (more generally useful, less icky, mostly layer 3 oriented)  alternatives to such a configuration can be viewed in lxc.conf(8) under the lxc.network.type directive.

In short: maybe warn if this is not present, but suggest changing the line to something more relaxed:

"CONFIG_MACVLAN: is disabled; lxc.network.type='macvlan' interfaces won't work. See lxc.conf(5)"
Comment 1 Doug Goldstein (RETIRED) gentoo-dev 2013-02-01 20:44:39 UTC
Honestly, more crap to read out of elog is a determent to most users. I understand in your case you don't want or need it. Build a modular kernel with that stuff on and ignore it. Simple fix.
Comment 2 Walter 2013-02-02 00:28:18 UTC
I agree, it could probably be dropped entirely without serious repercussion. I mean, the sky's the limit with network-related kernel feature warnings - IPv6? NAT? IMHO NAT would almost certainly be more relevant to most users. Also, LXC already includes lxc-checkconfig which IIRC provides better (and upstream-maintained) output about the important kernel features.

(... less to maintain, scope creep detected, *snip*!)
Comment 3 Doug Goldstein (RETIRED) gentoo-dev 2013-02-02 02:46:21 UTC
(In reply to comment #2)
> I agree, it could probably be dropped entirely without serious repercussion.
> I mean, the sky's the limit with network-related kernel feature warnings -
> IPv6? NAT? IMHO NAT would almost certainly be more relevant to most users.
> Also, LXC already includes lxc-checkconfig which IIRC provides better (and
> upstream-maintained) output about the important kernel features.
> 
> (... less to maintain, scope creep detected, *snip*!)

You drew the wrong conclusion from my comments. My comment was leave the warning in there. Just enable it in your kernel as a module. Its better to let people know about all the pieces they have to enabled instead of leaving them to debug some issue in lxc when the root cause is they didn't have something enabled in their kernel.

While lxc-checkconfig exists, its not the Gentoo way of notifying users of what they need to enable.
Comment 4 Walter 2013-02-03 07:10:23 UTC
The inclusion of a given feature as a module or hard-compiled is in my view a tangent to the original point of this bug issue report.

To my mind, drawing a clear distinction between "need to enable" and "might like to enable in some small percentage of cases" within the LXC ebuild's kernel option checks is the fundamental need.

It is probably true to say that LXC is unlike most other kernel option checking ebuilds in that it does not really require X or Y but rather a small number of major subsystems (themselves sometimes optional; YMMV), with a far greater quantity of stuff like the CONFIG_MACVLAN option being related but not required.

For example, IPv6 support is arguably equally related and used more frequently than CONFIG_MACVLAN. Though I would not see its inclusion as useful, in my view this also goes for CONFIG_MACVLAN. If they are included, they should be included in such a way that makes it clear that their absence is non-critical.

By contrast, what we have now is:
 A) some of these related kernel options are included, but not all of them
 B) they are described with custom strings, leading people to the wrong conclusions about their importance

I would suggest that going forward it makes sense to clearly delimit what people are mentally-burdened with when installing with some kind of easy-to-summarize rationale; following the Gentoo "Stay out of my way" mentality;

"The goal of Gentoo is to design tools and systems that allow a user to do that work as pleasantly and efficiently as possible, as they see fit. Our tools should be a joy to use, and should help the user to appreciate the richness of the Linux and free software community, and the flexibility of free software. This is only possible when the tool is designed to reflect and transmit the will of the user, and leave the possibilities open as to the final form of the raw materials (the source code.) If the tool forces the user to do things a particular way, then the tool is working against, rather than for, the user. We have all experienced situations where tools seem to be imposing their respective wills on us. This is backwards, and contrary to the Gentoo philosophy. "

In this case I would see the inclusion of checks for potentially related kernel features as probably useful. Right now red things that wrongly claim missing functionality that is in reality rarely used in a subset of cases is NOT in line with this philosophy.

I would encourage focusing on the truly required features and building some statement that makes it clear what the limits of the ebuild kernel config option checking is, eg: "Support for various LXC network topologies is a complex area and not within the scope of this ebuild; for more information see online documentation, lxc-checkconfig or man lxc.conf"
Comment 5 Markos Chandras (RETIRED) gentoo-dev 2014-10-18 17:05:40 UTC
0.8.X has been removed