On Tue, May 12, 2020 at 5:11 PM Quentin Perret <[email protected]> wrote: > > On Tuesday 12 May 2020 at 16:08:56 (+0200), Rafael J. Wysocki wrote: > > If some piece of kernel code is modular, it still needs to be build. > > The difference is when and how it gets loaded, so can you possibly > > elaborate here? > > Sure thing, sorry if that wasn't clear.
No worries. > The end goal with GKI is the following: Google will release a single > binary kernel image (signed, etc etc) that all devices using a given > Android version will be required to use. That image is however going to > be only for the core of the kernel (no drivers or anything of the sort). > Vendors and OEMs, on their end, will be responsible to build and ship > GKI-compatible modules for their respective devices. So, Android devices > will eventually ship with a Google-issued GKI, plus a bunch of > vendor-provided modules loaded during boot. If that is the case, then I absolutely think that schedutil should be part of the GKI. Moreover, that would have been my opinion even if it had been modular in the first place. > This is a significant shift from the current model where vendors > completely own the kernel, and are largely free to use the kernel config > they want. Today, those who don't use schedutil are free to turn the > config off, for example. So why is this regarded as a good thing? > But GKI changes that. The 'core' GKI config is effectively imposed to > the entire ecosystem. As of now, because it is 'bool' we have no choice > but to compile schedutil in the core GKI as some (most) partners use it. > But as you can imagine, that is not the preferred option of those who > _don't_ use schedutil. OTOH, it may as well be an incentive for them to switch over and report problems with it that they see. I absolutely would like to make schedutil the clearly preferred option and IMO avoiding to use it, especially for non-technical reasons, should be clearly less attractive. > Modularizing avoids any potential friction since > the vendors who want to use it will be able load the module, and the > others will simply not. That really is the reason for that series. If the long-term target is for everyone to use schedutil, then I don't quite see why making it easy to not include it in one's system is going to help. > Then there is an important question: why should upstream care about all > that stuff? That's obviously debatable, but my biased opinion is that > GKI is a good thing(TM). It's our opportunity to put some order in the > android ecosystem and to reduce the delta with mainline. That'll > definitely take time, and there will be Android-specific churn in GKI in > the beginning, but we'd like to keep that as small as possible, and to > converge to 0 looking forwards. That's a good goal, but I'm not sure if the least resistance path to it is the right one. :-) Cheers!

