All of lore.kernel.org
 help / color / mirror / Atom feed
diff for duplicates of <1489598142.2733.60.camel@linux.intel.com>

diff --git a/a/1.txt b/N1/1.txt
index 3dd8810..6869802 100644
--- a/a/1.txt
+++ b/N1/1.txt
@@ -7,10 +7,10 @@ On Wed, 2017-03-15 at 09:19 +0800, Huang, Ying wrote:
 > > > From: Huang Ying <ying.huang@intel.com>
 > > > 
 > > > The swap cluster allocation/free functions are added based on the
-> > > existing swap cluster management mechanism for SSD.A A These functions
+> > > existing swap cluster management mechanism for SSD.  These functions
 > > > don't work for the rotating hard disks because the existing swap cluster
-> > > management mechanism doesn't work for them.A A The hard disks support may
-> > > be added if someone really need it.A A But that needn't be included in
+> > > management mechanism doesn't work for them.  The hard disks support may
+> > > be added if someone really need it.  But that needn't be included in
 > > > this patchset.
 > > > 
 > > > This will be used for the THP (Transparent Huge Page) swap support.
@@ -24,17 +24,17 @@ On Wed, 2017-03-15 at 09:19 +0800, Huang, Ying wrote:
 > > > Cc: Rik van Riel <riel@redhat.com>
 > > > Signed-off-by: "Huang, Ying" <ying.huang@intel.com>
 > > > ---
-> > > A mm/swapfile.c | 217 +++++++++++++++++++++++++++++++++++++++++-----------------
-> > > A 1 file changed, 156 insertions(+), 61 deletions(-)
+> > >  mm/swapfile.c | 217 +++++++++++++++++++++++++++++++++++++++++-----------------
+> > >  1 file changed, 156 insertions(+), 61 deletions(-)
 > > > 
 > > > diff --git a/mm/swapfile.c b/mm/swapfile.c
 > > > index a744604384ff..91876c33114b 100644
 > > > --- a/mm/swapfile.c
 > > > +++ b/mm/swapfile.c
 > > > @@ -378,6 +378,14 @@ static void swap_cluster_schedule_discard(struct swap_info_struct *si,
-> > > A 	schedule_work(&si->discard_work);
-> > > A }
-> > > A 
+> > >  	schedule_work(&si->discard_work);
+> > >  }
+> > >  
 > > > +static void __free_cluster(struct swap_info_struct *si, unsigned long idx)
 > > > +{
 > > > +	struct swap_cluster_info *ci = si->cluster_info;
@@ -43,43 +43,37 @@ On Wed, 2017-03-15 at 09:19 +0800, Huang, Ying wrote:
 > > > +	cluster_list_add_tail(&si->free_clusters, ci, idx);
 > > > +}
 > > > +
-> > > A /*
-> > > A  * Doing discard actually. After a cluster discard is finished, the cluster
-> > > A  * will be added to free cluster list. caller should hold si->lock.
+> > >  /*
+> > >   * Doing discard actually. After a cluster discard is finished, the cluster
+> > >   * will be added to free cluster list. caller should hold si->lock.
 > > > @@ -398,10 +406,7 @@ static void swap_do_scheduled_discard(struct swap_info_struct *si)
-> > > A 
-> > > A 		spin_lock(&si->lock);
-> > > A 		ci = lock_cluster(si, idx * SWAPFILE_CLUSTER);
+> > >  
+> > >  		spin_lock(&si->lock);
+> > >  		ci = lock_cluster(si, idx * SWAPFILE_CLUSTER);
 > > > -		cluster_set_flag(ci, CLUSTER_FLAG_FREE);
 > > > -		unlock_cluster(ci);
 > > > -		cluster_list_add_tail(&si->free_clusters, info, idx);
 > > > -		ci = lock_cluster(si, idx * SWAPFILE_CLUSTER);
 > > > +		__free_cluster(si, idx);
-> > > A 		memset(si->swap_map + idx * SWAPFILE_CLUSTER,
-> > > A 				0, SWAPFILE_CLUSTER);
-> > > A 		unlock_cluster(ci);
+> > >  		memset(si->swap_map + idx * SWAPFILE_CLUSTER,
+> > >  				0, SWAPFILE_CLUSTER);
+> > >  		unlock_cluster(ci);
 > > The __free_cluster definition and the above change to eliminate
 > > the extra unlock_cluster and lock_cluster can perhaps be broken up
-> > as a separate patch. A It can be independent of THP changes.
+> > as a separate patch.  It can be independent of THP changes.
 > I think the change may have no value by itself without THP changes.
 > There will be only 1 user of __free_cluster() and the lock change is
-> trivial too.A A So I think it may be better just to keep it as that?
+> trivial too.  So I think it may be better just to keep it as that?
 > 
 
 Seems like the extra unlock and lock of cluster in existing code should be taken out
 irrespective of the THP changes:
-A 
 		cluster_set_flag(ci, CLUSTER_FLAG_FREE);
 -		unlock_cluster(ci);
 		cluster_list_add_tail(&si->free_clusters, info, idx);
 -		ci = lock_cluster(si, idx * SWAPFILE_CLUSTER);
 		memset(si->swap_map + idx * SWAPFILE_CLUSTER,
-A A 				0, SWAPFILE_CLUSTER);
+  				0, SWAPFILE_CLUSTER);
 
 Tim
-
---
-To unsubscribe, send a message with 'unsubscribe linux-mm' in
-the body to majordomo@kvack.org.  For more info on Linux MM,
-see: http://www.linux-mm.org/ .
-Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
diff --git a/a/content_digest b/N1/content_digest
index cb0ec82..d3ed332 100644
--- a/a/content_digest
+++ b/N1/content_digest
@@ -27,10 +27,10 @@
  "> > > From: Huang Ying <ying.huang@intel.com>\n"
  "> > > \n"
  "> > > The swap cluster allocation/free functions are added based on the\n"
- "> > > existing swap cluster management mechanism for SSD.A A These functions\n"
+ "> > > existing swap cluster management mechanism for SSD.\302\240\302\240These functions\n"
  "> > > don't work for the rotating hard disks because the existing swap cluster\n"
- "> > > management mechanism doesn't work for them.A A The hard disks support may\n"
- "> > > be added if someone really need it.A A But that needn't be included in\n"
+ "> > > management mechanism doesn't work for them.\302\240\302\240The hard disks support may\n"
+ "> > > be added if someone really need it.\302\240\302\240But that needn't be included in\n"
  "> > > this patchset.\n"
  "> > > \n"
  "> > > This will be used for the THP (Transparent Huge Page) swap support.\n"
@@ -44,17 +44,17 @@
  "> > > Cc: Rik van Riel <riel@redhat.com>\n"
  "> > > Signed-off-by: \"Huang, Ying\" <ying.huang@intel.com>\n"
  "> > > ---\n"
- "> > > A mm/swapfile.c | 217 +++++++++++++++++++++++++++++++++++++++++-----------------\n"
- "> > > A 1 file changed, 156 insertions(+), 61 deletions(-)\n"
+ "> > > \302\240mm/swapfile.c | 217 +++++++++++++++++++++++++++++++++++++++++-----------------\n"
+ "> > > \302\2401 file changed, 156 insertions(+), 61 deletions(-)\n"
  "> > > \n"
  "> > > diff --git a/mm/swapfile.c b/mm/swapfile.c\n"
  "> > > index a744604384ff..91876c33114b 100644\n"
  "> > > --- a/mm/swapfile.c\n"
  "> > > +++ b/mm/swapfile.c\n"
  "> > > @@ -378,6 +378,14 @@ static void swap_cluster_schedule_discard(struct swap_info_struct *si,\n"
- "> > > A \tschedule_work(&si->discard_work);\n"
- "> > > A }\n"
- "> > > A \n"
+ "> > > \302\240\tschedule_work(&si->discard_work);\n"
+ "> > > \302\240}\n"
+ "> > > \302\240\n"
  "> > > +static void __free_cluster(struct swap_info_struct *si, unsigned long idx)\n"
  "> > > +{\n"
  "> > > +\tstruct swap_cluster_info *ci = si->cluster_info;\n"
@@ -63,45 +63,39 @@
  "> > > +\tcluster_list_add_tail(&si->free_clusters, ci, idx);\n"
  "> > > +}\n"
  "> > > +\n"
- "> > > A /*\n"
- "> > > A  * Doing discard actually. After a cluster discard is finished, the cluster\n"
- "> > > A  * will be added to free cluster list. caller should hold si->lock.\n"
+ "> > > \302\240/*\n"
+ "> > > \302\240 * Doing discard actually. After a cluster discard is finished, the cluster\n"
+ "> > > \302\240 * will be added to free cluster list. caller should hold si->lock.\n"
  "> > > @@ -398,10 +406,7 @@ static void swap_do_scheduled_discard(struct swap_info_struct *si)\n"
- "> > > A \n"
- "> > > A \t\tspin_lock(&si->lock);\n"
- "> > > A \t\tci = lock_cluster(si, idx * SWAPFILE_CLUSTER);\n"
+ "> > > \302\240\n"
+ "> > > \302\240\t\tspin_lock(&si->lock);\n"
+ "> > > \302\240\t\tci = lock_cluster(si, idx * SWAPFILE_CLUSTER);\n"
  "> > > -\t\tcluster_set_flag(ci, CLUSTER_FLAG_FREE);\n"
  "> > > -\t\tunlock_cluster(ci);\n"
  "> > > -\t\tcluster_list_add_tail(&si->free_clusters, info, idx);\n"
  "> > > -\t\tci = lock_cluster(si, idx * SWAPFILE_CLUSTER);\n"
  "> > > +\t\t__free_cluster(si, idx);\n"
- "> > > A \t\tmemset(si->swap_map + idx * SWAPFILE_CLUSTER,\n"
- "> > > A \t\t\t\t0, SWAPFILE_CLUSTER);\n"
- "> > > A \t\tunlock_cluster(ci);\n"
+ "> > > \302\240\t\tmemset(si->swap_map + idx * SWAPFILE_CLUSTER,\n"
+ "> > > \302\240\t\t\t\t0, SWAPFILE_CLUSTER);\n"
+ "> > > \302\240\t\tunlock_cluster(ci);\n"
  "> > The __free_cluster definition and the above change to eliminate\n"
  "> > the extra unlock_cluster and lock_cluster can perhaps be broken up\n"
- "> > as a separate patch. A It can be independent of THP changes.\n"
+ "> > as a separate patch. \302\240It can be independent of THP changes.\n"
  "> I think the change may have no value by itself without THP changes.\n"
  "> There will be only 1 user of __free_cluster() and the lock change is\n"
- "> trivial too.A A So I think it may be better just to keep it as that?\n"
+ "> trivial too.\302\240\302\240So I think it may be better just to keep it as that?\n"
  "> \n"
  "\n"
  "Seems like the extra unlock and lock of cluster in existing code should be taken out\n"
  "irrespective of the THP changes:\n"
- "A \n"
+ "\302\240\n"
  "\t\tcluster_set_flag(ci, CLUSTER_FLAG_FREE);\n"
  "-\t\tunlock_cluster(ci);\n"
  "\t\tcluster_list_add_tail(&si->free_clusters, info, idx);\n"
  "-\t\tci = lock_cluster(si, idx * SWAPFILE_CLUSTER);\n"
  "\t\tmemset(si->swap_map + idx * SWAPFILE_CLUSTER,\n"
- "A A \t\t\t\t0, SWAPFILE_CLUSTER);\n"
+ "\302\240\302\240\t\t\t\t0, SWAPFILE_CLUSTER);\n"
  "\n"
- "Tim\n"
- "\n"
- "--\n"
- "To unsubscribe, send a message with 'unsubscribe linux-mm' in\n"
- "the body to majordomo@kvack.org.  For more info on Linux MM,\n"
- "see: http://www.linux-mm.org/ .\n"
- "Don't email: <a href=mailto:\"dont@kvack.org\"> email@kvack.org </a>"
+ Tim
 
-0b10d724639cdc01aea8486e0d47295a39cbf05d12af88730021ede214eacc9e
+4c5291723a47167b03316cf6adbf001e63a7c399c91203d8cb406a019ac7fef0

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.