Signed-off-by: Kent Overstreet <koverstr...@google.com>
---
 fs/aio.c | 26 ++++++++++++++++----------
 1 file changed, 16 insertions(+), 10 deletions(-)

diff --git a/fs/aio.c b/fs/aio.c
index cebd8f2..70a34f6 100644
--- a/fs/aio.c
+++ b/fs/aio.c
@@ -67,13 +67,6 @@ struct kioctx {
        unsigned long           user_id;
        struct hlist_node       list;
 
-       wait_queue_head_t       wait;
-
-       spinlock_t              ctx_lock;
-
-       atomic_t                reqs_active;
-       struct list_head        active_reqs;    /* used for cancellation */
-
        unsigned                nr;
 
        /* sys_io_setup currently limits this to an unsigned int */
@@ -85,6 +78,18 @@ struct kioctx {
        struct page             **ring_pages;
        long                    nr_pages;
 
+       struct rcu_head         rcu_head;
+       struct work_struct      rcu_work;
+
+       struct {
+               atomic_t        reqs_active;
+       } ____cacheline_aligned;
+
+       struct {
+               spinlock_t      ctx_lock;
+               struct list_head active_reqs;   /* used for cancellation */
+       } ____cacheline_aligned;
+
        struct {
                struct mutex    ring_lock;
        } ____cacheline_aligned;
@@ -94,10 +99,11 @@ struct kioctx {
                spinlock_t      completion_lock;
        } ____cacheline_aligned;
 
-       struct page             *internal_pages[AIO_RING_PAGES];
+       struct {
+               wait_queue_head_t wait;
+       } ____cacheline_aligned;
 
-       struct rcu_head         rcu_head;
-       struct work_struct      rcu_work;
+       struct page             *internal_pages[AIO_RING_PAGES];
 };
 
 /*------ sysctl variables----*/
-- 
1.7.12

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to