]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
fix up hlist api change in mmu patch
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 26 May 2013 00:32:44 +0000 (09:32 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 26 May 2013 00:32:44 +0000 (09:32 +0900)
queue-3.0/mm-mmu_notifier-re-fix-freed-page-still-mapped-in-secondary-mmu.patch
queue-3.4/mm-mmu_notifier-re-fix-freed-page-still-mapped-in-secondary-mmu.patch

index 0b7d220a591916bc9a5a92dc77aac9a81859fc5d..7ec24281be5c29a3a53a9d7319bebc2e41614f72 100644 (file)
@@ -54,12 +54,16 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 ---
- mm/mmu_notifier.c |   79 ++++++++++++++++++++++++++----------------------------
- 1 file changed, 39 insertions(+), 40 deletions(-)
+ mm/mmu_notifier.c |   80 +++++++++++++++++++++++++++---------------------------
+ 1 file changed, 40 insertions(+), 40 deletions(-)
 
 --- a/mm/mmu_notifier.c
 +++ b/mm/mmu_notifier.c
-@@ -40,48 +40,44 @@ void __mmu_notifier_release(struct mm_st
+@@ -37,51 +37,48 @@ static struct srcu_struct srcu;
+ void __mmu_notifier_release(struct mm_struct *mm)
+ {
+       struct mmu_notifier *mn;
++      struct hlist_node *node;
        int id;
  
        /*
@@ -71,7 +75,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 +       * ->release returns.
         */
        id = srcu_read_lock(&srcu);
-+      hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist)
++      hlist_for_each_entry_rcu(mn, node, &mm->mmu_notifier_mm->list, hlist)
 +              /*
 +               * If ->release runs before mmu_notifier_unregister it must be
 +               * handled, as it's the only way for the driver to flush all
@@ -132,7 +136,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
         */
        synchronize_srcu(&srcu);
  }
-@@ -302,31 +298,34 @@ void mmu_notifier_unregister(struct mmu_
+@@ -302,31 +299,34 @@ void mmu_notifier_unregister(struct mmu_
  {
        BUG_ON(atomic_read(&mm->mm_count) <= 0);
  
index 0b7d220a591916bc9a5a92dc77aac9a81859fc5d..7ec24281be5c29a3a53a9d7319bebc2e41614f72 100644 (file)
@@ -54,12 +54,16 @@ Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 
 ---
- mm/mmu_notifier.c |   79 ++++++++++++++++++++++++++----------------------------
- 1 file changed, 39 insertions(+), 40 deletions(-)
+ mm/mmu_notifier.c |   80 +++++++++++++++++++++++++++---------------------------
+ 1 file changed, 40 insertions(+), 40 deletions(-)
 
 --- a/mm/mmu_notifier.c
 +++ b/mm/mmu_notifier.c
-@@ -40,48 +40,44 @@ void __mmu_notifier_release(struct mm_st
+@@ -37,51 +37,48 @@ static struct srcu_struct srcu;
+ void __mmu_notifier_release(struct mm_struct *mm)
+ {
+       struct mmu_notifier *mn;
++      struct hlist_node *node;
        int id;
  
        /*
@@ -71,7 +75,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
 +       * ->release returns.
         */
        id = srcu_read_lock(&srcu);
-+      hlist_for_each_entry_rcu(mn, &mm->mmu_notifier_mm->list, hlist)
++      hlist_for_each_entry_rcu(mn, node, &mm->mmu_notifier_mm->list, hlist)
 +              /*
 +               * If ->release runs before mmu_notifier_unregister it must be
 +               * handled, as it's the only way for the driver to flush all
@@ -132,7 +136,7 @@ Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
         */
        synchronize_srcu(&srcu);
  }
-@@ -302,31 +298,34 @@ void mmu_notifier_unregister(struct mmu_
+@@ -302,31 +299,34 @@ void mmu_notifier_unregister(struct mmu_
  {
        BUG_ON(atomic_read(&mm->mm_count) <= 0);