mirror of
https://github.com/torvalds/linux.git
synced 2024-11-27 06:31:52 +00:00
net: dsa: qca8k: fix NULL pointer dereference for of_device_get_match_data
of_device_get_match_data is called on priv->dev before priv->dev is
actually set. Move of_device_get_match_data after priv->dev is correctly
set to fix this kernel panic.
Fixes: 3bb0844e7b
("net: dsa: qca8k: cache match data to speed up access")
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
Reviewed-by: Vladimir Oltean <olteanv@gmail.com>
Link: https://lore.kernel.org/r/20220904215319.13070-1-ansuelsmth@gmail.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
parent
686dc2db2a
commit
42b998d4aa
@ -1889,9 +1889,9 @@ qca8k_sw_probe(struct mdio_device *mdiodev)
|
|||||||
if (!priv)
|
if (!priv)
|
||||||
return -ENOMEM;
|
return -ENOMEM;
|
||||||
|
|
||||||
priv->info = of_device_get_match_data(priv->dev);
|
|
||||||
priv->bus = mdiodev->bus;
|
priv->bus = mdiodev->bus;
|
||||||
priv->dev = &mdiodev->dev;
|
priv->dev = &mdiodev->dev;
|
||||||
|
priv->info = of_device_get_match_data(priv->dev);
|
||||||
|
|
||||||
priv->reset_gpio = devm_gpiod_get_optional(priv->dev, "reset",
|
priv->reset_gpio = devm_gpiod_get_optional(priv->dev, "reset",
|
||||||
GPIOD_ASIS);
|
GPIOD_ASIS);
|
||||||
|
Loading…
Reference in New Issue
Block a user