diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2006-03-18 18:35:43 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2006-03-18 18:35:43 -0500 |
commit | 3d1ab40f4c20767afbd361b258a531d73e3e6fc2 (patch) | |
tree | 2da79cc8b47a98b0496b6e762fa790a8d547977b /include/linux | |
parent | 1cc9be68ebcc1de9904bf225441613878da9c0d8 (diff) | |
download | linux-3d1ab40f4c20767afbd361b258a531d73e3e6fc2.tar.gz linux-3d1ab40f4c20767afbd361b258a531d73e3e6fc2.tar.bz2 linux-3d1ab40f4c20767afbd361b258a531d73e3e6fc2.zip |
[PATCH] elevator_t lifetime rules and sysfs fixes
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/elevator.h | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/include/linux/elevator.h b/include/linux/elevator.h index f65766ef0532..4d0a80f13ee0 100644 --- a/include/linux/elevator.h +++ b/include/linux/elevator.h @@ -61,7 +61,7 @@ struct elevator_type struct list_head list; struct elevator_ops ops; struct elevator_type *elevator_type; - struct kobj_type *elevator_ktype; + struct attribute **elevator_attrs; char elevator_name[ELV_NAME_MAX]; struct module *elevator_owner; }; @@ -75,6 +75,7 @@ struct elevator_queue void *elevator_data; struct kobject kobj; struct elevator_type *elevator_type; + struct mutex sysfs_lock; }; /* @@ -141,6 +142,12 @@ enum { ELV_MQUEUE_MUST, }; +struct elv_fs_entry { + struct attribute attr; + ssize_t (*show)(elevator_t *, char *); + ssize_t (*store)(elevator_t *, const char *, size_t); +}; + #define rq_end_sector(rq) ((rq)->sector + (rq)->nr_sectors) #endif |