examples/service_cores: fix lcore count check
Checks
Commit Message
The example has various profiles to run services on specified
number of lcores. Due to incorrect boundary condition, service
can be dispatched to a core that does not exist. This puts main
core into endless wait.
Max available number of service cores is all detected lcores
excluding main core.
Fixes: 7f6ee6aee717 ("examples/service_cores: check cores before run")
Cc: stable@dpdk.org
Cc: vipin.varghese@intel.com
Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
---
examples/service_cores/main.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
> -----Original Message-----
> From: Ruifeng Wang <ruifeng.wang@arm.com>
> Sent: Monday, August 30, 2021 9:04 AM
> To: Van Haaren, Harry <harry.van.haaren@intel.com>; Varghese, Vipin
> <vipin.varghese@intel.com>
> Cc: dev@dpdk.org; thomas@monjalon.net; david.marchand@redhat.com;
> nd@arm.com; honnappa.nagarahalli@arm.com; Ruifeng Wang
> <ruifeng.wang@arm.com>; stable@dpdk.org
> Subject: [PATCH] examples/service_cores: fix lcore count check
>
> The example has various profiles to run services on specified
> number of lcores. Due to incorrect boundary condition, service
> can be dispatched to a core that does not exist. This puts main
> core into endless wait.
>
> Max available number of service cores is all detected lcores
> excluding main core.
>
> Fixes: 7f6ee6aee717 ("examples/service_cores: check cores before run")
> Cc: stable@dpdk.org
> Cc: vipin.varghese@intel.com
>
> Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
Change makes sense to me, this was introduced in Oct 2020
so a backport to 20.11 LTS makes sense I think.
Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
On Tue, Aug 31, 2021 at 6:12 PM Van Haaren, Harry
<harry.van.haaren@intel.com> wrote:
> > The example has various profiles to run services on specified
> > number of lcores. Due to incorrect boundary condition, service
> > can be dispatched to a core that does not exist. This puts main
> > core into endless wait.
> >
> > Max available number of service cores is all detected lcores
> > excluding main core.
> >
> > Fixes: 7f6ee6aee717 ("examples/service_cores: check cores before run")
> > Cc: stable@dpdk.org
> >
> > Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
> Acked-by: Harry van Haaren <harry.van.haaren@intel.com>
Applied, thanks.
31/08/2021 18:09, Van Haaren, Harry:
> From: Ruifeng Wang <ruifeng.wang@arm.com>
> > Fixes: 7f6ee6aee717 ("examples/service_cores: check cores before run")
> > Cc: stable@dpdk.org
> > Cc: vipin.varghese@intel.com
> >
> > Signed-off-by: Ruifeng Wang <ruifeng.wang@arm.com>
>
> Change makes sense to me, this was introduced in Oct 2020
> so a backport to 20.11 LTS makes sense I think.
Backport is not only for official announced branches.
The backport mark may be used to maintain some private branches as well.
@@ -118,7 +118,7 @@ apply_profile(int profile_id)
struct profile *p = &profiles[profile_id];
const uint8_t core_off = 1;
- if (p->num_cores > rte_lcore_count() + 1) {
+ if (p->num_cores > rte_lcore_count() - 1) {
printf("insufficent cores to run (%s)",
p->name);
return;