Re: [PATCH 1/2] config: android-recommended: Don't explicitly disable CONFIG_AIO

From: Marijn Suijten
Date: Wed Feb 02 2022 - 06:28:09 EST


On 2022-02-02 11:29:51, Greg Kroah-Hartman wrote:
> On Wed, Feb 02, 2022 at 11:12:46AM +0100, Marijn Suijten wrote:
> > On 2022-02-02 10:45:59, Greg Kroah-Hartman wrote:
> > > On Wed, Feb 02, 2022 at 10:33:13AM +0100, Marijn Suijten wrote:
> > > > Android nowadays (for a couple years already) requires AIO for at least
> > > > its `adb` "Android Debug Bridge" [1]. Without this config option
> > > > (`default y`) it simply refuses start, making users unable to connect to
> > > > their phone for debugging purposes when using these kernel fragments.
> > > >
> > > > [1]: https://cs.android.com/android/_/android/platform/packages/modules/adb/+/a2cb8de5e68067a5e1d002886d5f3b42d91371e1
> > > >
> > > > Cc: Amit Pundir <amit.pundir@xxxxxxxxxx>
> > > > Cc: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>
> > > > Cc: John Stultz <john.stultz@xxxxxxxxxx>
> > > > Signed-off-by: Marijn Suijten <marijn.suijten@xxxxxxxxxxxxxx>
> > > > ---
> > > > kernel/configs/android-recommended.config | 1 -
> > > > 1 file changed, 1 deletion(-)
> > > >
> > > > diff --git a/kernel/configs/android-recommended.config b/kernel/configs/android-recommended.config
> > > > index eb0029c9a6a6..22bd76e43aca 100644
> > > > --- a/kernel/configs/android-recommended.config
> > > > +++ b/kernel/configs/android-recommended.config
> > > > @@ -1,5 +1,4 @@
> > > > # KEEP ALPHABETICALLY SORTED
> > > > -# CONFIG_AIO is not set
> > > > # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
> > > > # CONFIG_INPUT_MOUSE is not set
> > > > # CONFIG_LEGACY_PTYS is not set
> > > > --
> > > > 2.35.1
> > > >
> > >
> > > There are lots of "required" configs now for modern Android releases, do
> > > you want to sync up with all of them here? If so, look at the
> > > gki_defconfig files in the AOSP kernels for the full list of what is
> > > required. Is it really needed to keep this file up to date or should it
> > > be dropped entirely given that no one has noticed how out-of-date it is?
> >
> > This is all I need for now to get Android booting with a mainline
> > kernel, no fancy features though that make the device worthy of being a
> > phone (pending hardware drivers).
>
> Why is adb needed to boot?

It's been 3-4 years since this happened, it probably wasn't witholding
boot back then but as you mention below pretty much vital when paired
with a readonly uart during early (hobbyist) bringup.

> I know some Android people are working to try to get rid of the AIO
> requirement of adb, as it's only a debugging tool (an important one,
> yes), so they can turn off AIO in the kernel image due to the complexity
> there. So why turn it back on here?

I wasn't aware of that, should we leave this config fragment in a broken
state until this initiative lands in AOSP somewhere?

> > Perhaps replacing these config fragments with gki_defconfig upstream
> > is a good idea - as discussed with John - but that's not something for
> > me to decide nor embark on :).
> > Having them upstreamed might be nicer than finding the appropriate
> > corresponding downstream tree.
>
> Keeping defconfigs up to date is a loosing battle for the most part, I
> doubt many platforms actually do this well.

I thought - hoped - the plan was to upstream as much as possible to
close the gap of downstream divergence, including defconfig?

Then the only feasible alternative is to drop these unmaintained,
"incorrect" fragments and let kernel builders piece together their own
based on the AOSP common kernel gki_defconfig tree?

- Marijn