diff options
| -rw-r--r-- | include/linux/sysfs.h | 17 | 
1 files changed, 9 insertions, 8 deletions
| diff --git a/include/linux/sysfs.h b/include/linux/sysfs.h index d907a7328025..9e8a9b555ad6 100644 --- a/include/linux/sysfs.h +++ b/include/linux/sysfs.h @@ -69,18 +69,19 @@ struct attribute_group {   * for examples..   */ -#define __ATTR(_name,_mode,_show,_store) { \ -	.attr = {.name = __stringify(_name), .mode = _mode },	\ -	.show	= _show,					\ -	.store	= _store,					\ +#define __ATTR(_name,_mode,_show,_store) { 				\ +	.attr = {.name = __stringify(_name), .mode = _mode },		\ +	.show	= _show,						\ +	.store	= _store,						\  } -#define __ATTR_RO(_name) { \ -	.attr	= { .name = __stringify(_name), .mode = 0444 },	\ -	.show	= _name##_show,					\ +#define __ATTR_RO(_name) {						\ +	.attr	= { .name = __stringify(_name), .mode = S_IRUGO },	\ +	.show	= _name##_show,						\  } -#define __ATTR_RW(_name) __ATTR(_name, 0644, _name##_show, _name##_store) +#define __ATTR_RW(_name) __ATTR(_name, (S_IWUSR | S_IRUGO),		\ +			 _name##_show, _name##_store)  #define __ATTR_NULL { .attr = { .name = NULL } } | 
