On Thu, Sep 03, 2020 at 06:59:44PM -0500, Bjorn Andersson wrote:
On Tue 01 Sep 17:05 CDT 2020, Mathieu Poirier wrote:
> Hi Rishabh,
>
> On Thu, Aug 27, 2020 at 12:48:48PM -0700, Rishabh Bhatnagar wrote:
> > From Android R onwards Google has restricted access to debugfs in user
> > and user-debug builds. This restricts access to most of the features
> > exposed through debugfs. This patch series adds a configurable option
> > to move the recovery/coredump interfaces to sysfs. If the feature
> > flag is selected it would move these interfaces to sysfs and remove
> > the equivalent debugfs interface.
>
> What I meant wast to move the coredump entry from debugfs to sysfs and from
> there make it available to user space using a kernel config.
Why would we not always make this available in sysfs?
At this time the options are in debugfs and vendors can decide to make
that
available on products if they want to. The idea behind using a kernel
configuration once moved to sysfs was to give the same kind of
options.
> But thinking further on this it may be better to simply provide an API
> to set the coredump mode from the platform driver, the same way
> rproc_coredump_set_elf_info() works.
Being able to invoke these from the platform drivers sounds like a
new
feature. What would trigger the platform drivers to call this? Or are
you perhaps asking for the means of the drivers to be able to select
the
default mode?
My ultimate goal is to avoid needlessly stuffing things in sysfs. My
hope in
suggesting a new API was that platform drivers could recognise the
kind of
build/environment they operate in and setup the coredump mode
accordingly. That
would have allowed us to leave debugfs options alone.
Regarding the default mode, I think it would make sense to make the
default "disabled", because this is the most sensible configuration
in a
"production" environment. And the sysfs means we have a convenient
mechanism to configure it, even on production environments.
I am weary of changing something that hasn't been requested.
> That will prevent breaking a fair amount of user space code...
>
We typically don't guarantee that the debugfs interfaces are stable
and
if I understand the beginning of you reply you still want to move it
from debugfs to sysfs - which I presume would break such scripts in
the
first place?
Correct - I am sure that moving coredump and recovery options to sysfs
will
break user space scripts. Even if debugfs is not part of the ABI it
would be
nice to avoid disrupting people as much as possible.
I would prefer to see that we don't introduce config options for
every
little thing, unless there's good reason for it.
I totally agree. It is with great reluctance that I asked Rishab to
proceed
the way he did in V3. His usecase makes sense... On the flip side
this is
pushed down on the kernel community and I really like Christoph's
position about
fixing Android and leaving the kernel alone.