From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752045AbdAYTkq (ORCPT ); Wed, 25 Jan 2017 14:40:46 -0500 Received: from shards.monkeyblade.net ([184.105.139.130]:33168 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751152AbdAYTko (ORCPT ); Wed, 25 Jan 2017 14:40:44 -0500 Date: Wed, 25 Jan 2017 14:40:42 -0500 (EST) Message-Id: <20170125.144042.372817990268077333.davem@davemloft.net> To: geert+renesas@glider.be Cc: f.fainelli@gmail.com, zach.brown@ni.com, volodymyr.bendiuga@gmail.com, andrew@lunn.ch, magnus.oberg@westermo.se, netdev@vger.kernel.org, linux-renesas-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v2 0/3] net: phy: leds: Fix truncated LED trigger names and crashes From: David Miller In-Reply-To: <1485340790-10785-1-git-send-email-geert+renesas@glider.be> References: <1485340790-10785-1-git-send-email-geert+renesas@glider.be> X-Mailer: Mew version 6.7 on Emacs 24.5 / Mule 6.0 (HANACHIRUSATO) Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.5.12 (shards.monkeyblade.net [149.20.54.216]); Wed, 25 Jan 2017 10:41:40 -0800 (PST) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Geert Uytterhoeven Date: Wed, 25 Jan 2017 11:39:47 +0100 > I started seeing crashes during s2ram and poweroff on all my ARM boards, > like: > > Unable to handle kernel NULL pointer dereference at virtual address 00000000 > ... > [] (__list_del_entry_valid) from [] (led_trigger_unregister+0x34/0xcc) > [] (led_trigger_unregister) from [] (phy_led_triggers_unregister+0x28/0x34) > [] (phy_led_triggers_unregister) from [] (phy_detach+0x30/0x74) > [] (phy_detach) from [] (sh_eth_close+0x64/0x9c) > [] (sh_eth_close) from [] (dpm_run_callback+0x48/0xc8) > > or: > > list_del corruption. prev->next should be dede6540, but was 2e323931 > ------------[ cut here ]------------ > kernel BUG at lib/list_debug.c:52! > ... > [] (__list_del_entry_valid) from [] (led_trigger_unregister+0x34/0xcc) > [] (led_trigger_unregister) from [] (phy_led_triggers_unregister+0x28/0x34) > [] (phy_led_triggers_unregister) from [] (phy_detach+0x30/0x74) > [] (phy_detach) from [] (sh_eth_close+0x6c/0xa4) > [] (sh_eth_close) from [] (__dev_close_many+0xac/0xd0) > > As the only clue was a kernel message like > > sh-eth ee700000.ethernet eth0: No phy led trigger registered for speed(100) > > I had to bisected this, leading to commit 4567d686f5c6d955 ("phy: > increase size of MII_BUS_ID_SIZE and bus_id"). Reverting that commit > fixed the issue. > > More investigation revealed the crashes are due to the combination of > two things: > - Truncated LED trigger names, leading to duplicate names, and > registration failures, > - Bad error handling in case of registration failures. > > Both are fixed by this patch series. Thanks for tracking this down and fixing it. Series applied, thanks.