1 |
Ühel kenal päeval, N, 28.02.2019 kell 04:13, kirjutas Joshua Kinard: |
2 |
> On 2/25/2019 05:18, Alexander Tsoy wrote: |
3 |
> > В Пн, 25/02/2019 в 13:07 +0300, Alexander Tsoy пишет: |
4 |
> > > В Чт, 21/02/2019 в 04:36 -0500, Joshua Kinard пишет: |
5 |
> > > > Does anyone have an idea why util-linux's build time would go |
6 |
> > > > up |
7 |
> > > > significantly from 2.32.x to 2.33.x? It may be a MIPS thing, |
8 |
> > > > as my |
9 |
> > > > x86_64 |
10 |
> > > > box shows no discernible change in build times between the same |
11 |
> > > > versions. |
12 |
> > > > Can any other archs check w/ genlop to see if they see a large |
13 |
> > > > jump |
14 |
> > > > in build |
15 |
> > > > time? |
16 |
> > > > |
17 |
> > > > 'genlop -t util-linux' output on my SGI system (some entries |
18 |
> > > > removed |
19 |
> > > > for |
20 |
> > > > brevity): |
21 |
> > > > |
22 |
> > > > Thu Feb 1 11:26:33 2018 >>> sys-apps/util-linux-2.31.1 |
23 |
> > > > merge time: 27 minutes and 48 seconds. |
24 |
> > > > |
25 |
> > > > Sat Mar 31 08:07:20 2018 >>> sys-apps/util-linux-2.32 |
26 |
> > > > merge time: 28 minutes and 44 seconds. |
27 |
> > > > |
28 |
> > > > Mon Aug 27 06:21:30 2018 >>> sys-apps/util-linux-2.32.1 |
29 |
> > > > merge time: 32 minutes and 58 seconds. |
30 |
> > > > |
31 |
> > > > Tue Nov 13 10:03:58 2018 >>> sys-apps/util-linux-2.33 |
32 |
> > > > merge time: 1 hour, 19 minutes and 49 seconds. |
33 |
> > > > |
34 |
> > > > Fri Jan 11 09:20:21 2019 >>> sys-apps/util-linux-2.33.1 |
35 |
> > > > merge time: 1 hour, 23 minutes and 37 seconds. |
36 |
> > > > |
37 |
> > > > Thu Feb 21 04:14:33 2019 >>> sys-apps/util-linux-2.33.1 |
38 |
> > > > merge time: 1 hour, 25 minutes and 15 seconds. |
39 |
> > > > |
40 |
> > > |
41 |
> > > 2.33 was changed to use python-r1 eclass instead of python- |
42 |
> > > single-r1 |
43 |
> > > eclass. And the increase of build time seems caused by an out-of- |
44 |
> > > source |
45 |
> > > build for each python implementation. Some libraries are built |
46 |
> > > several |
47 |
> > > times (for native abi + for each python implementation). |
48 |
> > |
49 |
> > And there is additional configure run for each python |
50 |
> > implementation. |
51 |
> |
52 |
> Hmm, this might explain things, somewhat. I think there's possibly |
53 |
> some |
54 |
> truth to the getcwd bit discussed earlier, but that may be limited to |
55 |
> glibc |
56 |
> only. |
57 |
|
58 |
Right, util-linux doesn't conduct that test. coreutils and tar do, |
59 |
maybe some more. |
60 |
That doesn't mean running with sandbox doesn't have a slowdown effect - |
61 |
it most certainly does, just hopefully not so drastic as that |
62 |
particular case - it involves glibc own generic getcwd being slow with |
63 |
long paths, and sandbox calling it three times for its access checks |
64 |
even for mkdir call, just to error with ENAMETOOLONG, in addition to |
65 |
many getcwd calls the configure check itself does. So it's slow even |
66 |
without sandbox, but with sandbox that slowness is doubled or more. |
67 |
That has made me wonder if maybe by having some more ENAMETOOLONGs |
68 |
earlier, the test would finish earlier, instead of slowly spinning |
69 |
through paths that are in length between PATH_MAX and PATH_MAX*2, when |
70 |
it's slow.. |
71 |
But not sure why these m4 macros seems to be calling getcwd after each |
72 |
mkdir+chdirm etc just to get a boolean configure check result. Didn't |
73 |
look into the specific case, I only debugged the test case that just |
74 |
loops mkdir+chdir. |
75 |
Someone should maybe convert these project to meson and do that check |
76 |
smarter :D |
77 |
|
78 |
> util-linux-2.33.1 on my uclibc-ng chroot took about ~25mins. Have to |
79 |
> re-time the glibc build to see if it's something w/ the libc |
80 |
> implementation. |
81 |
> |
82 |
> Temp workaround I guess is to cut down on the PYTHON_TARGETS before |
83 |
> my next |
84 |
> catalyst attempt. 2.7 + 3.7 should be enough... |
85 |
|
86 |
Personally I seem to get by with just USE=-python on util-linux (it's |
87 |
actually not globally enabled on my systems, it seems). Otherwise, |
88 |
sure, if the slowness is in configure. |
89 |
|
90 |
|
91 |
Mart |