Re: [PATCH 0/2] progress: replace setitimer() with alarm()
- From
Junio C Hamano <gitster@pobox.com>
- Date
- Aug 24, 2025, 16:11 UTC
- Message-ID
- <xmqqsehgu2bh.fsf@gitster.g>
- In-Reply-To
- <08f405a6-fd2e-40d7-850a-574356b4009e@kdbg.org>
Johannes Sixt <j6t@kdbg.org> writes:
Show 9 quoted lines
>> Operating system folks may have worked hard to minimize the cost of >> system calls to gettimeofday() in order to help applications that do >> so, but I somehow feel even dirtier to hear proposal to do so to >> replace a signal that we set and forget, to be reminded once every >> second. > > I think that ship has sailed already. Look at display_throughput(). One > of the first things it does is to look at the wallclock a.k.a. > getnanotime().
It can be fixed if we wanted to, though, no? Instead of doing all the computation for the latest lap, and then decide not to show by looking at the progress_update flag (set by the interrupt), we can accumulate the total in the progress->throughput struct until we see the progress_update flag, at which time we can look at the wallclock time, compute the time difference, perform clever division, etc.
Show 6 quoted lines
> That said, I am not very happy about the new calls introduced in > display_progress(), either. I'll see whether I can produce some > performance measurements. > > I observe a behavior change with delayed progress indicators that I have > to understand and fix it before I can submit the cleaned up patches.
Thanks.