Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1220128

[PATCH v4 21/22] driver core: Start processing deferred probes earlier

From Tomeu Vizoso <tomeu.vizoso@collabora.com>
Newsgroups linux.kernel
Subject [PATCH v4 21/22] driver core: Start processing deferred probes earlier
Date 2015-09-07 14:30 +0200
Message-ID <q63ID-5sL-47@gated-at.bofh.it> (permalink)
References <q63IB-5sL-5@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


Some initcalls in the late level assume that some devices will have
already probed without explicitly checking for that.

After the recent move to defer most device probes when they are
registered, pressure increased in the late initcall level.

By starting the processing of the deferred queue in device_initcall_sync
we increase the chances that the initcalls mentioned before will find
the devices they depend on to have already probed.

Signed-off-by: Tomeu Vizoso <tomeu.vizoso@collabora.com>
---

Changes in v4:
- Start processing deferred probes in device_initcall_sync

Changes in v3: None
Changes in v2: None

 drivers/base/dd.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/base/dd.c b/drivers/base/dd.c
index 0654fb771a53..b6a22cff78cf 100644
--- a/drivers/base/dd.c
+++ b/drivers/base/dd.c
@@ -176,7 +176,7 @@ static void driver_deferred_probe_trigger(void)
  *
  * We don't want to get in the way when the bulk of drivers are getting probed.
  * Instead, this initcall makes sure that deferred probing is delayed until
- * late_initcall time.
+ * device_initcall_sync time.
  */
 static int deferred_probe_initcall(void)
 {
@@ -190,7 +190,7 @@ static int deferred_probe_initcall(void)
 	flush_workqueue(deferred_wq);
 	return 0;
 }
-late_initcall(deferred_probe_initcall);
+device_initcall_sync(deferred_probe_initcall);
 
 static void driver_bound(struct device *dev)
 {
-- 
2.4.3

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH v4 0/22] On-demand device probing Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 13/22] backlight: Probe backlight devices on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 05/22] gpio: Probe GPIO drivers on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 03/22] of/platform: Point to struct device from device node Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 09/22] drm: Probe panels on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 20/22] driver core: Allow deferring probes until late init Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
    Re: [PATCH v4 20/22] driver core: Allow deferring probes until late  init Mark Brown <broonie@kernel.org> - 2015-09-11 14:20 +0200
      Re: [PATCH v4 20/22] driver core: Allow deferring probes until late init Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-14 11:10 +0200
  [PATCH v4 14/22] usb: phy: Probe phy devices on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 15/22] clk: Probe clk providers on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 22/22] of/platform: Defer probes of registered devices Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 16/22] pinctrl: Probe pinctrl devices on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
  [PATCH v4 21/22] driver core: Start processing deferred probes earlier Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:30 +0200
    Re: [PATCH v4 21/22] driver core: Start processing deferred probes  earlier Mark Brown <broonie@kernel.org> - 2015-09-11 14:30 +0200
      Re: [PATCH v4 21/22] driver core: Start processing deferred probes earlier Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-15 15:20 +0200
  [PATCH v4 07/22] regulator: core: Reduce critical area in _regulator_get Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:40 +0200
    Re: [PATCH v4 07/22] regulator: core: Reduce critical area in  _regulator_get Mark Brown <broonie@kernel.org> - 2015-09-11 14:20 +0200
  [PATCH v4 11/22] i2c: core: Probe i2c adapters and devices on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:40 +0200
  [PATCH v4 12/22] pwm: Probe PWM chip devices on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:40 +0200
  [PATCH v4 02/22] ARM: amba: Move reading of periphid to pre_probe() Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:40 +0200
  [PATCH v4 01/22] driver core: Add pre_probe callback to bus_type Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:40 +0200
    Re: [PATCH v4 01/22] driver core: Add pre_probe callback to bus_type Mark Brown <broonie@kernel.org> - 2015-09-11 14:10 +0200
  [PATCH v4 10/22] drm/tegra: Probe dpaux devices on demand Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-07 14:40 +0200
  Re: [PATCH v4 0/22] On-demand device probing Rob Herring <robherring2@gmail.com> - 2015-09-07 23:00 +0200
    Re: [PATCH v4 0/22] On-demand device probing Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-08 09:40 +0200
      Re: [PATCH v4 0/22] On-demand device probing Rob Herring <robh@kernel.org> - 2015-09-09 07:50 +0200
        Re: [PATCH v4 0/22] On-demand device probing Tomeu Vizoso <tomeu.vizoso@collabora.com> - 2015-09-09 11:50 +0200

csiph-web