LVS
lvs-devel
Google
 
Web LinuxVirtualServer.org

Re: [RFC PATCH nf-next] netfilter: ipvs: Divide estimators into groups

To: Julian Anastasov <ja@xxxxxx>
Subject: Re: [RFC PATCH nf-next] netfilter: ipvs: Divide estimators into groups
Cc: netfilter-devel@xxxxxxxxxxxxxxx, Simon Horman <horms@xxxxxxxxxxxx>, lvs-devel@xxxxxxxxxxxxxxx
From: Jiri Wiesner <jwiesner@xxxxxxx>
Date: Tue, 16 Aug 2022 18:22:57 +0200
On Sat, Aug 13, 2022 at 03:11:48PM +0300, Julian Anastasov wrote:
> > The intention is to develop this RFC patch into a short series addressing
> > the design changes proposed in [1]. Also, after moving the rate estimation
> > out of softirq context, the whole estimator list could be processed
> > concurrently - more than one work item would be used.
> 
>       Other developers tried solutions with workqueues
> but so far we don't see any results. Give me some days, may be
> I can come up with solution that uses kthread(s) to allow later
> nice/cpumask cfg tuning and to avoid overload of the system
> workqueues.

The RFC patch already resolves the issue despite having the code still run in 
softirq context. Even if estimators were processed in groups, moving the rate 
estimation out of softirq context is a good idea. I am interested in 
implementing this. An alternative approach would be moving the rate estimation 
out of softirq context and reworking locking so that cond_resched() could be 
used to let other processes run as the scheduler sees fit. I would be willing 
to try to implement this alternative approach as well.
Jiri Wiesner
SUSE Labs

<Prev in Thread] Current Thread [Next in Thread>