[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH v2] x86/mem_sharing: Fix RANDCONFIG build


  • To: Xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
  • Date: Wed, 8 Jan 2020 17:24:28 +0000
  • Authentication-results: esa5.hc3370-68.iphmx.com; dkim=none (message not signed) header.i=none; spf=None smtp.pra=andrew.cooper3@xxxxxxxxxx; spf=Pass smtp.mailfrom=Andrew.Cooper3@xxxxxxxxxx; spf=None smtp.helo=postmaster@xxxxxxxxxxxxxxx
  • Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>, Tamas K Lengyel <tamas@xxxxxxxxxxxxx>
  • Delivery-date: Wed, 08 Jan 2020 17:24:34 +0000
  • Ironport-sdr: ysDd3iCRJ/zspTRASs9biTVVpV+E0ZxAMGIG7HZvr/Lk58GSXcjZJxZEnP7Q9945zK4gXwbeRi EJp+hNV5Wpq66eKft0040D3VyJJkgPGOKaCRZYXaj448MyQZLucsvkfkIgZWWUCNjrXeBAIpyV Jm4q5nuVrigRQQN5V9iiVMtP0dLciyHQ7l8UiXZImOYz0J3qAACKLSAyvB+EhuvPJMFLvWoLPC o7omIXwLXT2rXTYLHl9GwVYjlJ2A0f+O4klz/bJyVGinIZrAACVwGSzvS+qaQAW45YJkbWU0aK /KU=
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

Travis reports: https://travis-ci.org/andyhhp/xen/jobs/633751811

  mem_sharing.c:361:13: error: 'rmap_has_entries' defined but not used 
[-Werror=unused-function]
   static bool rmap_has_entries(const struct page_info *page)
               ^
  cc1: all warnings being treated as errors

This happens in a release build (disables MEM_SHARING_AUDIT) when
CONFIG_MEM_SHARING is enabled.

Expand both trivial helpers into their single callsite.

Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
---
CC: Tamas K Lengyel <tamas@xxxxxxxxxxxxx>

v2:
 * Expand, rather than mark as __maybe_unused
---
 xen/arch/x86/mm/mem_sharing.c | 16 ++--------------
 1 file changed, 2 insertions(+), 14 deletions(-)

diff --git a/xen/arch/x86/mm/mem_sharing.c b/xen/arch/x86/mm/mem_sharing.c
index ddf1f0f9f9..64dd3689df 100644
--- a/xen/arch/x86/mm/mem_sharing.c
+++ b/xen/arch/x86/mm/mem_sharing.c
@@ -351,18 +351,6 @@ static gfn_info_t *rmap_retrieve(uint16_t domain_id, 
unsigned long gfn,
     return NULL;
 }
 
-/* Returns true if the rmap has only one entry. O(1) complexity. */
-static bool rmap_has_one_entry(const struct page_info *page)
-{
-    return rmap_count(page) == 1;
-}
-
-/* Returns true if the rmap has any entries. O(1) complexity. */
-static bool rmap_has_entries(const struct page_info *page)
-{
-    return rmap_count(page) != 0;
-}
-
 /*
  * The iterator hides the details of how the rmap is implemented. This
  * involves splitting the list_for_each_safe macro into two steps.
@@ -531,7 +519,7 @@ static int audit(void)
         }
 
         /* Check we have a list */
-        if ( (!pg->sharing) || !rmap_has_entries(pg) )
+        if ( (!pg->sharing) || rmap_count(pg) == 0 )
         {
             MEM_SHARING_DEBUG("mfn %lx shared, but empty gfn list!\n",
                               mfn_x(mfn));
@@ -1220,7 +1208,7 @@ int __mem_sharing_unshare_page(struct domain *d,
      * Do the accounting first. If anything fails below, we have bigger
      * bigger fish to fry. First, remove the gfn from the list.
      */
-    last_gfn = rmap_has_one_entry(page);
+    last_gfn = rmap_count(page) == 1;
     if ( last_gfn )
     {
         /*
-- 
2.11.0


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxxx
https://lists.xenproject.org/mailman/listinfo/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.