From dbb6186d91d06cb1fd41617d3a364c8d9b0be97d Mon Sep 17 00:00:00 2001 From: Thomas Schwinge Date: Tue, 26 Oct 2010 12:30:08 +0200 Subject: open_issues/io_system_binutils_ld_64ksec: New. --- open_issues/io_system_binutils_ld_64ksec.mdwn | 33 +++++++++++++++++++++ .../io_system_binutils_ld_64ksec/test.tar.xz | Bin 0 -> 378092 bytes 2 files changed, 33 insertions(+) create mode 100644 open_issues/io_system_binutils_ld_64ksec.mdwn create mode 100644 open_issues/io_system_binutils_ld_64ksec/test.tar.xz diff --git a/open_issues/io_system_binutils_ld_64ksec.mdwn b/open_issues/io_system_binutils_ld_64ksec.mdwn new file mode 100644 index 00000000..16c2ae50 --- /dev/null +++ b/open_issues/io_system_binutils_ld_64ksec.mdwn @@ -0,0 +1,33 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!tag open_issue_hurd]] + +This one may be considered as a testcase for I/O system optimization. + +It is taken from the [[binutils_testsuite]], `ld/ld-elf/sec64k.exp`, where this +test may occasionally trigger a timeout. It is extracted from +cdf7c161ebd4a934c9e705d33f5247fd52975612 sources, 2010-10-24. + + $ wget -O - http://www.gnu.org/software/hurd/open_issues/io_system_binutils_ld_64ksec/test.tar.xz | xz -d | tar -x + $ cd test/ + $ \time ./ld-new.stripped -o dump dump?.o dump??.o + 0.00user 0.00system 2:46.11elapsed 0%CPU (0avgtext+0avgdata 0maxresident)k + 0inputs+0outputs (0major+0minor)pagefaults 0swaps + +On the idle grubber, this one repeatedly takes a few minutes wall time to +complete successfully, contrary to a few seconds on a GNU/Linux system. + +While processing the object files, there is heavy interaction with the relevant +[[hurd/translator/ext2fs]] process . Running [[hurd/debugging/rpctrace]] on +the testee shows that (primarily) an ever-repeating series of `io_seek` and +`io_read` is being processed. Running the testee on GNU/Linux with strace +shows the equivalent thing (`_llseek`, `read`) -- but Linux' I/O system isn't +as slow as the Hurd's. diff --git a/open_issues/io_system_binutils_ld_64ksec/test.tar.xz b/open_issues/io_system_binutils_ld_64ksec/test.tar.xz new file mode 100644 index 00000000..6d7c606c Binary files /dev/null and b/open_issues/io_system_binutils_ld_64ksec/test.tar.xz differ -- cgit v1.2.3