Andrew Wood
|
ca7997fe7d
|
Use the new watchfd_count to size the array, not the one we just zeroed, otherwise multiple --watchfd arguments result in a memory error (#170)
|
2025-11-12 14:31:22 +00:00 |
|
Andrew Wood
|
282823f660
|
Correct the stub functions used when PV_REMOTE_CONTROL is not set.
|
2025-10-30 22:54:02 +00:00 |
|
Andrew Wood
|
2904eacefe
|
Use the per-fd stoppage time rather than the global one (#169).
|
2025-10-29 21:31:23 +00:00 |
|
Andrew Wood
|
5d538da63a
|
Add the stoppage time to the each of currently watched fds' counters (#169).
|
2025-10-29 21:30:43 +00:00 |
|
Andrew Wood
|
fdfceb79c6
|
Add a TODO marker for next planned steps.
|
2025-10-28 23:34:42 +00:00 |
|
Andrew Wood
|
5aff62414a
|
Add a total stoppage time counter to the per-fd watchfd structure (#169).
|
2025-10-28 23:34:26 +00:00 |
|
Andrew Wood
|
c7a6f85dd2
|
Remove unnecessary splint annotation.
|
2025-10-28 21:39:54 +00:00 |
|
Andrew Wood
|
22e9e00f63
|
Move the array of watchfd item information into the main state, instead of being local to the watchfd loop, so that in future we can add stoppage time to individual fd info and it will be accessible to the signal handler (#169).
|
2025-10-27 20:41:32 +00:00 |
|
Andrew Wood
|
60ca91209a
|
Rename structure members for clarity - "tstp_time" becomes "when_tstp_arrived", and "toffset" becomes "total_stoppage_time".
|
2025-10-27 19:20:22 +00:00 |
|
Andrew Wood
|
82283ee434
|
Remove the TODO now it is done.
|
2025-10-26 12:56:28 +00:00 |
|
Andrew Wood
|
42cf7ed628
|
Move the remote control code into the pv library.
|
2025-10-26 12:55:15 +00:00 |
|
Andrew Wood
|
b1cac9b78d
|
Record all old-style formatting options, and the full string for the extra display spec, in the control structure; make pv_remote_set only use internal pv state structures so it can be part of the internal pv library where it belongs, and not need to know about main()'s options array.
|
2025-10-26 12:53:51 +00:00 |
|
Andrew Wood
|
528889888c
|
Always calculate the elapsed transfer time every time around the loop, even if not displaying anything; and take -W into account so the elapsed time doesn't start ticking up until the first byte or line transferred, even if not displaying anything - so that -Q will report the right thing when querying a "pv -n" (#101).
|
2025-10-26 12:06:32 +00:00 |
|
Andrew Wood
|
e6e6ab3b6d
|
Consolidate repeated code into new pv__elapsed_transfer_time function.
|
2025-10-26 11:49:35 +00:00 |
|
Andrew Wood
|
d2d3ec1cde
|
Add a TODO marker for the next step.
|
2025-10-26 01:35:53 +01:00 |
|
Andrew Wood
|
f518257bc9
|
Consolidate repeated code into new pv__show_stats function.
|
2025-10-25 22:49:33 +01:00 |
|
Andrew Wood
|
96a411671c
|
Consolidate repeated code into new pv__resize_display_on_signal function.
|
2025-10-25 00:43:59 +01:00 |
|
Andrew Wood
|
f07a7b1c87
|
Correct the noise interrupting the display of the original pv if the querying pv is terminated. Correct the transfer of size information to main() so that ETA can still be shown. (#101)
|
2025-10-24 09:24:31 +01:00 |
|
Andrew Wood
|
7598b4d46c
|
Add pv_query_loop() to run a main loop watching another pv (#101).
|
2025-10-24 09:00:10 +01:00 |
|
Andrew Wood
|
15ed99eee7
|
Implement --query message send/receive (#101).
|
2025-10-23 23:27:34 +01:00 |
|
Andrew Wood
|
f125f41428
|
Correct the comment naming pv__target_bufsize, which should be control.target_buffer_size.
|
2025-10-23 21:26:34 +01:00 |
|
Andrew Wood
|
2e9fc77ccd
|
Add -Q to the remote check comments (#101).
|
2025-10-22 17:55:43 +01:00 |
|
Andrew Wood
|
590a3535d8
|
Don't keep PV_REMOTE_QUERY separate from PV_REMOTE_CONTROL after all since they will need to work together; extend pv_remote_check() so it will check for both -R and -Q signals (#101).
|
2025-10-21 23:39:17 +01:00 |
|
Andrew Wood
|
b34bba8b4a
|
Remove unused pv_remote_init, pv_remote_fini functions; add initial stubs for -Q (#101).
|
2025-10-21 23:17:23 +01:00 |
|
Andrew Wood
|
4f82525c39
|
Correct the comment at the end of the conditional.
|
2025-10-21 23:03:30 +01:00 |
|
Andrew Wood
|
8361ed1fe2
|
Rename signal.sender to signal.sender_usr2 so it is specific to SIGUSR2 (#101).
|
2025-10-21 22:15:23 +01:00 |
|
Andrew Wood
|
9bd96614b3
|
Add an action type for query mode, and more TODOs to plan how it will work (#101).
|
2025-10-21 22:11:10 +01:00 |
|
Andrew Wood
|
d27672b7a3
|
Declare pv_open_controlfile so it can be used for the query action (#101).
|
2025-10-21 22:10:38 +01:00 |
|
Andrew Wood
|
36d82e313a
|
Rename pv__control_file to pv_open_controlfile, and move it in with the other file functions so it can be used by both the remote-control and the remote-query code (#101).
|
2025-10-21 22:09:44 +01:00 |
|
Andrew Wood
|
8b3b61e2d3
|
Separate the data transfer modifier options from the alternative operating mode options.
|
2025-10-21 21:13:27 +01:00 |
|
Andrew Wood
|
60067ed4ea
|
Define whether --query should be available, based on the same criteria as --remote for now (#101).
|
2025-10-21 20:59:32 +01:00 |
|
Andrew Wood
|
de71cc2389
|
Prevent the use of any non-option arguments with -R or -Q (#101).
|
2025-10-21 20:48:44 +01:00 |
|
Andrew Wood
|
3f1782a573
|
Draft manual entry, help text, and option parsing for "--query" option (#101).
|
2025-10-20 21:17:59 +01:00 |
|
Andrew Wood
|
1a70cc228a
|
Correction to the description and removal of the TODO marker; and use the transfer interval as the time to wait after closure (#81).
|
2025-10-17 22:50:33 +01:00 |
|
Andrew Wood
|
17ca4fc9c9
|
Keep displaying --watchfd fds for a short time after they are closed, and don't clear the display at the end but just move the cursor past it (#81).
|
2025-10-17 20:40:14 +01:00 |
|
Andrew Wood
|
0aac6d6aac
|
Add comments and "pid_last_seen", "fd_last_seen" structure members for proposed new logic that will hold fd info on-screen a short time after closure, to retain the progress display when a watched process exits (#81).
|
2025-10-17 19:09:46 +01:00 |
|
Andrew Wood
|
61021eab6b
|
Remove the TODO markers for #81 as this work will be done in a separate branch.
|
2025-10-17 17:52:33 +01:00 |
|
Andrew Wood
|
972f8b7df8
|
Re-order no_splice and sparse_output relative to other flags to more closely match the order they appear in the manual.
|
2025-10-15 23:23:16 +01:00 |
|
Andrew Wood
|
a40bdfb55f
|
Merge branch 'issue45_sparse' (#45).
|
2025-10-15 23:17:05 +01:00 |
|
Andrew Wood
|
3c9ab822fe
|
Call lseek() at the start if output is appending, so that future lseek()s are relative to the right position, fixing the issue with incorrect truncation size (#45).
|
2025-10-15 23:08:33 +01:00 |
|
Andrew Wood
|
fb5ce33518
|
Add debugging messages about truncation and seeking (#45).
|
2025-10-15 22:43:56 +01:00 |
|
Andrew Wood
|
5c15337662
|
Only call ftruncate() once, when the output file descriptor is closed at the end, instead of after every lseek() - this corrects the file growth on XFS but has the side effect that writing to stdout in >> (append) mode truncates the file to the wrong size (#45).
|
2025-10-15 22:32:21 +01:00 |
|
Andrew Wood
|
71f929e29c
|
Add a TODO indicating the problems so far and what to try next (#45).
|
2025-10-15 17:49:38 +01:00 |
|
Andrew Wood
|
c21ad6fdf1
|
For sparse output, instead of fstat(), ftruncate(), then lseek(), do lseek() then ftruncate(), like dd does (#45).
|
2025-10-14 23:38:15 +01:00 |
|
Andrew Wood
|
72686655cf
|
Move the pv__transfer_write_completed label, jumped to on a sparse write, outside of the compound statement; and so, move all of the variables within that compound statement to the start of the function. The GCC on RHEL derivatives like AlmaLinux 9, Rocky 8, CentOS 7/6/5 throws an error if the label is at the end of that block rather than just outside it (#45).
|
2025-10-14 22:03:41 +01:00 |
|
Andrew Wood
|
54913fddbe
|
First working draft of --sparse transfers, tests still needed (#45).
|
2025-10-13 22:13:54 +01:00 |
|
Andrew Wood
|
023cf22a59
|
Add --sparse / -O to the manual, to --help, and to option processing (#45).
|
2025-10-13 21:26:24 +01:00 |
|
Andrew Wood
|
164d7f7738
|
Add the extra --watchfd syntax to the help for that option.
|
2025-10-13 17:58:37 +01:00 |
|
Andrew Wood
|
6b8acd9e01
|
Add sparse_output option and control flags, and an output_not_seekable transfer flag, to structures for "sparse output" mode in future (#45).
|
2025-10-12 18:12:43 +01:00 |
|
Andrew Wood
|
72d9efc993
|
More specific TODOs for one way of implementing #81.
|
2025-10-07 22:17:10 +01:00 |
|