All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mina Almasry <almasrymina@google.com>
Cc: Mina Almasry <almasrymina@google.com>,
	David Rientjes <rientjes@google.com>,
	 Mike Kravetz <mike.kravetz@oracle.com>,
	Shakeel Butt <shakeelb@google.com>,
	 Andrew Morton <akpm@linux-foundation.org>,
	linux-mm@kvack.org,  linux-kernel@vger.kernel.org
Subject: [PATCH] hugetlb: Remove check_coalesce_bug debug code
Date: Wed, 19 Feb 2020 15:36:10 -0800	[thread overview]
Message-ID: <20200219233610.13808-1-almasrymina@google.com> (raw)
In-Reply-To: <cb402ae6-8424-c1f7-35ff-6acc68f9a23b@oracle.com>

Commit b5f16a533ce8a ("hugetlb: support file_region coalescing
again") made changes to the resv_map code which are hard to test, it
so added debug code guarded by CONFIG_DEBUG_VM which conducts an
expensive operation that loops over the resv_map and checks it for
errors.

Unfortunately, some distros have CONFIG_DEBUG_VM on in their default
kernels, and we don't want this debug code behind CONFIG_DEBUG_VM
and called each time a file region is added. This patch removes this
debug code. I may look into making it a test or leave it for my local
testing.

Signed-off-by: Mina Almasry <almasrymina@google.com>

Cc: David Rientjes <rientjes@google.com>
Cc: Mike Kravetz <mike.kravetz@oracle.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org
Cc: linux-kernel@vger.kernel.org

Fixes: b5f16a533ce8a ("hugetlb: support file_region coalescing again")

---
 mm/hugetlb.c | 43 -------------------------------------------
 1 file changed, 43 deletions(-)

diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 94e27dfec0435..3febbbda3dc2b 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -289,48 +289,6 @@ static bool has_same_uncharge_info(struct file_region *rg,
 #endif
 }

-#if defined(CONFIG_DEBUG_VM) && defined(CONFIG_CGROUP_HUGETLB)
-static void dump_resv_map(struct resv_map *resv)
-{
-	struct list_head *head = &resv->regions;
-	struct file_region *rg = NULL;
-
-	pr_err("--------- start print resv_map ---------\n");
-	list_for_each_entry(rg, head, link) {
-		pr_err("rg->from=%ld, rg->to=%ld, rg->reservation_counter=%px, rg->css=%px\n",
-		       rg->from, rg->to, rg->reservation_counter, rg->css);
-	}
-	pr_err("--------- end print resv_map ---------\n");
-}
-
-/* Debug function to loop over the resv_map and make sure that coalescing is
- * working.
- */
-static void check_coalesce_bug(struct resv_map *resv)
-{
-	struct list_head *head = &resv->regions;
-	struct file_region *rg = NULL, *nrg = NULL;
-
-	list_for_each_entry(rg, head, link) {
-		nrg = list_next_entry(rg, link);
-
-		if (&nrg->link == head)
-			break;
-
-		if (nrg->reservation_counter && nrg->from == rg->to &&
-		    nrg->reservation_counter == rg->reservation_counter &&
-		    nrg->css == rg->css) {
-			dump_resv_map(resv);
-			VM_BUG_ON(true);
-		}
-	}
-}
-#else
-static void check_coalesce_bug(struct resv_map *resv)
-{
-}
-#endif
-
 static void coalesce_file_region(struct resv_map *resv, struct file_region *rg)
 {
 	struct file_region *nrg = NULL, *prg = NULL;
@@ -435,7 +393,6 @@ static long add_reservation_in_range(struct resv_map *resv, long f, long t,
 	}

 	VM_BUG_ON(add < 0);
-	check_coalesce_bug(resv);
 	return add;
 }

--
2.25.0.265.gbab2e86ba0-goog


WARNING: multiple messages have this Message-ID (diff)
From: Mina Almasry <almasrymina@google.com>
To: unlisted-recipients:; (no To-header on input)
Cc: Mina Almasry <almasrymina@google.com>,
	David Rientjes <rientjes@google.com>,
	Mike Kravetz <mike.kravetz@oracle.com>,
	Shakeel Butt <shakeelb@google.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-mm@kvack.org, linux-kernel@vger.kernel.org
Subject: [PATCH] hugetlb: Remove check_coalesce_bug debug code
Date: Wed, 19 Feb 2020 15:36:10 -0800	[thread overview]
Message-ID: <20200219233610.13808-1-almasrymina@google.com> (raw)
In-Reply-To: <cb402ae6-8424-c1f7-35ff-6acc68f9a23b@oracle.com>

Commit b5f16a533ce8a ("hugetlb: support file_region coalescing
again") made changes to the resv_map code which are hard to test, it
so added debug code guarded by CONFIG_DEBUG_VM which conducts an
expensive operation that loops over the resv_map and checks it for
errors.

Unfortunately, some distros have CONFIG_DEBUG_VM on in their default
kernels, and we don't want this debug code behind CONFIG_DEBUG_VM
and called each time a file region is added. This patch removes this
debug code. I may look into making it a test or leave it for my local
testing.

Signed-off-by: Mina Almasry <almasrymina@google.com>

Cc: David Rientjes <rientjes@google.com>
Cc: Mike Kravetz <mike.kravetz@oracle.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Andrew Morton <akpm@linux-foundation.org>
Cc: linux-mm@kvack.org
Cc: linux-kernel@vger.kernel.org

Fixes: b5f16a533ce8a ("hugetlb: support file_region coalescing again")

---
 mm/hugetlb.c | 43 -------------------------------------------
 1 file changed, 43 deletions(-)

diff --git a/mm/hugetlb.c b/mm/hugetlb.c
index 94e27dfec0435..3febbbda3dc2b 100644
--- a/mm/hugetlb.c
+++ b/mm/hugetlb.c
@@ -289,48 +289,6 @@ static bool has_same_uncharge_info(struct file_region *rg,
 #endif
 }

-#if defined(CONFIG_DEBUG_VM) && defined(CONFIG_CGROUP_HUGETLB)
-static void dump_resv_map(struct resv_map *resv)
-{
-	struct list_head *head = &resv->regions;
-	struct file_region *rg = NULL;
-
-	pr_err("--------- start print resv_map ---------\n");
-	list_for_each_entry(rg, head, link) {
-		pr_err("rg->from=%ld, rg->to=%ld, rg->reservation_counter=%px, rg->css=%px\n",
-		       rg->from, rg->to, rg->reservation_counter, rg->css);
-	}
-	pr_err("--------- end print resv_map ---------\n");
-}
-
-/* Debug function to loop over the resv_map and make sure that coalescing is
- * working.
- */
-static void check_coalesce_bug(struct resv_map *resv)
-{
-	struct list_head *head = &resv->regions;
-	struct file_region *rg = NULL, *nrg = NULL;
-
-	list_for_each_entry(rg, head, link) {
-		nrg = list_next_entry(rg, link);
-
-		if (&nrg->link == head)
-			break;
-
-		if (nrg->reservation_counter && nrg->from == rg->to &&
-		    nrg->reservation_counter == rg->reservation_counter &&
-		    nrg->css == rg->css) {
-			dump_resv_map(resv);
-			VM_BUG_ON(true);
-		}
-	}
-}
-#else
-static void check_coalesce_bug(struct resv_map *resv)
-{
-}
-#endif
-
 static void coalesce_file_region(struct resv_map *resv, struct file_region *rg)
 {
 	struct file_region *nrg = NULL, *prg = NULL;
@@ -435,7 +393,6 @@ static long add_reservation_in_range(struct resv_map *resv, long f, long t,
 	}

 	VM_BUG_ON(add < 0);
-	check_coalesce_bug(resv);
 	return add;
 }

--
2.25.0.265.gbab2e86ba0-goog

  parent reply	other threads:[~2020-02-19 23:36 UTC|newest]

Thread overview: 66+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-02-11 21:31 [PATCH v12 1/9] hugetlb_cgroup: Add hugetlb_cgroup reservation counter Mina Almasry
2020-02-11 21:31 ` Mina Almasry
2020-02-11 21:31 ` [PATCH v12 2/9] hugetlb_cgroup: add interface for charge/uncharge hugetlb reservations Mina Almasry
2020-02-15  0:50   ` Mike Kravetz
2020-02-16  1:21     ` David Rientjes
2020-02-11 21:31 ` [PATCH v12 4/9] hugetlb: disable region_add file_region coalescing Mina Almasry
     [not found]   ` <20200211213128.73302-4-almasrymina-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2020-02-15  1:27     ` Mike Kravetz
2020-02-15  1:27       ` Mike Kravetz
2020-02-16  1:25     ` David Rientjes
2020-02-16  1:25       ` David Rientjes
     [not found] ` <20200211213128.73302-1-almasrymina-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2020-02-11 21:31   ` [PATCH v12 3/9] hugetlb_cgroup: add reservation accounting for private mappings Mina Almasry
2020-02-11 21:31     ` Mina Almasry
2020-02-11 21:31   ` [PATCH v12 5/9] hugetlb_cgroup: add accounting for shared mappings Mina Almasry
2020-02-11 21:31     ` Mina Almasry
2020-02-16  1:29     ` David Rientjes
     [not found]     ` <20200211213128.73302-5-almasrymina-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2020-02-18 18:07       ` Mike Kravetz
2020-02-18 18:07         ` Mike Kravetz
2020-02-11 21:31   ` [PATCH v12 7/9] hugetlb: support file_region coalescing again Mina Almasry
2020-02-11 21:31     ` Mina Almasry
2020-02-16  1:29     ` David Rientjes
2020-02-19  3:28     ` Mike Kravetz
2020-02-19  7:54       ` Mina Almasry
2020-02-19 23:36       ` Mina Almasry [this message]
2020-02-19 23:36         ` [PATCH] hugetlb: Remove check_coalesce_bug debug code Mina Almasry
2020-02-20  0:07         ` Mike Kravetz
2020-02-11 21:31   ` [PATCH v12 8/9] hugetlb_cgroup: Add hugetlb_cgroup reservation tests Mina Almasry
2020-02-11 21:31     ` Mina Almasry
2020-02-12  8:50     ` Sandipan Das
     [not found]       ` <37a49c35-567f-1663-33cd-3dac150020a0-tEXmvtCZX7AybS5Ee8rs3A@public.gmane.org>
2020-02-20  0:05         ` Mina Almasry
2020-02-20  0:05           ` Mina Almasry
     [not found]     ` <20200211213128.73302-8-almasrymina-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2020-02-21  0:52       ` Mike Kravetz
2020-02-21  0:52         ` Mike Kravetz
2020-02-11 23:19   ` [PATCH v12 1/9] hugetlb_cgroup: Add hugetlb_cgroup reservation counter Andrew Morton
2020-02-11 23:19     ` Andrew Morton
     [not found]     ` <20200211151906.637d1703e4756066583b89da-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2020-02-18 14:21       ` Qian Cai
2020-02-18 14:21         ` Qian Cai
     [not found]         ` <1582035660.7365.90.camel-J5quhbR+WMc@public.gmane.org>
2020-02-18 18:35           ` Mina Almasry
2020-02-18 18:35             ` Mina Almasry
2020-02-18 18:41             ` Qian Cai
     [not found]             ` <CAHS8izO5=vKs-v9v=Di3hQXBD41+_YpYarXn1yZu9YE6SR-i6Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2020-02-18 19:14               ` Mike Kravetz
2020-02-18 19:14                 ` Mike Kravetz
2020-02-18 19:25                 ` Mina Almasry
2020-02-18 21:36                   ` Mina Almasry
     [not found]                     ` <CAHS8izODfKaLqWAehhR_XuN=FRgmWBE7+eCJMD2HGig8s+zvwg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2020-02-18 21:41                       ` Mike Kravetz
2020-02-18 21:41                         ` Mike Kravetz
     [not found]                         ` <9d6690e9-0dd4-f779-89b2-e02ff9a517e4-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2020-02-18 22:27                           ` Mina Almasry
2020-02-18 22:27                             ` Mina Almasry
2020-02-19 19:05     ` Mina Almasry
     [not found]       ` <CAHS8izPUFQWq3PzhhRzp7u11173_-cmRkNuQWEswS51Xz6ZM0Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2020-02-19 21:06         ` Andrew Morton
2020-02-19 21:06           ` Andrew Morton
2020-02-20 19:22           ` Mina Almasry
2020-02-21  0:28             ` Andrew Morton
     [not found]               ` <20200220162813.aea8a14fe050473b73440323-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2020-02-21  0:41                 ` Mike Kravetz
2020-02-21  0:41                   ` Mike Kravetz
     [not found]                   ` <0cdd654b-a1f6-fea2-e448-209fbbe14b5c-QHcLZuEGTsvQT0dZR+AlfA@public.gmane.org>
2020-02-21  1:52                     ` Mina Almasry
2020-02-21  1:52                       ` Mina Almasry
     [not found]           ` <20200219130648.83e6810848774c6fd649c445-de/tnXTf+JLsfHDXvbKv3WD2FQJk+8+b@public.gmane.org>
2020-02-21 20:19             ` Mina Almasry
2020-02-21 20:19               ` Mina Almasry
2020-02-11 21:31 ` [PATCH v12 6/9] hugetlb_cgroup: support noreserve mappings Mina Almasry
     [not found]   ` <20200211213128.73302-6-almasrymina-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2020-02-18 20:57     ` Mike Kravetz
2020-02-18 20:57       ` Mike Kravetz
2020-02-11 21:31 ` [PATCH v12 9/9] hugetlb_cgroup: Add hugetlb_cgroup reservation docs Mina Almasry
     [not found]   ` <20200211213128.73302-9-almasrymina-hpIqsD4AKlfQT0dZR+AlfA@public.gmane.org>
2020-02-20  0:03     ` Mina Almasry
2020-02-20  0:03       ` Mina Almasry
2020-02-20  0:18     ` Mike Kravetz
2020-02-20  0:18       ` Mike Kravetz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200219233610.13808-1-almasrymina@google.com \
    --to=almasrymina@google.com \
    --cc=akpm@linux-foundation.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mike.kravetz@oracle.com \
    --cc=rientjes@google.com \
    --cc=shakeelb@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.