From: Leonard Crestez Date: Tue, 14 Feb 2017 15:31:03 +0000 (+0200) Subject: regulator: Fix regulator_summary for deviceless consumers X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=e42a46b6f52473661ad192f76a128a68fe301df4;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git regulator: Fix regulator_summary for deviceless consumers It is allowed to call regulator_get with a NULL dev argument (_regulator_get explicitly checks for it) but this causes an error later when printing /sys/kernel/debug/regulator_summary. Fix this by explicitly handling "deviceless" consumers in the debugfs code. Signed-off-by: Leonard Crestez Signed-off-by: Mark Brown Cc: stable@vger.kernel.org --- diff --git a/drivers/regulator/core.c b/drivers/regulator/core.c index 04baac9a165b..66319542baa6 100644 --- a/drivers/regulator/core.c +++ b/drivers/regulator/core.c @@ -4391,12 +4391,13 @@ static void regulator_summary_show_subtree(struct seq_file *s, seq_puts(s, "\n"); list_for_each_entry(consumer, &rdev->consumer_list, list) { - if (consumer->dev->class == ®ulator_class) + if (consumer->dev && consumer->dev->class == ®ulator_class) continue; seq_printf(s, "%*s%-*s ", (level + 1) * 3 + 1, "", - 30 - (level + 1) * 3, dev_name(consumer->dev)); + 30 - (level + 1) * 3, + consumer->dev ? dev_name(consumer->dev) : "deviceless"); switch (rdev->desc->type) { case REGULATOR_VOLTAGE: