Hi Peter,
On 6/1/2023 7:45 AM, Peter Newman wrote:
Hi Reinette,
On Thu, May 11, 2023 at 11:37 PM Reinette Chatre reinette.chatre@intel.com wrote:
On 4/21/2023 7:17 AM, Peter Newman wrote:
/* Count bandwidth after the first successful counter read. */if (counter->initialized) {/* Assume that mbm_update() will prevent double-overflows. */if (val != counter->prev_bytes)atomic64_add(val - counter->prev_bytes,&m->soft_rmid_bytes);} else {counter->initialized = true;}counter->prev_bytes = val;I notice a lot of similarities between the above and the software controller, see mbm_bw_count().
I see the "a=now(); a-b; b=a;" and the not handling overflow parts being similar, but the use of the initialized flag seems quite different from delta_comp.
Also mbm_state is on the arch-independent side and the new code is going to the arch-dependent side, so it wouldn't be convenient to try to use the mbm_bw structures for this.
From this, I don't think trying to reuse this is worth it unless you have other suggestions.
At this time I am staring at mbm_state->prev_bw_bytes and mbm_soft_counter->prev_bytes and concerned about how much confusion this would generate. Considering the pending changes to data structures I hope this would be clear then.
Reinette