On 2020-02-13 11:21, Salman Qazi wrote: > AFAICT, This is not actually sufficient, because the issuer of the bio > is waiting for the entire bio, regardless of how it is split later. > But, also there isn't a good mapping between the size of the secure > discard and how long it will take. If given the geometry of a flash > device, it is not hard to construct a scenario where a relatively > small secure discard (few thousand sectors) will take a very long time > (multiple seconds). > > Having said that, I don't like neutering the hung task timer either. Hi Salman, How about modifying the block layer such that completions of bio fragments are considered as task activity? I think that bio splitting is rare enough for such a change not to affect performance of the hot path. How about setting max_discard_segments such that a discard always completes in less than half the hung task timeout? This may make discards a bit slower for one particular block driver but I think that's better than hung task complaints. Thanks, Bart.