[PATCH] xfree86: Disable all hotplugging features without CONFIG_HAL

Peter Hutterer peter.hutterer at who-t.net
Wed Jan 28 17:19:38 PST 2009


On Wed, Jan 28, 2009 at 03:16:45PM -0800, Dan Nicholson wrote:
> If HAL configuration has not been built into the server, force
> AutoAddDevices, AutoEnableDevices and AllowEmptyInput to FALSE. The only
> way to use input devices in this configuration is through xorg.conf.
> 
> Signed-off-by: Dan Nicholson <dbn.lists at gmail.com>
> ---
>  There are still people out there not riding the HAL wave, and this allows
>  them to carry on without applying special server flags.
> 
>  Technically, I think this should also consider CONFIG_DBUS_API, but
>  nothing else in the code does.


Why do we need that on top of commit ace38fafb062372dcd3d56378b5b8f86525c6241?

xfree86: without CONFIG_HAL, Auto{Add|Enable}Devices and AEI is false.

The man page patch looks good though.

Cheers,
  Peter
> 
>  hw/xfree86/common/xf86Config.c       |   14 ++++++++++++++
>  hw/xfree86/doc/man/xorg.conf.man.pre |   11 ++++++-----
>  2 files changed, 20 insertions(+), 5 deletions(-)
> 
> diff --git a/hw/xfree86/common/xf86Config.c b/hw/xfree86/common/xf86Config.c
> index 8df9780..20fa631 100644
> --- a/hw/xfree86/common/xf86Config.c
> +++ b/hw/xfree86/common/xf86Config.c
> @@ -833,6 +833,7 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
>  	    xf86Msg(X_CONFIG, "Ignoring ABI Version\n");
>      }
>  
> +#ifdef CONFIG_HAL
>      if (xf86IsOptionSet(FlagOptions, FLAG_AUTO_ADD_DEVICES)) {
>          xf86GetOptValBool(FlagOptions, FLAG_AUTO_ADD_DEVICES,
>                            &xf86Info.autoAddDevices);
> @@ -841,9 +842,14 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
>      else {
>          from = X_DEFAULT;
>      }
> +#else
> +    xf86Info.autoAddDevices = FALSE;
> +    from = X_DEFAULT;
> +#endif
>      xf86Msg(from, "%sutomatically adding devices\n",
>              xf86Info.autoAddDevices ? "A" : "Not a");
>  
> +#ifdef CONFIG_HAL
>      if (xf86IsOptionSet(FlagOptions, FLAG_AUTO_ENABLE_DEVICES)) {
>          xf86GetOptValBool(FlagOptions, FLAG_AUTO_ENABLE_DEVICES,
>                            &xf86Info.autoEnableDevices);
> @@ -852,6 +858,10 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
>      else {
>          from = X_DEFAULT;
>      }
> +#else
> +    xf86Info.autoEnableDevices = FALSE;
> +    from = X_DEFAULT;
> +#endif
>      xf86Msg(from, "%sutomatically enabling devices\n",
>              xf86Info.autoEnableDevices ? "A" : "Not a");
>  
> @@ -952,9 +962,13 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
>      }
>  #endif
>  
> +#ifdef CONFIG_HAL
>      /* AllowEmptyInput is automatically true if we're hotplugging */
>      xf86Info.allowEmptyInput = (xf86Info.autoAddDevices && xf86Info.autoEnableDevices);
>      xf86GetOptValBool(FlagOptions, FLAG_ALLOW_EMPTY_INPUT, &xf86Info.allowEmptyInput);
> +#else
> +    xf86Info.allowEmptyInput = FALSE;
> +#endif
>  
>      /* AEI on? Then we're not using kbd, so use the evdev rules set. */
>  #ifdef XKB
> diff --git a/hw/xfree86/doc/man/xorg.conf.man.pre b/hw/xfree86/doc/man/xorg.conf.man.pre
> index f5c49e1..987a290 100644
> --- a/hw/xfree86/doc/man/xorg.conf.man.pre
> +++ b/hw/xfree86/doc/man/xorg.conf.man.pre
> @@ -640,19 +640,20 @@ the X server to load. Disabled by default.
>  .TP 7
>  .BI "Option \*qAllowEmptyInput\*q \*q" boolean \*q
>  If enabled, don't add the standard keyboard and mouse drivers, if there are no
> -input devices in the config file.  Enabled by default if AutoAddDevices and
> -AutoEnableDevices is enabled, otherwise disabled.
> -If AllowEmptyInput is on, devices using the kbd, mouse or vmmouse driver are ignored.
> +input devices in the config file.  Enabled by default if Xorg has HAL support
> +and AutoAddDevices and AutoEnableDevices are enabled, otherwise disabled.
> +If AllowEmptyInput is on, devices using the kbd, mouse or vmmouse driver are
> +ignored.
>  .TP 7
>  .BI "Option \*qAutoAddDevices\*q \*q" boolean \*q
>  If this option is disabled, then no devices will be added from HAL events.
> -Enabled by default.
> +Enabled by default if Xorg has HAL support.
>  .TP 7
>  .BI "Option \*qAutoEnableDevices\*q \*q" boolean \*q
>  If this option is disabled, then the devices will be added (and the
>  DevicePresenceNotify event sent), but not enabled, thus leaving policy up
>  to the client.
> -Enabled by default.
> +Enabled by default if Xorg has HAL support.
>  .TP 7
>  .BI "Option \*qLog\*q \*q" string \*q
>  This option controls whether the log is flushed and/or synced to disk after
> -- 
> 1.5.6.6
> 



More information about the xorg mailing list