Message ID | 1501428648.3670.1.camel@HansenPartnership.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
> How about this? There's no need to take the write lock when creating > links anyway. No effect. > > James > > --- > > diff --git a/drivers/parisc/pdc_stable.c b/drivers/parisc/pdc_stable.c > index 7147aa53e9a2..d7c88b1eaf06 100644 > --- a/drivers/parisc/pdc_stable.c > +++ b/drivers/parisc/pdc_stable.c > @@ -331,13 +331,13 @@ pdcspath_hwpath_write(struct pdcspath_entry *entry, const char *buf, size_t coun > /* Now, dive in. Write back to the hardware */ > pdcspath_store(entry); > > + write_unlock(&entry->rw_lock); > + > /* Update the symlink to the real device */ > sysfs_remove_link(&entry->kobj, "device"); > ret = sysfs_create_link(&entry->kobj, &entry->dev->kobj, "device"); > WARN_ON(ret); > > - write_unlock(&entry->rw_lock); > - > printk(KERN_INFO PDCS_PREFIX ": changed \"%s\" path to \"%s\"\n", > entry->name, buf); > >
On 2017-07-30, at 2:12 PM, Meelis Roos wrote: >> How about this? There's no need to take the write lock when creating >> links anyway. > > No effect. Is the backtrace still the same? -- John David Anglin dave.anglin@bell.net -- To unsubscribe from this list: send the line "unsubscribe linux-parisc" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/drivers/parisc/pdc_stable.c b/drivers/parisc/pdc_stable.c index 7147aa53e9a2..d7c88b1eaf06 100644 --- a/drivers/parisc/pdc_stable.c +++ b/drivers/parisc/pdc_stable.c @@ -331,13 +331,13 @@ pdcspath_hwpath_write(struct pdcspath_entry *entry, const char *buf, size_t coun /* Now, dive in. Write back to the hardware */ pdcspath_store(entry); + write_unlock(&entry->rw_lock); + /* Update the symlink to the real device */ sysfs_remove_link(&entry->kobj, "device"); ret = sysfs_create_link(&entry->kobj, &entry->dev->kobj, "device"); WARN_ON(ret); - write_unlock(&entry->rw_lock); - printk(KERN_INFO PDCS_PREFIX ": changed \"%s\" path to \"%s\"\n", entry->name, buf);