Message ID | 20210709084319.33776-1-kjain@linux.ibm.com |
---|---|
State | New |
Headers | show |
Series | [v2] fpga: dfl: fme: Fix cpu hotplug issue in performance reporting | expand |
> Subject: [PATCH v2] fpga: dfl: fme: Fix cpu hotplug issue in performance > reporting > > The performance reporting driver added cpu hotplug > feature but it didn't add pmu migration call in cpu > offline function. > This can create an issue incase the current designated > cpu being used to collect fme pmu data got offline, > as based on current code we are not migrating fme pmu to > new target cpu. Because of that perf will still try to > fetch data from that offline cpu and hence we will not > get counter data. > > Patch fixed this issue by adding pmu_migrate_context call > in fme_perf_offline_cpu function. > > Fixes: 724142f8c42a ("fpga: dfl: fme: add performance reporting support") > Tested-by: Xu Yilun <yilun.xu@intel.com> > Signed-off-by: Kajol Jain <kjain@linux.ibm.com> Thanks for this fixing! And thanks Yilun for the verification too. : ) > Cc: stable@vger.kernel.org > --- > drivers/fpga/dfl-fme-perf.c | 4 ++++ > 1 file changed, 4 insertions(+) > > --- > Changelog: > v1 -> v2: > - Add stable@vger.kernel.org in cc list > > RFC -> PATCH v1 > - Remove RFC tag > - Did nits changes on subject and commit message as suggested by Xu Yilun > - Added Tested-by tag > - Link to rfc patch: https://lkml.org/lkml/2021/6/28/112 > --- > diff --git a/drivers/fpga/dfl-fme-perf.c b/drivers/fpga/dfl-fme-perf.c > index 4299145ef347..b9a54583e505 100644 > --- a/drivers/fpga/dfl-fme-perf.c > +++ b/drivers/fpga/dfl-fme-perf.c > @@ -953,6 +953,10 @@ static int fme_perf_offline_cpu(unsigned int cpu, struct > hlist_node *node) > return 0; > > priv->cpu = target; > + > + /* Migrate fme_perf pmu events to the new target cpu */ Only one minor item, this line is not needed. : ) After remove it, Acked-by: Wu Hao <hao.wu@intel.com> Thanks Hao > + perf_pmu_migrate_context(&priv->pmu, cpu, target); > + > return 0; > } > > -- > 2.31.1
On 7/12/21 7:57 AM, Wu, Hao wrote: >> Subject: [PATCH v2] fpga: dfl: fme: Fix cpu hotplug issue in performance >> reporting >> >> The performance reporting driver added cpu hotplug >> feature but it didn't add pmu migration call in cpu >> offline function. >> This can create an issue incase the current designated >> cpu being used to collect fme pmu data got offline, >> as based on current code we are not migrating fme pmu to >> new target cpu. Because of that perf will still try to >> fetch data from that offline cpu and hence we will not >> get counter data. >> >> Patch fixed this issue by adding pmu_migrate_context call >> in fme_perf_offline_cpu function. >> >> Fixes: 724142f8c42a ("fpga: dfl: fme: add performance reporting support") >> Tested-by: Xu Yilun <yilun.xu@intel.com> >> Signed-off-by: Kajol Jain <kjain@linux.ibm.com> > > Thanks for this fixing! And thanks Yilun for the verification too. : ) > >> Cc: stable@vger.kernel.org >> --- >> drivers/fpga/dfl-fme-perf.c | 4 ++++ >> 1 file changed, 4 insertions(+) >> >> --- >> Changelog: >> v1 -> v2: >> - Add stable@vger.kernel.org in cc list >> >> RFC -> PATCH v1 >> - Remove RFC tag >> - Did nits changes on subject and commit message as suggested by Xu Yilun >> - Added Tested-by tag >> - Link to rfc patch: https://lkml.org/lkml/2021/6/28/112 >> --- >> diff --git a/drivers/fpga/dfl-fme-perf.c b/drivers/fpga/dfl-fme-perf.c >> index 4299145ef347..b9a54583e505 100644 >> --- a/drivers/fpga/dfl-fme-perf.c >> +++ b/drivers/fpga/dfl-fme-perf.c >> @@ -953,6 +953,10 @@ static int fme_perf_offline_cpu(unsigned int cpu, struct >> hlist_node *node) >> return 0; >> >> priv->cpu = target; >> + >> + /* Migrate fme_perf pmu events to the new target cpu */ > > Only one minor item, this line is not needed. : ) > > After remove it, > Acked-by: Wu Hao <hao.wu@intel.com> Hi Wu Hao, Sure I will remove this comment and send new patch. Thanks, Kajol Jain > > Thanks > Hao > >> + perf_pmu_migrate_context(&priv->pmu, cpu, target); >> + >> return 0; >> } >> >> -- >> 2.31.1 >
diff --git a/drivers/fpga/dfl-fme-perf.c b/drivers/fpga/dfl-fme-perf.c index 4299145ef347..b9a54583e505 100644 --- a/drivers/fpga/dfl-fme-perf.c +++ b/drivers/fpga/dfl-fme-perf.c @@ -953,6 +953,10 @@ static int fme_perf_offline_cpu(unsigned int cpu, struct hlist_node *node) return 0; priv->cpu = target; + + /* Migrate fme_perf pmu events to the new target cpu */ + perf_pmu_migrate_context(&priv->pmu, cpu, target); + return 0; }