On Sun, Oct 12, 2014 at 4:35 AM, Manuel Bouyer <bou...@antioche.eu.org> wrote: > On Sun, Oct 12, 2014 at 04:23:17AM +0900, Masao Uebayashi wrote: >> On Sun, Oct 12, 2014 at 3:48 AM, Manuel Bouyer <bou...@antioche.eu.org> >> wrote: >> > On Sun, Oct 12, 2014 at 03:35:48AM +0900, Masao Uebayashi wrote: >> >> On Sun, Oct 12, 2014 at 3:06 AM, Manuel Bouyer <bou...@antioche.eu.org> >> >> wrote: >> >> > On Sun, Oct 12, 2014 at 12:17:22AM +0900, Masao Uebayashi wrote: >> >> >> On Sun, Oct 12, 2014 at 12:05 AM, Manuel Bouyer >> >> >> <bou...@antioche.eu.org> wrote: >> >> >> > On Sat, Oct 11, 2014 at 09:50:03AM +0000, Masao Uebayashi wrote: >> >> >> >> Module Name: src >> >> >> >> Committed By: uebayasi >> >> >> >> Date: Sat Oct 11 09:50:03 UTC 2014 >> >> >> >> >> >> >> >> Modified Files: >> >> >> >> src/sys/arch/amd64/conf: XEN3_DOM0 std.xen >> >> >> >> >> >> >> >> Log Message: >> >> >> >> Don't include std.ath_hal for XEN3_DOMU. >> >> >> > >> >> >> > Why ? >> >> >> > We still support PCI pass-through, so we could have a ath in a domU >> >> >> >> >> >> In that case you have to enable xpci/pci at first. >> >> >> >> >> >> Including "std.ath_hal" means that you pull in ath device code in your >> >> >> kernel. But you don't have no parent buses. This might be OK for >> >> >> ath(4), but in general, it means that config(1) doesn't resolve >> >> >> dependency, and your kernel may be bloated by unnecessary code. >> >> > >> >> > why isn't this compiled in only when ath(4) is inclued in config file ? >> >> > isn't that what attributes are for ? >> >> >> >> I don't understand. If you say "config file", is it files.* >> >> (definition) or std.* (selection)? >> > >> > OK, I see. But I still think config should be able to include theses >> > only if ath or athn is there; wouldn't adding " & ath" at appropriate >> > places >> > in files.ath_hal be enough for this to happen ? >> >> Instead of: >> >> ath_common_files.c ath & athn >> >> You can do: >> >> define ath: ath_common >> define athn: ath_common >> define ath_common >> ath_common_files.c ath_common >> >> I don't understand why you need & or | or those expressions. I think >> >99% are file with dependency. Or do you want more complex world like >> this? >> >> http://nxr.netbsd.org/source/xref/src-freebsd/sys/conf/files > > No, I just want e.g. "options ATHHAL_AR5210" to be a noop if > ath(4) is not inclued in the kernel config file. > This way you don't need to mess with these options at all, unless > you really want a stripped-down kernel.
Understood. The problem is, there are options that select something, and those that define flags/params. Attributes (modules) that are neighter (pseudo) devices or filesystems are selected only by options. De-selection ("no ...") has the same problem I'll consider this.