On Mon, Dec 04, 2023 at 12:03:23PM -0800, Reinette Chatre wrote: > Hi Tony, > > On 12/4/2023 11:45 AM, Luck, Tony wrote: > >> Yes. I saw the thread. Even then I feel having two similar options can > >> cause confusion. I feel it is enough just to solve the original problem. > >> Giving more options to a corner cases is a overkill in my opinion. > > > > The "original" problem was systems without "local" bandwidth event. I > > wanted to give a way for users of mba_MBps to still have some way to > > use it (assuming that "total" bandwidth event was present). > > > > Reinette suggested that some people might want to use "total", even > > on systems that support "local". I firmly agree with that. It is easy to > > construct scenarios where most bandwidth is to a remote node. using > > "local" event will do nothing to throttle in these case. I'm not at all sure > > why "local" event was picked. There's nothing in the LKML threads to > > give clues. > > > > I proposed a mount option "total" as a modifier to be used in conjunction > > with "mba_MBps". Reinette said it was too generic. Her suggestion was > > to add "mba_MBps_total" to be used instead of "mba_MBps". > > No, it cannot be used instead of "mba_MBps". My intention was for it to be > in addition to existing "mba_MBps" since taking "mba_MBps" away would be > considered breaking user space ABI. I was unclear. The mba_MBps option must remain as legacy ABI. My "instead of" was intended to convey that a user wanting total bandwidth would use: # mount -t resctrl -o mba_MBps_total resctrl /sys/fs/resctrl rather than the new option being a modifier and requiring both the legacy option and the modifier like this: # mount -t resctrl -o mba_MBps,mba_MBps_total resctrl /sys/fs/resctrl which seems overly verbose. > > Even so ... > > > > > Is that where I should have gone, instead of "mba_MBps={local|total}"? > > While I did propose "mba_MBps_total" (in addition to "mba_MBps") I do > recognize your comment that a new key of mba_MBps_event does give more > flexibility if different events become available in future. Emphasis is > on "different" since I do not believe the parsing can support multiple > events and thus mba_MBps_event cannot be treated as a general bucket for all > mba_sc options, just different events guiding the feedback loop. > > "mba_MBps" must be kept and having it continue to use local bw as default, > but total bw on systems that do not support local bw seems appropriate, > (which is what this patch does). So we defintely have: "mba_MBps" - defaults to local, on systems without local may switch to total if that is available. Should this switch get a pr_info()? Or just happen silently (as I've done in patches so far). and need to come to agreement on which of these to implement: A) "mba_MBps_total" - forces use of total. Fails the mount if total is not available. B) "mba_MBps={local|total)" forces use of chosen event, fails if event is unavailable. C) Something else. D) Don't provide any way to force use of total event. > > Reinette -Tony