On 13 January 2011 13:23, Michal Marek <mmarek@xxxxxxx> wrote: > On 12.1.2011 22:58, Len Brown wrote: >>>> These unusable config combinations should be prevented via Kconfig. >>>> That prevents users from selecting them, which otherwise adds to >>>> our workload and to theirs. ÂIt also prevents false-positives >>>> during our useful randconfig testing. >>> >>> But it is kind of difficult to achieve IMhO. ÂFor example, there are options >>> that are only SELECTed if something else is set, but randconfig doesn't seem >>> to care. >> >> Kconfig select needs to be fixed so that it is not possible to >> select something if that something's dependencies are not met. > > Right now, it issues a warning in such case. I think changing it to a > fatal error would be too premature, not long ago there were a couple of > annoying false positives. > > But from the rest of the thread, I conclude that you actually meant "not > possible to select something if that something's dependencies CANNOT be > met", i.e. automatically select dependencies if that is possible. That > was actually one of the goals of Vegard Nossum's GSoC poject last year, > but I haven't heard of any outcome yet. Vegard, is there something we > could use, be it code or mistakes we could learn from? Maybe I am wrong, but doesn't conf_write() actually take care of this when it does that sym_calc_value() for all the symbols? Or maybe that's the problem (i.e. that it doesn't). Current satconfig code can be changed to produce random configs (that nevertheless respect the user's choices) with a 1-line patch. But there are some other issues to be worked out, mainly that conf_write() doesn't respect all the choices that the SAT solver made. There could be several reasons for that: 1. satconfig doesn't deal with hex/int/string values and relies on conf_write() to fill in those (this is a plain old bug), 2. the translation into boolean logic is subtly wrong, perhaps a corner case or something like that, and/or 3. conf_write() does something wrong. I'll be happy to give a tour of the satconfig code if you or anybody else would like to start hacking on it. Vegard -- To unsubscribe from this list: send the line "unsubscribe linux-next" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html