From: kernel test robot > Sent: 11 December 2024 19:35 > > tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master > head: 91e71d606356e50f238d7a87aacdee4abc427f07 > commit: 212fe932ee57ec4a0f41bdc42b58c64fe3062147 [1948/2656] minmax.h: simplify the variants of > clamp() > config: s390-defconfig (https://download.01.org/0day-ci/archive/20241212/202412120322.3GfVe3vF- > lkp@xxxxxxxxx/config) > compiler: clang version 15.0.7 (https://github.com/llvm/llvm-project > 8dfdcc7b7bf66834a761bd8de445840ef68e4d1a) > reproduce (this is a W=1 build): (https://download.01.org/0day- > ci/archive/20241212/202412120322.3GfVe3vF-lkp@xxxxxxxxx/reproduce) > > If you fix the issue in a separate patch/commit (i.e. not just a new version of > the same patch/commit), kindly add following tags > | Reported-by: kernel test robot <lkp@xxxxxxxxx> > | Closes: https://lore.kernel.org/oe-kbuild-all/202412120322.3GfVe3vF-lkp@xxxxxxxxx/ > ... > b0853ab4a238c54 Tejun Heo 2020-09-01 1084 static void __propagate_weights(struct ioc_gq *iocg, u32 > active, u32 inuse, > b0853ab4a238c54 Tejun Heo 2020-09-01 1085 bool save, struct ioc_now *now) > 7caa47151ab2e64 Tejun Heo 2019-08-28 1086 { > 7caa47151ab2e64 Tejun Heo 2019-08-28 1087 struct ioc *ioc = iocg->ioc; > 7caa47151ab2e64 Tejun Heo 2019-08-28 1088 int lvl; > 7caa47151ab2e64 Tejun Heo 2019-08-28 1089 > 7caa47151ab2e64 Tejun Heo 2019-08-28 1090 lockdep_assert_held(&ioc->lock); > 7caa47151ab2e64 Tejun Heo 2019-08-28 1091 > e9f4eee9a0023ba Tejun Heo 2021-05-11 1092 /* > e9f4eee9a0023ba Tejun Heo 2021-05-11 1093 * For an active leaf node, its inuse shouldn't be > zero or exceed > e9f4eee9a0023ba Tejun Heo 2021-05-11 1094 * @active. An active internal node's inuse is solely > determined by the > e9f4eee9a0023ba Tejun Heo 2021-05-11 1095 * inuse to active ratio of its children regardless of > @inuse. > e9f4eee9a0023ba Tejun Heo 2021-05-11 1096 */ > e9f4eee9a0023ba Tejun Heo 2021-05-11 1097 if (list_empty(&iocg->active_list) && iocg- > >child_active_sum) { > e9f4eee9a0023ba Tejun Heo 2021-05-11 1098 inuse = DIV64_U64_ROUND_UP(active * iocg- > >child_inuse_sum, > e9f4eee9a0023ba Tejun Heo 2021-05-11 1099 iocg->child_active_sum); > e9f4eee9a0023ba Tejun Heo 2021-05-11 1100 } else { > db84a72af6be422 Tejun Heo 2020-09-01 @1101 inuse = clamp_t(u32, inuse, 1, active); ... Duplicate - there is an inlined call that passes 'active = 0'. IIRC the clamp() is there to avoid a divide by zero later. The code is buggy and I think there is a fix pending. David - Registered Address Lakeside, Bramley Road, Mount Farm, Milton Keynes, MK1 1PT, UK Registration No: 1397386 (Wales)