From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-3.9 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id E1C19C43215 for ; Tue, 26 Nov 2019 15:48:58 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id BBECD2073F for ; Tue, 26 Nov 2019 15:48:58 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="bkI6Ewj+" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728668AbfKZPs6 (ORCPT ); Tue, 26 Nov 2019 10:48:58 -0500 Received: from mail-lj1-f195.google.com ([209.85.208.195]:40784 "EHLO mail-lj1-f195.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728656AbfKZPs5 (ORCPT ); Tue, 26 Nov 2019 10:48:57 -0500 Received: by mail-lj1-f195.google.com with SMTP id s22so1784187ljs.7 for ; Tue, 26 Nov 2019 07:48:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=88nvJmDpJf3U3oghfZlBzEN8mRIEbqnTMD1mCcruG/8=; b=bkI6Ewj+zJdKvZZja3lQVOK2xECFiUjQh1pwZ7rQauT4Gdr1yB3NFAocWj2gkHqOe1 DIHMGoSdrrRBcGio6QcXTvWiTyEXH9GdsJKTPBaksb57nxBL3DKUpmWnNrJ6u7V/BSVU 3u3vHWejZaIxsB6atCGIyMuW8f8ut8KKzbOz4hiDBkbZ6eurbRX+29yjuHEFXW3BBAdP Yy6boEzXVQ0O1LdYoS2uU5a6sVbCPO7q5sZJXp8KDhyU1geafBYmnNbOKNPkmUUXuX38 TY6TQK7Y+39kQMf3USEVlfDHYV4rNfcbthlAa59nTHxEmb/RF0gMs2alix6qN/zqHhPX 6hkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=88nvJmDpJf3U3oghfZlBzEN8mRIEbqnTMD1mCcruG/8=; b=m624UvbGWn0z2Htek2ARvWNmNoZg3Lsf6wTykVgtpk5+8GRKJKLNcL2Iun3KfMS9l3 kk/JG1lWV3b75dQ+G/zNsx74wbFwcIppSXUaiuLECVozXDv3Y0YEji7JIG9lCB+Uehfr MF9vMkcSsg181lUN5E9+XJjZZf7H4JtdmdEqQrmes5fPHseW/E5KvZglKVeYtBeFrqqS jH2CYWEYLGRzwOHeMP10Lt3zQXQhWejMWM6IAREQ7pAsolYaZ6r0uWbydY+TH6E8xn69 9QU+JQMvQ87ahN+ehQd6Ux0vsDY1QepfiuLrLnJ+Yajq/TyyzkqgbWlGXYULVyKskShD WG6w== X-Gm-Message-State: APjAAAVvhWCaSn32qHOejafCNx47T1UbUFbRuJ5FJha4SacwK7QdlY0O r7bXGN7fiBP4dmmzMxKcWrb1dPbL1niql7m7c+JjIA== X-Google-Smtp-Source: APXvYqyHY4xz8/1U6rSvVLvhJHAlv2Mr0mXlaim09CME66s+zIBlIghEh1vEh0EInEMRGgMK8ZEuEkrNOwGcfFHcjio= X-Received: by 2002:a2e:9699:: with SMTP id q25mr27300503lji.251.1574783335558; Tue, 26 Nov 2019 07:48:55 -0800 (PST) MIME-Version: 1.0 References: <1efb797c-e3c1-25a4-0e81-78b5bbadb355@c-s.fr> In-Reply-To: <1efb797c-e3c1-25a4-0e81-78b5bbadb355@c-s.fr> From: Linus Walleij Date: Tue, 26 Nov 2019 16:48:43 +0100 Message-ID: Subject: Re: Boot failure with 5.4-rc5, bisected to 0f0581b24bd0 ("spi: fsl: Convert to use CS GPIO descriptors") To: Christophe Leroy Cc: linux-spi , Mark Brown , Fabio Estevam , "open list:GPIO SUBSYSTEM" Content-Type: text/plain; charset="UTF-8" Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org Hi Christophe, sorry for forgetting about this :( On Fri, Nov 8, 2019 at 2:34 PM Christophe Leroy wrote: > With the two above changes, I get: > [ 3.143014] fsl_spi ff000a80.spi: bail out with error code -22 > [ 3.148879] ------------[ cut here ]------------ > [ 3.153261] remove_proc_entry: removing non-empty directory 'irq/43', > leaking at least 'fsl_spi' > [ 3.162473] WARNING: CPU: 0 PID: 1 at fs/proc/generic.c:684 > remove_proc_entry+0x1a0/0x1c8 So that is another bug again. (Tearing down IRQs is erroneous in some way.) The problem is the first -22 (-EINVAL) Which comes from of_fsl_spi_probe() IIUC. Can you try the following? I'm sorry if gmail mangles the patches, I put a copy here: https://dflund.se/~triad/fsldebug.diff diff --git a/drivers/spi/spi-fsl-spi.c b/drivers/spi/spi-fsl-spi.c index 114801a32371..3f68bea1c3c0 100644 --- a/drivers/spi/spi-fsl-spi.c +++ b/drivers/spi/spi-fsl-spi.c @@ -617,12 +617,15 @@ static struct spi_master * fsl_spi_probe(struct device *dev, mpc8xxx_spi->type = fsl_spi_get_type(dev); ret = fsl_spi_cpm_init(mpc8xxx_spi); - if (ret) + if (ret) { + dev_err(dev, "fsl_spi_cpm_init() failed\n"); goto err_cpm_init; + } mpc8xxx_spi->reg_base = devm_ioremap_resource(dev, mem); if (IS_ERR(mpc8xxx_spi->reg_base)) { ret = PTR_ERR(mpc8xxx_spi->reg_base); + dev_err(dev, "erroneous ->reg_base\n"); goto err_probe; } @@ -645,8 +648,10 @@ static struct spi_master * fsl_spi_probe(struct device *dev, ret = devm_request_irq(dev, mpc8xxx_spi->irq, fsl_spi_irq, 0, "fsl_spi", mpc8xxx_spi); - if (ret != 0) + if (ret != 0) { + dev_err(dev, "devm_request_irq() failed\n"); goto err_probe; + } reg_base = mpc8xxx_spi->reg_base; @@ -668,8 +673,10 @@ static struct spi_master * fsl_spi_probe(struct device *dev, mpc8xxx_spi_write_reg(®_base->mode, regval); ret = devm_spi_register_master(dev, master); - if (ret < 0) + if (ret < 0) { + dev_err(dev, "devm_spi_register_master() failed\n"); goto err_probe; + } dev_info(dev, "at 0x%p (irq = %d), %s mode\n", reg_base, mpc8xxx_spi->irq, mpc8xxx_spi_strmode(mpc8xxx_spi->flags)); @@ -681,6 +688,7 @@ static struct spi_master * fsl_spi_probe(struct device *dev, err_cpm_init: spi_master_put(master); err: + dev_err(dev, "exiting fsl_spi_probe() with error\n"); return ERR_PTR(ret); } @@ -738,12 +746,14 @@ static int of_fsl_spi_probe(struct platform_device *ofdev) irq = irq_of_parse_and_map(np, 0); if (!irq) { ret = -EINVAL; + dev_err(dev, "irq_of_parse_and_map() failed\n"); goto err; } master = fsl_spi_probe(dev, &mem, irq); if (IS_ERR(master)) { ret = PTR_ERR(master); + dev_err(dev, "fsl_spi_probe() failed\n"); goto err; } Let's drill in and see where this error come from. Yours, Linus Walleij