sysfs: make s_elem an anonymous union

Make s_elem an anonymous union.  Prefixing with s_elem makes things
needlessly longer without any advantage.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Tejun Heo 2007-09-20 16:05:11 +09:00 committed by Greg Kroah-Hartman
parent 078ce6409c
commit b1fc3d6144
6 changed files with 24 additions and 24 deletions

View file

@ -30,8 +30,8 @@ static int
fill_read(struct dentry *dentry, char *buffer, loff_t off, size_t count) fill_read(struct dentry *dentry, char *buffer, loff_t off, size_t count)
{ {
struct sysfs_dirent *attr_sd = dentry->d_fsdata; struct sysfs_dirent *attr_sd = dentry->d_fsdata;
struct bin_attribute *attr = attr_sd->s_elem.bin_attr.bin_attr; struct bin_attribute *attr = attr_sd->s_bin_attr.bin_attr;
struct kobject *kobj = attr_sd->s_parent->s_elem.dir.kobj; struct kobject *kobj = attr_sd->s_parent->s_dir.kobj;
int rc; int rc;
/* need attr_sd for attr, its parent for kobj */ /* need attr_sd for attr, its parent for kobj */
@ -87,8 +87,8 @@ static int
flush_write(struct dentry *dentry, char *buffer, loff_t offset, size_t count) flush_write(struct dentry *dentry, char *buffer, loff_t offset, size_t count)
{ {
struct sysfs_dirent *attr_sd = dentry->d_fsdata; struct sysfs_dirent *attr_sd = dentry->d_fsdata;
struct bin_attribute *attr = attr_sd->s_elem.bin_attr.bin_attr; struct bin_attribute *attr = attr_sd->s_bin_attr.bin_attr;
struct kobject *kobj = attr_sd->s_parent->s_elem.dir.kobj; struct kobject *kobj = attr_sd->s_parent->s_dir.kobj;
int rc; int rc;
/* need attr_sd for attr, its parent for kobj */ /* need attr_sd for attr, its parent for kobj */
@ -140,8 +140,8 @@ static int mmap(struct file *file, struct vm_area_struct *vma)
{ {
struct bin_buffer *bb = file->private_data; struct bin_buffer *bb = file->private_data;
struct sysfs_dirent *attr_sd = file->f_path.dentry->d_fsdata; struct sysfs_dirent *attr_sd = file->f_path.dentry->d_fsdata;
struct bin_attribute *attr = attr_sd->s_elem.bin_attr.bin_attr; struct bin_attribute *attr = attr_sd->s_bin_attr.bin_attr;
struct kobject *kobj = attr_sd->s_parent->s_elem.dir.kobj; struct kobject *kobj = attr_sd->s_parent->s_dir.kobj;
int rc; int rc;
mutex_lock(&bb->mutex); mutex_lock(&bb->mutex);
@ -167,7 +167,7 @@ static int mmap(struct file *file, struct vm_area_struct *vma)
static int open(struct inode * inode, struct file * file) static int open(struct inode * inode, struct file * file)
{ {
struct sysfs_dirent *attr_sd = file->f_path.dentry->d_fsdata; struct sysfs_dirent *attr_sd = file->f_path.dentry->d_fsdata;
struct bin_attribute *attr = attr_sd->s_elem.bin_attr.bin_attr; struct bin_attribute *attr = attr_sd->s_bin_attr.bin_attr;
struct bin_buffer *bb = NULL; struct bin_buffer *bb = NULL;
int error; int error;

View file

@ -273,7 +273,7 @@ void release_sysfs_dirent(struct sysfs_dirent * sd)
parent_sd = sd->s_parent; parent_sd = sd->s_parent;
if (sysfs_type(sd) == SYSFS_KOBJ_LINK) if (sysfs_type(sd) == SYSFS_KOBJ_LINK)
sysfs_put(sd->s_elem.symlink.target_sd); sysfs_put(sd->s_symlink.target_sd);
if (sysfs_type(sd) & SYSFS_COPY_NAME) if (sysfs_type(sd) & SYSFS_COPY_NAME)
kfree(sd->s_name); kfree(sd->s_name);
kfree(sd->s_iattr); kfree(sd->s_iattr);
@ -630,7 +630,7 @@ static int create_dir(struct kobject *kobj, struct sysfs_dirent *parent_sd,
sd = sysfs_new_dirent(name, mode, SYSFS_DIR); sd = sysfs_new_dirent(name, mode, SYSFS_DIR);
if (!sd) if (!sd)
return -ENOMEM; return -ENOMEM;
sd->s_elem.dir.kobj = kobj; sd->s_dir.kobj = kobj;
/* link in */ /* link in */
sysfs_addrm_start(&acxt, parent_sd); sysfs_addrm_start(&acxt, parent_sd);

View file

@ -73,7 +73,7 @@ struct sysfs_buffer {
static int fill_read_buffer(struct dentry * dentry, struct sysfs_buffer * buffer) static int fill_read_buffer(struct dentry * dentry, struct sysfs_buffer * buffer)
{ {
struct sysfs_dirent *attr_sd = dentry->d_fsdata; struct sysfs_dirent *attr_sd = dentry->d_fsdata;
struct kobject *kobj = attr_sd->s_parent->s_elem.dir.kobj; struct kobject *kobj = attr_sd->s_parent->s_dir.kobj;
struct sysfs_ops * ops = buffer->ops; struct sysfs_ops * ops = buffer->ops;
int ret = 0; int ret = 0;
ssize_t count; ssize_t count;
@ -88,7 +88,7 @@ static int fill_read_buffer(struct dentry * dentry, struct sysfs_buffer * buffer
return -ENODEV; return -ENODEV;
buffer->event = atomic_read(&attr_sd->s_event); buffer->event = atomic_read(&attr_sd->s_event);
count = ops->show(kobj, attr_sd->s_elem.attr.attr, buffer->page); count = ops->show(kobj, attr_sd->s_attr.attr, buffer->page);
sysfs_put_active_two(attr_sd); sysfs_put_active_two(attr_sd);
@ -188,7 +188,7 @@ static int
flush_write_buffer(struct dentry * dentry, struct sysfs_buffer * buffer, size_t count) flush_write_buffer(struct dentry * dentry, struct sysfs_buffer * buffer, size_t count)
{ {
struct sysfs_dirent *attr_sd = dentry->d_fsdata; struct sysfs_dirent *attr_sd = dentry->d_fsdata;
struct kobject *kobj = attr_sd->s_parent->s_elem.dir.kobj; struct kobject *kobj = attr_sd->s_parent->s_dir.kobj;
struct sysfs_ops * ops = buffer->ops; struct sysfs_ops * ops = buffer->ops;
int rc; int rc;
@ -196,7 +196,7 @@ flush_write_buffer(struct dentry * dentry, struct sysfs_buffer * buffer, size_t
if (!sysfs_get_active_two(attr_sd)) if (!sysfs_get_active_two(attr_sd))
return -ENODEV; return -ENODEV;
rc = ops->store(kobj, attr_sd->s_elem.attr.attr, buffer->page, count); rc = ops->store(kobj, attr_sd->s_attr.attr, buffer->page, count);
sysfs_put_active_two(attr_sd); sysfs_put_active_two(attr_sd);
@ -240,7 +240,7 @@ sysfs_write_file(struct file *file, const char __user *buf, size_t count, loff_t
static int sysfs_open_file(struct inode *inode, struct file *file) static int sysfs_open_file(struct inode *inode, struct file *file)
{ {
struct sysfs_dirent *attr_sd = file->f_path.dentry->d_fsdata; struct sysfs_dirent *attr_sd = file->f_path.dentry->d_fsdata;
struct kobject *kobj = attr_sd->s_parent->s_elem.dir.kobj; struct kobject *kobj = attr_sd->s_parent->s_dir.kobj;
struct sysfs_buffer * buffer; struct sysfs_buffer * buffer;
struct sysfs_ops * ops = NULL; struct sysfs_ops * ops = NULL;
int error; int error;
@ -336,7 +336,7 @@ static unsigned int sysfs_poll(struct file *filp, poll_table *wait)
{ {
struct sysfs_buffer * buffer = filp->private_data; struct sysfs_buffer * buffer = filp->private_data;
struct sysfs_dirent *attr_sd = filp->f_path.dentry->d_fsdata; struct sysfs_dirent *attr_sd = filp->f_path.dentry->d_fsdata;
struct kobject *kobj = attr_sd->s_parent->s_elem.dir.kobj; struct kobject *kobj = attr_sd->s_parent->s_dir.kobj;
/* need parent for the kobj, grab both */ /* need parent for the kobj, grab both */
if (!sysfs_get_active_two(attr_sd)) if (!sysfs_get_active_two(attr_sd))
@ -396,7 +396,7 @@ int sysfs_add_file(struct sysfs_dirent *dir_sd, const struct attribute *attr,
sd = sysfs_new_dirent(attr->name, mode, type); sd = sysfs_new_dirent(attr->name, mode, type);
if (!sd) if (!sd)
return -ENOMEM; return -ENOMEM;
sd->s_elem.attr.attr = (void *)attr; sd->s_attr.attr = (void *)attr;
sysfs_addrm_start(&acxt, dir_sd); sysfs_addrm_start(&acxt, dir_sd);
rc = sysfs_add_one(&acxt, sd); rc = sysfs_add_one(&acxt, sd);

View file

@ -172,7 +172,7 @@ static void sysfs_init_inode(struct sysfs_dirent *sd, struct inode *inode)
inode->i_fop = &sysfs_file_operations; inode->i_fop = &sysfs_file_operations;
break; break;
case SYSFS_KOBJ_BIN_ATTR: case SYSFS_KOBJ_BIN_ATTR:
bin_attr = sd->s_elem.bin_attr.bin_attr; bin_attr = sd->s_bin_attr.bin_attr;
inode->i_size = bin_attr->size; inode->i_size = bin_attr->size;
inode->i_fop = &bin_fops; inode->i_fop = &bin_fops;
break; break;

View file

@ -86,7 +86,7 @@ int sysfs_create_link(struct kobject * kobj, struct kobject * target, const char
if (!sd) if (!sd)
goto out_put; goto out_put;
sd->s_elem.symlink.target_sd = target_sd; sd->s_symlink.target_sd = target_sd;
target_sd = NULL; /* reference is now owned by the symlink */ target_sd = NULL; /* reference is now owned by the symlink */
sysfs_addrm_start(&acxt, parent_sd); sysfs_addrm_start(&acxt, parent_sd);
@ -142,7 +142,7 @@ static int sysfs_getlink(struct dentry *dentry, char * path)
{ {
struct sysfs_dirent *sd = dentry->d_fsdata; struct sysfs_dirent *sd = dentry->d_fsdata;
struct sysfs_dirent *parent_sd = sd->s_parent; struct sysfs_dirent *parent_sd = sd->s_parent;
struct sysfs_dirent *target_sd = sd->s_elem.symlink.target_sd; struct sysfs_dirent *target_sd = sd->s_symlink.target_sd;
int error; int error;
mutex_lock(&sysfs_mutex); mutex_lock(&sysfs_mutex);

View file

@ -32,11 +32,11 @@ struct sysfs_dirent {
const char *s_name; const char *s_name;
union { union {
struct sysfs_elem_dir dir; struct sysfs_elem_dir s_dir;
struct sysfs_elem_symlink symlink; struct sysfs_elem_symlink s_symlink;
struct sysfs_elem_attr attr; struct sysfs_elem_attr s_attr;
struct sysfs_elem_bin_attr bin_attr; struct sysfs_elem_bin_attr s_bin_attr;
} s_elem; };
unsigned int s_flags; unsigned int s_flags;
ino_t s_ino; ino_t s_ino;