From patchwork Tue Jul 11 07:30:39 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Joel Stanley X-Patchwork-Id: 107338 Delivered-To: patch@linaro.org Received: by 10.140.101.44 with SMTP id t41csp4506719qge; Tue, 11 Jul 2017 00:31:25 -0700 (PDT) X-Received: by 10.84.211.73 with SMTP id b67mr2521622pli.230.1499758285286; Tue, 11 Jul 2017 00:31:25 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1499758285; cv=none; d=google.com; s=arc-20160816; b=DRCH4kiBTBen/+7jQsUQ3zPbmV7w1fNxsuDUe0YgMjun2+YxZvl0e0yycS2PlV00Q1 4mzZAcqEyQroNRxxlp2zDErA1y0LR9FxInjzM+PT27noDq8LwKGe/gCvpq1BdzWl302f gDIlpmo2MR4YbpAgnS1gOXimsLNrUoj4WXDPmFWiG5gwp73lxrUPuILvla1rN+uFzwbY y0joNtRFx0rB5c2fZTqYSiiOAB097t+jFPHHJw9xQ0qGSBUCVjOSrrVn702C5jVBW4+8 3yFzlxXPRNtAOyaRffrH5zKd5rb1jD2SY3FYPc3wYon8d3dGEQua7y2JtbWdSXDsleil 91Cw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=OWggGqJgDzbZldput78rgnLVYKjPldUYyeRpzBcCjbM=; b=RHqcu3GWYheB/MuaolvJdq+thXLVbFJPzjbbbYFel4Y77GGb5TFoYiPr0HqnQyW0+9 UWmQsx8in1aKUW8xJb4Y9pZ61yIHrOm1MYmS5iZ6lvt/oDTJL6sAcZaiNU/+1iLTU2xd gY4qukC1/bGEi8sH2lEVobErKHCdHtHMYlkG5nG1RDwLC+aDbgk6vCB0XrO9yZbsg36x mo/LG3b3La6Zqx7OTXnol8bQXv/2KlhVb8wTjAMgbQAKSQXqA6cYDEhxrv9A+byDGr3Q yz4c/uBX+OKLj/9S2qH11M4FwbT++JdOGUEaailYdWh8OucA4NIn+fAbfHBZV4WESHJD rPyQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=fail header.i=@gmail.com header.b=oDOi7HjG; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id l19si9601525pfa.92.2017.07.11.00.31.24; Tue, 11 Jul 2017 00:31:25 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=fail header.i=@gmail.com header.b=oDOi7HjG; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755428AbdGKHbC (ORCPT + 25 others); Tue, 11 Jul 2017 03:31:02 -0400 Received: from mail-pg0-f66.google.com ([74.125.83.66]:36617 "EHLO mail-pg0-f66.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755291AbdGKHbA (ORCPT ); Tue, 11 Jul 2017 03:31:00 -0400 Received: by mail-pg0-f66.google.com with SMTP id y129so946734pgy.3 for ; Tue, 11 Jul 2017 00:30:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id; bh=OWggGqJgDzbZldput78rgnLVYKjPldUYyeRpzBcCjbM=; b=oDOi7HjGRkqoK4YRWrVZ2pVsvaKbo8LpATNRjISOl/3Op1PTlnqoO/3QwRwvIFMD2u p+uWsLxWDGqjHSCUCIluIEHH1sKpDRaPcOvAGmLKUdfijcly/oKfUbjYr4gxrEu6DObX iyYARyxKB2JwYwqJM50bkASfEaEb68WY06U9QKyXpv9ZH9uPmpvbVxHEX8aTE+cFEsTc En+2J/MFgmOWqtG1kJEEETUklIcQ5+GxpKh2SWs/z0grU0LP6an0iPMHtht4k4RvHxOr Wk7N0fr2u2gASFvqIjhFmw7s77h1hbldfno4z56Z2197Yopm0QBpV7z8CWI//EtxLN8A Kwyg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id; bh=OWggGqJgDzbZldput78rgnLVYKjPldUYyeRpzBcCjbM=; b=LuE6WxKMjhNd3nkAH9Xvu7OmycAPFMDvF3/KoJQlncGSEiWHYygkL1S+PC7OlndOuW R95mM2mZ5k26CKSQHEHwqKrXRSGlBRsKdNqzvnD4xpltLDLuVsF5aZtBm4+9UndfffTn Hkni2iSOB2aM8Ib6cOjBQnf4f8k1CVRqYOyQQStCqb7jv/rc9PAhy3+B8IY1XCLuSvhH teRaoUi8DifWADk0fWlpFQGjz1zWNAuhx13Q+79NizvmlinHs2KiFlvbC8RqQH0azIfg bodHl4gXF/8lx4h7Klfz/TFQvRuUJajpAr+C4cztyvBAsUcgDRxAEM3rckZ9H+qmOHMI zF+Q== X-Gm-Message-State: AIVw113kK9ydqDAVBADUIaWz6Sls/WgX0XT5clNbmwmlxu8QVntowGcE iCLxKuoIdmxeAw== X-Received: by 10.98.69.91 with SMTP id s88mr12305316pfa.183.1499758249940; Tue, 11 Jul 2017 00:30:49 -0700 (PDT) Received: from aurora.jms.id.au ([203.0.153.9]) by smtp.gmail.com with ESMTPSA id c82sm26950408pfd.5.2017.07.11.00.30.46 (version=TLS1 cipher=AES128-SHA bits=128/128); Tue, 11 Jul 2017 00:30:49 -0700 (PDT) Received: by aurora.jms.id.au (sSMTP sendmail emulation); Tue, 11 Jul 2017 17:00:43 +0930 From: Joel Stanley To: Greg Kroah-Hartman Cc: Christopher Bostic , Jeremy Kerr , linux-kernel@vger.kernel.org, openbmc@lists.ozlabs.org Subject: [PATCH] fsi: core: register with postcore_initcall Date: Tue, 11 Jul 2017 17:00:39 +0930 Message-Id: <20170711073039.20700-1-joel@jms.id.au> X-Mailer: git-send-email 2.13.2 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When testing an i2c driver that is a fsi bus driver, I saw the following oops: kernel BUG at drivers/base/driver.c:153! Internal error: Oops - BUG: 0 [#1] ARM [<8027cb1c>] (driver_register) from [<80344e88>] (fsi_driver_register+0x2c/0x38) [<80344e88>] (fsi_driver_register) from [<805f5ebc>] (fsi_i2c_driver_init+0x1c/0x24) [<805f5ebc>] (fsi_i2c_driver_init) from [<805d1f14>] (do_one_initcall+0xb4/0x170) [<805d1f14>] (do_one_initcall) from [<805d20f0>] (kernel_init_freeable+0x120/0x1dc) [<805d20f0>] (kernel_init_freeable) from [<8043f4a8>] (kernel_init+0x18/0x104) [<8043f4a8>] (kernel_init) from [<8000a5e8>] (ret_from_fork+0x14/0x2c) This is because the fsi bus had not been registered. This fix registers the bus with postcore_initcall instead, to ensure it is registered earlier on. When the fsi core is used as a module this should not be a problem as the fsi driver will depend on the fsi bus type symbol, and will therefore load the core before the driver. Fixes: 0508ad1fff11 ("drivers/fsi: Add empty fsi bus definitions") Signed-off-by: Joel Stanley --- drivers/fsi/fsi-core.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) -- 2.13.2 Acked-by: Jeremy Kerr diff --git a/drivers/fsi/fsi-core.c b/drivers/fsi/fsi-core.c index a88df7a2b466..5966ecb72f37 100644 --- a/drivers/fsi/fsi-core.c +++ b/drivers/fsi/fsi-core.c @@ -889,17 +889,16 @@ struct bus_type fsi_bus_type = { }; EXPORT_SYMBOL_GPL(fsi_bus_type); -static int fsi_init(void) +static int __init fsi_init(void) { return bus_register(&fsi_bus_type); } +postcore_initcall(fsi_init); static void fsi_exit(void) { bus_unregister(&fsi_bus_type); } - -module_init(fsi_init); module_exit(fsi_exit); module_param(discard_errors, int, 0664); MODULE_LICENSE("GPL");