提交 2581c9cc 编写于 作者: G Greg Kroah-Hartman

driver core: bus: use DRIVER_ATTR_WO()

There are two bus attributes that can better be defined using
DRIVER_ATTR_WO(), so convert them to the new macro, making it easier to
audit attribute permissions.
Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
上级 1130c55c
...@@ -165,8 +165,8 @@ static const struct kset_uevent_ops bus_uevent_ops = { ...@@ -165,8 +165,8 @@ static const struct kset_uevent_ops bus_uevent_ops = {
static struct kset *bus_kset; static struct kset *bus_kset;
/* Manually detach a device from its associated driver. */ /* Manually detach a device from its associated driver. */
static ssize_t driver_unbind(struct device_driver *drv, static ssize_t unbind_store(struct device_driver *drv, const char *buf,
const char *buf, size_t count) size_t count)
{ {
struct bus_type *bus = bus_get(drv->bus); struct bus_type *bus = bus_get(drv->bus);
struct device *dev; struct device *dev;
...@@ -185,15 +185,15 @@ static ssize_t driver_unbind(struct device_driver *drv, ...@@ -185,15 +185,15 @@ static ssize_t driver_unbind(struct device_driver *drv,
bus_put(bus); bus_put(bus);
return err; return err;
} }
static DRIVER_ATTR(unbind, S_IWUSR, NULL, driver_unbind); static DRIVER_ATTR_WO(unbind);
/* /*
* Manually attach a device to a driver. * Manually attach a device to a driver.
* Note: the driver must want to bind to the device, * Note: the driver must want to bind to the device,
* it is not possible to override the driver's id table. * it is not possible to override the driver's id table.
*/ */
static ssize_t driver_bind(struct device_driver *drv, static ssize_t bind_store(struct device_driver *drv, const char *buf,
const char *buf, size_t count) size_t count)
{ {
struct bus_type *bus = bus_get(drv->bus); struct bus_type *bus = bus_get(drv->bus);
struct device *dev; struct device *dev;
...@@ -221,7 +221,7 @@ static ssize_t driver_bind(struct device_driver *drv, ...@@ -221,7 +221,7 @@ static ssize_t driver_bind(struct device_driver *drv,
bus_put(bus); bus_put(bus);
return err; return err;
} }
static DRIVER_ATTR(bind, S_IWUSR, NULL, driver_bind); static DRIVER_ATTR_WO(bind);
static ssize_t show_drivers_autoprobe(struct bus_type *bus, char *buf) static ssize_t show_drivers_autoprobe(struct bus_type *bus, char *buf)
{ {
...@@ -665,8 +665,8 @@ static void remove_probe_files(struct bus_type *bus) ...@@ -665,8 +665,8 @@ static void remove_probe_files(struct bus_type *bus)
bus_remove_file(bus, &bus_attr_drivers_probe); bus_remove_file(bus, &bus_attr_drivers_probe);
} }
static ssize_t driver_uevent_store(struct device_driver *drv, static ssize_t uevent_store(struct device_driver *drv, const char *buf,
const char *buf, size_t count) size_t count)
{ {
enum kobject_action action; enum kobject_action action;
...@@ -674,7 +674,7 @@ static ssize_t driver_uevent_store(struct device_driver *drv, ...@@ -674,7 +674,7 @@ static ssize_t driver_uevent_store(struct device_driver *drv,
kobject_uevent(&drv->p->kobj, action); kobject_uevent(&drv->p->kobj, action);
return count; return count;
} }
static DRIVER_ATTR(uevent, S_IWUSR, NULL, driver_uevent_store); static DRIVER_ATTR_WO(uevent);
/** /**
* bus_add_driver - Add a driver to the bus. * bus_add_driver - Add a driver to the bus.
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册