On Fri, 2022-02-25 at 12:08 +0530, kajoljain wrote: > > > On 2/25/22 11:25, Nageswara Sastry wrote: > > > > > > On 17/02/22 10:03 pm, Kajol Jain wrote: > > > .... > > > > > > Changelog > > > > Tested these patches with the automated tests at > > avocado-misc-tests/perf/perf_nmem.py > > URL: > > https://github.com/avocado-framework-tests/avocado-misc-tests/blob/master/perf/perf_nmem.py > > > > > > 1. On the system where target id and online id were different then > > not > > seeing value in 'cpumask' and those tests failed. > > > > Example: > > Log from dmesg > > ... > > papr_scm ibm,persistent-memory:ibm,pmemory@44100003: Region > > registered > > with target node 1 and online node 0 > > ... > > Hi Nageswara Sastry, > Thanks for testing the patch set. Yes you right, incase target > node id and online node id is different, it can happen when target > node is not online and hence can cause this issue, thanks for > pointing > it. > > Function dev_to_node will return node id for a given nvdimm device > which > can be offline in some scenarios. We should use numa node id return > by > numa_map_to_online_node function in that scenario. This function > incase > given node is offline, it will lookup for next closest online node > and > return that nodeid. > > Can you try with below change and see, if you are still getting this > issue. Please let me know. > > diff --git a/arch/powerpc/platforms/pseries/papr_scm.c > b/arch/powerpc/platforms/pseries/papr_scm.c > index bdf2620db461..4dd513d7c029 100644 > --- a/arch/powerpc/platforms/pseries/papr_scm.c > +++ b/arch/powerpc/platforms/pseries/papr_scm.c > @@ -536,7 +536,7 @@ static void papr_scm_pmu_register(struct > papr_scm_priv *p) > PERF_PMU_CAP_NO_EXCLUDE; > > /*updating the cpumask variable */ > - nodeid = dev_to_node(&p->pdev->dev); > + nodeid = numa_map_to_online_node(dev_to_node(&p->pdev->dev)); > nd_pmu->arch_cpumask = *cpumask_of_node(nodeid); > > >
Can you use p->region->numa_node? -aneesh