----- On Apr 9, 2020, at 6:33 PM, Alexei Starovoitov alexei.starovoitov@xxxxxxxxx wrote: > On Thu, Apr 09, 2020 at 03:35:37PM -0400, Mathieu Desnoyers wrote: >> if (pause < min_pause) { >> - trace_balance_dirty_pages(wb, >> + trace_balance_dirty_pages(&global_wb_domain, >> + wb, >> sdtc->thresh, >> sdtc->bg_thresh, >> sdtc->dirty, > > argh. 13 arguments to single function ?! > Currently the call site looks like: > trace_balance_dirty_pages(wb, > sdtc->thresh, > sdtc->bg_thresh, > sdtc->dirty, > sdtc->wb_thresh, > sdtc->wb_dirty, > dirty_ratelimit, > task_ratelimit, > pages_dirtied, > period, > min(pause, 0L), > start_time); > Just pass sdtc as a pointer instead. > Then another wb argument will be fine. Good point! In order to do that I would need to move the declaration of struct dirty_throttle_control from mm/page-writeback.c to include/linux/writeback.h so it can be used from the tracepoint. Seems fair ? Thanks, Mathieu -- Mathieu Desnoyers EfficiOS Inc. http://www.efficios.com