powerpc/pseries: Introduce pSeries_reconfig_notify()
This introduces pSeries_reconfig_notify() as a just wrapper of blocking_notifier_call_chain() for pSeries_reconfig_chain. This is a preparation to improvement of error code on reconfiguration notifier failure. Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Paul Mackerras <paulus@samba.org> Cc: linuxppc-dev@lists.ozlabs.org Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
此提交包含在:
@@ -262,12 +262,11 @@ int dlpar_attach_node(struct device_node *dn)
|
||||
if (!dn->parent)
|
||||
return -ENOMEM;
|
||||
|
||||
rc = blocking_notifier_call_chain(&pSeries_reconfig_chain,
|
||||
PSERIES_RECONFIG_ADD, dn);
|
||||
if (rc == NOTIFY_BAD) {
|
||||
rc = pSeries_reconfig_notify(PSERIES_RECONFIG_ADD, dn);
|
||||
if (rc) {
|
||||
printk(KERN_ERR "Failed to add device node %s\n",
|
||||
dn->full_name);
|
||||
return -ENOMEM; /* For now, safe to assume kmalloc failure */
|
||||
return rc;
|
||||
}
|
||||
|
||||
of_attach_node(dn);
|
||||
@@ -297,8 +296,7 @@ int dlpar_detach_node(struct device_node *dn)
|
||||
remove_proc_entry(dn->pde->name, parent->pde);
|
||||
#endif
|
||||
|
||||
blocking_notifier_call_chain(&pSeries_reconfig_chain,
|
||||
PSERIES_RECONFIG_REMOVE, dn);
|
||||
pSeries_reconfig_notify(PSERIES_RECONFIG_REMOVE, dn);
|
||||
of_detach_node(dn);
|
||||
of_node_put(dn); /* Must decrement the refcount */
|
||||
|
||||
|
新增問題並參考
封鎖使用者