#define QUEUE_SYSFS_BIT_FNS(name, flag, neg)                           \
 static ssize_t                                                         \
-queue_show_##name(struct request_queue *q, char *page)                 \
+queue_##name##_show(struct request_queue *q, char *page)               \
 {                                                                      \
        int bit;                                                        \
        bit = test_bit(QUEUE_FLAG_##flag, &q->queue_flags);             \
        return queue_var_show(neg ? !bit : bit, page);                  \
 }                                                                      \
 static ssize_t                                                         \
-queue_store_##name(struct request_queue *q, const char *page, size_t count) \
+queue_##name##_store(struct request_queue *q, const char *page, size_t count) \
 {                                                                      \
        unsigned long val;                                              \
        ssize_t ret;                                                    \
        .show = queue_logical_block_size_show,
 };
 
-static struct queue_sysfs_entry queue_nonrot_entry = {
-       .attr = {.name = "rotational", .mode = 0644 },
-       .show = queue_show_nonrot,
-       .store = queue_store_nonrot,
-};
-
-static struct queue_sysfs_entry queue_iostats_entry = {
-       .attr = {.name = "iostats", .mode = 0644 },
-       .show = queue_show_iostats,
-       .store = queue_store_iostats,
-};
-
-static struct queue_sysfs_entry queue_random_entry = {
-       .attr = {.name = "add_random", .mode = 0644 },
-       .show = queue_show_random,
-       .store = queue_store_random,
-};
+QUEUE_RW_ENTRY(queue_nonrot, "rotational");
+QUEUE_RW_ENTRY(queue_iostats, "iostats");
+QUEUE_RW_ENTRY(queue_random, "add_random");
 
 static struct attribute *queue_attrs[] = {
        &queue_requests_entry.attr,