This is an automated email from the ASF dual-hosted git repository.

bcall pushed a commit to branch 8.0.x
in repository https://gitbox.apache.org/repos/asf/trafficserver.git

commit d85e29aea224b52b2580c64439cd876ad7c01469
Author: Bryan Call <bc...@apache.org>
AuthorDate: Fri Nov 8 11:37:23 2019 -0800

    Fixed build issues with hwloc 2.x API changes
    
    (cherry picked from commit e655af7faeaaadd182ce17fd5bd617cafc95aff7)
---
 iocore/aio/AIO.cc                        | 5 +++++
 iocore/eventsystem/UnixEventProcessor.cc | 9 +++++++++
 2 files changed, 14 insertions(+)

diff --git a/iocore/aio/AIO.cc b/iocore/aio/AIO.cc
index 0e7f15a..0a884eb 100644
--- a/iocore/aio/AIO.cc
+++ b/iocore/aio/AIO.cc
@@ -190,9 +190,14 @@ struct AIOThreadInfo : public Continuation {
     (void)event;
     (void)e;
 #if TS_USE_HWLOC
+#if HWLOC_API_VERSION >= 0x20000
+    hwloc_set_membind(ink_get_topology(), 
hwloc_topology_get_topology_nodeset(ink_get_topology()), 
HWLOC_MEMBIND_INTERLEAVE,
+                      HWLOC_MEMBIND_THREAD | HWLOC_MEMBIND_BYNODESET);
+#else
     hwloc_set_membind_nodeset(ink_get_topology(), 
hwloc_topology_get_topology_nodeset(ink_get_topology()), 
HWLOC_MEMBIND_INTERLEAVE,
                               HWLOC_MEMBIND_THREAD);
 #endif
+#endif
     aio_thread_main(this);
     delete this;
     return EVENT_DONE;
diff --git a/iocore/eventsystem/UnixEventProcessor.cc 
b/iocore/eventsystem/UnixEventProcessor.cc
index 894f2e5..0e7b69f 100644
--- a/iocore/eventsystem/UnixEventProcessor.cc
+++ b/iocore/eventsystem/UnixEventProcessor.cc
@@ -230,7 +230,11 @@ ThreadAffinityInitializer::alloc_numa_stack(EThread *t, 
size_t stacksize)
 
   if (mem_policy != HWLOC_MEMBIND_DEFAULT) {
     // Let's temporarily set the memory binding to our destination NUMA node
+#if HWLOC_API_VERSION >= 0x20000
+    hwloc_set_membind(ink_get_topology(), nodeset, mem_policy, 
HWLOC_MEMBIND_THREAD | HWLOC_MEMBIND_BYNODESET);
+#else
     hwloc_set_membind_nodeset(ink_get_topology(), nodeset, mem_policy, 
HWLOC_MEMBIND_THREAD);
+#endif
   }
 
   // Alloc our stack
@@ -238,8 +242,13 @@ ThreadAffinityInitializer::alloc_numa_stack(EThread *t, 
size_t stacksize)
 
   if (mem_policy != HWLOC_MEMBIND_DEFAULT) {
     // Now let's set it back to default for this thread.
+#if HWLOC_API_VERSION >= 0x20000
+    hwloc_set_membind(ink_get_topology(), 
hwloc_topology_get_topology_nodeset(ink_get_topology()), HWLOC_MEMBIND_DEFAULT,
+                      HWLOC_MEMBIND_THREAD | HWLOC_MEMBIND_BYNODESET);
+#else
     hwloc_set_membind_nodeset(ink_get_topology(), 
hwloc_topology_get_topology_nodeset(ink_get_topology()), HWLOC_MEMBIND_DEFAULT,
                               HWLOC_MEMBIND_THREAD);
+#endif
   }
 
   hwloc_bitmap_free(nodeset);

Reply via email to