[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20161215011203.nyyl5izlzkqtium5@raspberrypi-2.musicnaut.iki.fi>
Date: Thu, 15 Dec 2016 03:12:03 +0200
From: Aaro Koskinen <aaro.koskinen@....fi>
To: Florian Fainelli <f.fainelli@...il.com>
Cc: "David S. Miller" <davem@...emloft.net>,
David Daney <ddaney@...iumnetworks.com>, netdev@...r.kernel.org
Subject: Re: [BISECTED] v4.9: OCTEON ethernet crash
Hi,
On Wed, Dec 14, 2016 at 05:00:59PM -0800, Florian Fainelli wrote:
> On 12/14/2016 04:57 PM, Aaro Koskinen wrote:
> > On Wed, Dec 14, 2016 at 04:41:13PM -0800, Florian Fainelli wrote:
> >> On 12/14/2016 04:32 PM, Aaro Koskinen wrote:
> >>> Git bisect points to:
> >>>
> >>> commit ec988ad78ed6d184a7f4ca6b8e962b0e8f1de461
> >>> Author: Florian Fainelli <f.fainelli@...il.com>
> >>> Date: Tue Dec 6 20:54:43 2016 -0800
> >>>
> >>> phy: Don't increment MDIO bus refcount unless it's a different owner
> >>>
> >>> Reverting this patch from v4.9 fixes the issue...
> >>
> >> This should help:
> >>
> >> diff --git a/drivers/staging/octeon/ethernet.c
> >> b/drivers/staging/octeon/ethernet.c
> >> index 8130dfe89745..12ebc4d800c3 100644
> >> --- a/drivers/staging/octeon/ethernet.c
> >> +++ b/drivers/staging/octeon/ethernet.c
> >> @@ -770,6 +770,7 @@ static int cvm_oct_probe(struct platform_device *pdev)
> >> /* Initialize the device private structure. */
> >> struct octeon_ethernet *priv = netdev_priv(dev);
> >>
> >> + SET_NETDEV_DEV(dev, &pdev->dev);
> >> dev->netdev_ops = &cvm_oct_pow_netdev_ops;
> >> priv->imode = CVMX_HELPER_INTERFACE_MODE_DISABLED;
> >> priv->port = CVMX_PIP_NUM_INPUT_PORTS;
> >
> > No, it's still crashing.
>
> How about this:
>
> diff --git a/drivers/staging/octeon/ethernet.c
> b/drivers/staging/octeon/ethernet.c
> index 12ebc4d800c3..4971aa54756a 100644
> --- a/drivers/staging/octeon/ethernet.c
> +++ b/drivers/staging/octeon/ethernet.c
> @@ -817,6 +817,7 @@ static int cvm_oct_probe(struct platform_device *pdev)
> }
>
> /* Initialize the device private structure. */
> + SET_NETDEV_DEV(dev, &pdev->dev);
> priv = netdev_priv(dev);
> priv->netdev = dev;
> priv->of_node = cvm_oct_node_for_port(pip,
> interface,
Yeah, that seems to work - thanks! Could you send this to
devel@...verdev.osuosl.org as a formal patch?
A.
Powered by blists - more mailing lists