Re: [PATCH BlueZ] policy: Change AutoEnable default to true

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Marcel,

On Tue, Apr 19, 2022 at 1:48 AM Marcel Holtmann <marcel@xxxxxxxxxxxx> wrote:
>
> Hi Luiz,
>
> > This changes the default of AutoEnable to true so controllers are power
> > up by default.
> >
> > Fixes: https://github.com/bluez/bluez/issues/328
> > ---
> > plugins/policy.c | 6 +++++-
> > src/main.conf    | 4 ++--
> > 2 files changed, 7 insertions(+), 3 deletions(-)
> >
> > diff --git a/plugins/policy.c b/plugins/policy.c
> > index 48f5db7d3..0bbdbfc88 100644
> > --- a/plugins/policy.c
> > +++ b/plugins/policy.c
> > @@ -892,7 +892,11 @@ static int policy_init(void)
> >       }
> >
> >       auto_enable = g_key_file_get_boolean(conf, "Policy", "AutoEnable",
> > -                                                                     NULL);
> > +                                                             &gerr);
> > +     if (gerr) {
> > +             g_clear_error(&gerr);
> > +             auto_enable = true;
> > +     }
> >
> >       resume_delay = g_key_file_get_integer(
> >                       conf, "Policy", "ResumeDelay", &gerr);
> > diff --git a/src/main.conf b/src/main.conf
> > index 401796235..91b98b8c4 100644
> > --- a/src/main.conf
> > +++ b/src/main.conf
> > @@ -276,8 +276,8 @@
> >
> > # AutoEnable defines option to enable all controllers when they are found.
> > # This includes adapters present on start as well as adapters that are plugged
> > -# in later on. Defaults to 'false'.
> > -#AutoEnable=false
> > +# in later on. Defaults to 'true'.
> > +#AutoEnable=true
>
> so this is problematic since all wireless technology daemon where design to not automatically activate their hardware. It needed a system above like ConnMan, NetworkManager or even the UI to start the operation.
>
> It is especially tricky since bluetoothd doesn’t remember the last state. So if you power off, then restart, it is on again the next time around. Not something you might have wanted. Using false here is the right choice as a default.
>
> If you install systemd-rfkill and want to auto-power once soft-rfkill is released and systemd-rfkill remembers the state persistently, then you need to install your main.conf with AutoEnable=true. That is a distro choice.

The argument was that nowadays most systems ship with systemd-rfkill
so having AutoEnable=true is much more common than the old default,
perhaps we could detect if the system has systemd-rfkill than we
default to AutoEnable=true automatically, does this sound better to
you?

> Regards
>
> Marcel
>


-- 
Luiz Augusto von Dentz




[Index of Archives]     [Bluez Devel]     [Linux Wireless Networking]     [Linux Wireless Personal Area Networking]     [Linux ATH6KL]     [Linux USB Devel]     [Linux Media Drivers]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Big List of Linux Books]

  Powered by Linux