On Thu, 22 Aug 2024 08:41:36 -0700, Konstantin Ovsepian wrote: > Recently running UBSAN caught few out of bound shifts in the > ioc_forgive_debts() function: > > UBSAN: shift-out-of-bounds in block/blk-iocost.c:2142:38 > shift exponent 80 is too large for 64-bit type 'u64' (aka 'unsigned long > long') > ... > UBSAN: shift-out-of-bounds in block/blk-iocost.c:2144:30 > shift exponent 80 is too large for 64-bit type 'u64' (aka 'unsigned long > long') > ... > Call Trace: > <IRQ> > dump_stack_lvl+0xca/0x130 > __ubsan_handle_shift_out_of_bounds+0x22c/0x280 > ? __lock_acquire+0x6441/0x7c10 > ioc_timer_fn+0x6cec/0x7750 > ? blk_iocost_init+0x720/0x720 > ? call_timer_fn+0x5d/0x470 > call_timer_fn+0xfa/0x470 > ? blk_iocost_init+0x720/0x720 > __run_timer_base+0x519/0x700 > ... > > [...] Applied, thanks! [1/1] blk_iocost: fix more out of bound shifts commit: 9bce8005ec0dcb23a58300e8522fe4a31da606fa Best regards, -- Jens Axboe