>> +static DEFINE_MUTEX(gdp_mutex); >> >> static struct kobject *get_device_parent(struct device *dev, >> struct device *parent) >> { >> if (dev->class) { >> - static DEFINE_MUTEX(gdp_mutex); >> struct kobject *kobj = NULL; >> struct kobject *parent_kobj; >> struct kobject *k; >> @@ -793,7 +793,9 @@ static void cleanup_glue_dir(struct device *dev, struct kobject *glue_dir) >> glue_dir->kset != &dev->class->p->glue_dirs) >> return; >> >> + mutex_lock(&gdp_mutex); >> kobject_put(glue_dir); >> + mutex_unlock(&gdp_mutex); >> } >> >> static void cleanup_device_parent(struct device *dev) >> > > I much prefer this patch over the other one, as it keeps the same > behavior as today, and fixes the existing bug. > > Have you tested it out to see if it works properly? If so, can you > resend it in a "proper" form so I can apply it? Yes, we tested it in our system, I will resend it now, thanks! > > thanks, > > greg k-h > > . > -- Thanks! Yijing -- To unsubscribe from this list: send the line "unsubscribe stable" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html