Hi Michal,

On Fri, Jul 04, 2025 at 10:59:15AM +0200, Michal Koutný wrote:
> On Fri, Jul 04, 2025 at 03:49:58PM +0900, Shashank Balaji 
> <shashank.mahadas...@sony.com> wrote:
> > > 1. We don't need to separately check user_usec because it'll always be
> > > less than user_usec^W usage_usec, and usage_usec is what's directly
> > > affected by throttling.
> 
> When kernel is not preemptible, I'd expect the system time may more
> easily excess the quota, so I considered the user_usage check less prone
> to false results. But...
> 
> > > 2. I changed the >= to > because, not that it'll ever happen, but we can
> > > let usage_usec = expected_usage_usec pass. Afterall, it's called
> > > "expected" for a reason.
> > 
> > Hmm, here is something interesting. The following patch adds printfs to the
> > existing code to see what user_usec, usage_usec, the expected_usage_usec 
> > used in
> > the code, and the theoretical expected_usage_usec are. On running the 
> > modified test
> > a couple of times, here is the output:
> 
> ...thanks for checking. I was misled by the previous test implementation
> (the expected_usage_usec had no relation to actual throttled usage in
> there). What you observe is thus likely explained by the default
> sched_cfs_bandwidth_slice (5 times the tested quota) and CONFIG_HZ.
> 
> So I'd say keep only the two-sided tolerant check. (I want to avoid the
> test to randomly fail when there's no gaping issue.)

Yep, patch v2 is doing just that. So, I assume I have your Acked-by?

Thanks

Shashank

Reply via email to