I've added the linaro-dev list to the cc as I think my answer is useful
for everyone working with Linaro's kernels...

On Tue, 2013-02-19 at 21:54 +0530, Viresh Kumar wrote:
> On Feb 19, 2013 8:50 PM, "Dietmar Eggemann" <dietmar.eggem...@arm.com>
> wrote:
> >
> > there're a couple of config switches for android and ubuntu:
> >
> > There are 9 config switches for andoid and 4 for ubuntu.
> >
> > $ ./scripts/kconfig/merge_config.sh linaro/configs/linaro-base.conf
> > linaro/configs/vexpress.conf linaro/configs/big-LITTLE-MP.conf
> > linaro/configs/ubuntu-minimal.conf | grep "^Actual value" | wc -l
> >
> > $ ./scripts/kconfig/merge_config.sh linaro/configs/linaro-base.conf
> > linaro/configs/vexpress.conf linaro/configs/big-LITTLE-MP.conf
> > linaro/configs/android.conf | grep "^Actual value" | wc -l
> >
> > which have a problem:
> >
> > Value requested for CONFIG_FOO not in final .config
> > Requested value:  # CONFIG_FOO is not set
> > Actual value:
> >
> > Value requested for CONFIG_BAR not in final
> > .config
> > Requested value:  CONFIG_BAR=y
> > Actual value:     # CONFIG_BAR is not set
> >
> > My question is: Is there anybody making sure that those config
> fragments
> > stay in sync with the release?

There isn't any one person making sure things stay in sync, though
occasionally I have a look; if you think there is a bug, you should let
me know or raise a bug in Launchpad (linaro-android or linaro-ubuntu
projects?).

Note however, there are always going to be warnings when building a
kernel config from a set of config fragments. The usual valid reasons
are:

1. The platform enables a feature which isn't supported by a particular
hardware device. E.g. Android has USB_G_ANDROID ("Android Composite
Gadget") which requires the device to support USB OTG, which some don't
(like Versatile Express).

2. The device wants to override a platform or Linaro default for
whatever reason.

3. We have redundant options there to avoid bugs and wasted effort when
people tweak other options.


For the specific case of the warnings we get for vexpress, I wouldn't
consider any of them to be bugs. These are...

1. For CONFIG_OABI_COMPAT, see commit message for when I added this:
http://git.linaro.org/gitweb?p=kernel/configs.git;a=commit;h=e1fccb9e6bf7dc077e0b8367c957e8df52cb8611

2. For CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND we are deliberately
overriding the defaults in earlier platform configs. (That's part of the
usecase for config fragments, later, more specific config fragments
overriding earlier more generic ones.)

3. CONFIG_ENABLE_DEFAULT_TRACERS is there so Gator works. The fact that
the recent addition of CONFIG_FUNCTION_TRACER in linaro-base.conf causes
GENERIC_TRACER to be selected and disable ENABLE_DEFAULT_TRACERS (as
it's a subset of tracing) is unfortunate, but if we removed
ENABLE_DEFAULT_TRACERS then everything would break if anyone decided
that as function tracer bloats the kernel and make it slower we should
disable it again.

4. CONFIG_VEXPRESS_TC2_CPUIDLE is there so the old TC2 power management
drivers work should I or someone else decided to drop the new drivers
from there tree. (Unlikely, and once the driver code if properly
consolidated I'll remove this old config option).

5. The rest of the warnings are Android options which are set but
require features (like runtime power management or USB OTG) which aren't
actually enabled on vexpress.


Cheers

-- 
Tixy





_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to