1 |
On Wed, 3 Dec 2014 22:53:38 +0400 Alexander V Vershilov wrote: |
2 |
> Let me state my idea here. |
3 |
> |
4 |
> At first I want to mention that author provided 2 different approaches to |
5 |
> the solution, simple dependency loop checker and another more complicated |
6 |
> algorithm that is a loop breaker. |
7 |
|
8 |
No, unfortunately you get it wrong. Both earlyloopsolver and |
9 |
laterloopsolver break loops and optionally warn users about found |
10 |
issues. And they are not alternatives, but complements to each |
11 |
other: |
12 |
|
13 |
Early loop solvers works during dependencies cache generation, but |
14 |
it can't solve issues where all dependencies in a loop are hard |
15 |
("need" in terms of OpenRC). While later loop solver handles hard |
16 |
dependencies at run-time. |
17 |
|
18 |
More details are available in my another mail in this thread: |
19 |
http://article.gmane.org/gmane.linux.gentoo.devel/93968 |
20 |
|
21 |
> I think that on a boot phase in case of parallel boot rc should try to |
22 |
> check if loop exists and it is then print a warning and switch to a |
23 |
> sequential boot. |
24 |
|
25 |
In case of a hard loop this will fix nothing: there is no way to |
26 |
determine a correct order of sequential boot in case of a all |
27 |
"need" hard loop. Anyway I don't see how switch to sequential boot |
28 |
may fix anything, because this doesn't solve order determination |
29 |
problem at all. |
30 |
|
31 |
Best regards, |
32 |
Andrew Savchenko |