Re: Not logging zero entry intervals when using --log_avg_msec seems problematic

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Mar 3, 2022 at 9:00 AM Vincent Fu <vincent.fu@xxxxxxxxxxx> wrote:
> helper_thread.c:helper_thread_main() handles logging, steadystate, signals, status_interval, and disk utilization measurements. If multiple of these features are active then there may be small deviations in the logging time intervals.
>
> For missing final log entries, what happens is that the helper thread receives an exit notification (A_EXIT) and then stops checking its other responsibilities. It would be reasonable to make one final call to the logging code before exiting the helper thread but there might need to be some guards to make sure the logging code does not try to access threads that have already been torn down.

Thanks. I'm wondering though if it might make more sense for
bandwidth/IOPS logging to happen the same way latency logging does.
(Latency logging is always "driven" via calls in account_io_completion
in io_u.c .Bandwidth and IOPS logging are *not* driven this way for
interval logging, but only for full per I/O  ("per unit") logging.)

Latency logging does *not* have the inconsistent interval size and
missing final log entries issues. I get that the bandwidth/IOPS
logging is leveraging the same code as the live status updates, but as
far as I can tell, that is also why it has the problems that latency
logging does not.

For now I've just fallen back to not using the log intervals and using
full per unit logs, and then post-processing them. I'd still like to
use and improve the log interval features in the future, but I've
spent a good bit of time diving into them; I'm not confident I could
get them working the way I'd like/expect fast enough for my more
immediate needs.

Thanks,
Nick




[Index of Archives]     [Linux Kernel]     [Linux SCSI]     [Linux IDE]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux SCSI]

  Powered by Linux