lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Tue, 06 May 2008 22:47:20 +0200
From:	Stefan Richter <stefanr@...6.in-berlin.de>
To:	Mauro Carvalho Chehab <mchehab@...radead.org>
CC:	Alistair John Strachan <alistair@...zero.co.uk>,
	Robin Holt <holt@....com>,
	Linus Torvalds <torvalds@...ux-foundation.org>,
	Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: Linux 2.6.26-rc1

Mauro Carvalho Chehab wrote:
> For example, if you have a em28xx device with msp3400 and tvp5150 and another
> em28xx device with saa7113.
> 
> If you remove the select's for MSP3400, TVP5150 and SAA7113, at, em28xx, the
> module will compile without problems.
> 
> The only issue is that you won't be able to see any images (due to the lack of
> tvp5150 or saa7113 analog TV demoduler) or listen to the audio, if the device
> needs msp3400 to decode audio.
[...]
> It is much better for the user to just select EM28XX and let the Kconfig do the
> hard work of selecting what low-level driver applies for em28xx-based devices.
> 
> This causes lots of select, being very hard to maintain. The better would be to
> have a select-like clause that could check the dependencies automatically.
> 
> Another alternative would be some sort of script (checkpatch.pl?) that would
> check if all selected dependencies are ok.

Ah, now I understand.  You use "select" to enable options which aren't 
actually a build requirement for the selecting option.

Another example where "select" is used to fill a gap left by limitations 
regarding what can be presented in the "make ...config" UIs.  If you use 
"select" this way, well, then you have to cope with the implications.


Another workaround for this UI limitation:

config VIDEO_EM28XX
	tristate "Empia EM2800/2820/2840 USB video capture support"
	depends on WHATEVER_BUILD_REQUIREMENT_IS_LEFT
	select MAYBE_ANOTHER_BUILD_REQUIREMENT
	help
	  ...

comment "Empia EM28xx devices may require Philips SAA7113/4/5 video 
decoders"
	depends on VIDEO_EM28XX && VIDEO_SAA711X=n

comment "Empia EM28xx devices may require Texas Instruments TVP5150 
video decoder"
	depends on VIDEO_EM28XX && VIDEO_TVP5150=n

Still awkward, but now you don't have to copy VIDEO_SAA711X's and 
VIDEO_TVP5150's dependencies to VIDEO_EM28XX anymore.


Or another idea:

Copy _all_ dependencies of drivers which can be selected by "...if 
VIDEO_HELPER_CHIPS_AUTO" to VIDEO_HELPER_CHIPS_AUTO.

Of course all these issues go away as soon as somebody has implemented 
"select" with recursive dependency check.
-- 
Stefan Richter
-=====-==--- -=-= --==-
http://arcgraph.de/sr/
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ