FS#77241 - [libelf] no debuginfod download progress bar with 0.188-2

Attached to Project: Arch Linux
Opened by lilydjwg (lilydjwg) - Monday, 23 January 2023, 15:25 GMT
Last edited by Toolybird (Toolybird) - Wednesday, 29 March 2023, 06:16 GMT
Task Type Bug Report
Category Packages: Core
Status Closed
Assigned To David Runge (dvzrv)
freswa (frederik)
Morten Linderud (Foxboron)
Architecture All
Severity Low
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 1
Private No

Details

Description:

I run coredumpctl gdb and enable debuginfod. gdb seems to just hang there and not respond to Ctrl-C, but strace reveals that it's downloading debug symbols silently. Downgrading to 0.188-1 the download progress bar is back.

Additional info:
* libelf 0.188-2, gdb 12.1-2
This task depends upon

Closed by  Toolybird (Toolybird)
Wednesday, 29 March 2023, 06:16 GMT
Reason for closing:  Fixed
Additional comments about closing:  Seems to be working now
Comment by Toolybird (Toolybird) - Monday, 23 January 2023, 19:20 GMT
Confirmed. Maybe ncurses/readline related? Have you tried a rebuild of gdb?

Edit: I just tried a gdb rebuild and it made no difference.
Comment by Chih-Hsuan Yen (yan12125) - Friday, 10 February 2023, 17:25 GMT
Looks like upstream patches for curl are problematic. Progress bars in gdb are back if I drop the curl patch and skip -Werror (see attached PKGBUILD). Probably this issue should be forwarded to upstream libelf.
   PKGBUILD (4.3 KiB)
Comment by loqs (loqs) - Friday, 10 February 2023, 20:21 GMT
@yan12125 can you identify which hunks in the patch are triggering the regression? In the attached diff I split the patch into its constituent hunks for easy testing.
If I were to guess curl_7.85_compat-1.patch would be the cause of the issue.
Comment by Chih-Hsuan Yen (yan12125) - Saturday, 11 February 2023, 13:22 GMT
Thanks! It turns out curl_7.85_compat-2.patch causes the issue. I also figured out a patch to bring back progress bars without using deprecated curl APIs (see the attached file). I will need to study how to submit a patch to upstream.
Comment by loqs (loqs) - Saturday, 11 February 2023, 14:13 GMT
If I understand the issue correctly cl >= 0 does not match cl having the value -1 indicating the size is unknown. So dl_size is 0 instead of -1 meaning X-Debuginfod-Size is not used as the fallback source for content size, resulting in no progress bar?
Comment by Chih-Hsuan Yen (yan12125) - Sunday, 12 February 2023, 02:17 GMT
Yes, that's how I understand it. Thanks for the summary!

Loading...