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

Re: history of buildinstall.functions



Hello,

yeah, we know buildinstall isn't perfect, that's why it's being rewritten now.
I hope that the new code will be working a lot better.

--

  Martin Gracik

----- "John Reiser" <jreiser bitwagon com> wrote:

> Did buildinstall.functions (and/or mkinitrd), which is now written
> in bash, used to be written in some other language, such as python?
> get_dso_deps contains a comment "I still hate shell."
> 
> I have been building and testing a DVD from rawhide daily using
> pungi.  Building takes about 40 to 45 minutes:  10 minutes user CPU,
> 14 minutes system CPU, and 16 to 20 minutes download.
> 
> I'd like that to be faster, say 8 to 10 minutes plus download.
> After Bug 559647 (quadratic work: genisoimage per .rpm) then
> the next longest piece is upd-instroot.  "strace -f -c" shows
> that there are over 125,000 successful execve().  Now install.img
> has around 14,600 files, so the average is more than 8 execve
> per file.  A detailed examination using strace shows over 97,000
> execve by upd-instroot:
>    34573  upd-instroot execve("/usr/bin/dirname",
>    15167  upd-instroot execve("/bin/cp",
>    12513  upd-instroot execve("/bin/egrep",
>    11478  upd-instroot execve("/usr/bin/file",
>     5538  upd-instroot execve("/bin/sed",
>     5010  upd-instroot execve("/bin/basename",
>     3675  upd-instroot execve("/usr/bin/readlink",
>     3090  upd-instroot execve("/usr/sbin/chroot",
>     2264  upd-instroot execve("/bin/rm",
>     1134  upd-instroot execve("/bin/ln",
>     1046  upd-instroot execve("/bin/grep",
>     1031  upd-instroot execve("/lib64/ld-2.11.90.so",
>     1030  upd-instroot execve("/bin/uname",
>      703  upd-instroot execve("/usr/bin/find",
>      627  upd-instroot execve("/bin/mkdir",
>       [snip]
> and the culprits are instFile() and get_dso_deps() and callers.
> One process making some direct calls per file, instead of
> clone+execve several times per file, should be much faster.
> 
> -- 
> 
> _______________________________________________
> Anaconda-devel-list mailing list
> Anaconda-devel-list redhat com
> https://www.redhat.com/mailman/listinfo/anaconda-devel-list


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