From: Mao Jinlong <jinlmao@xxxxxxxxxxxxxxxx> It is possible that when device probe, its child device is not probed. Then it will fail when add sysfs connection for the device. Make device defer probe when the child device is not probed. Signed-off-by: Mao Jinlong <jinlmao@xxxxxxxxxxxxxxxx> --- drivers/hwtracing/coresight/coresight-sysfs.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/hwtracing/coresight/coresight-sysfs.c b/drivers/hwtracing/coresight/coresight-sysfs.c index 34d2a2d31d00..7df9eb59bf2c 100644 --- a/drivers/hwtracing/coresight/coresight-sysfs.c +++ b/drivers/hwtracing/coresight/coresight-sysfs.c @@ -73,8 +73,10 @@ int coresight_add_sysfs_link(struct coresight_sysfs_link *info) if (!info->orig || !info->target || !info->orig_name || !info->target_name) return -EINVAL; - if (!info->orig->has_conns_grp || !info->target->has_conns_grp) + if (!info->orig->has_conns_grp) return -EINVAL; + if (!info->target->has_conns_grp) + return -EPROBE_DEFER; /* first link orig->target */ ret = sysfs_add_link_to_group(&info->orig->dev.kobj, -- 2.17.1