[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <48931D69.2010309@keyaccess.nl>
Date: Fri, 01 Aug 2008 16:27:53 +0200
From: Rene Herman <rene.herman@...access.nl>
To: Ingo Molnar <mingo@...e.hu>, Wolfram Sang <w.sang@...gutronix.de>
CC: Linus Torvalds <torvalds@...ux-foundation.org>,
Suresh Siddha <suresh.b.siddha@...el.com>,
Wim Van Sebroeck <wim@...ana.be>,
Pádraig Brady <P@...igBrady.com>,
Andi Kleen <andi@...stfloor.org>,
"H. Peter Anvin" <hpa@...or.com>,
"tglx@...utronix.de" <tglx@...utronix.de>,
"akpm@...ux-foundation.org" <akpm@...ux-foundation.org>,
"arjan@...ux.intel.com" <arjan@...ux.intel.com>,
"roland@...hat.com" <roland@...hat.com>,
"drepper@...hat.com" <drepper@...hat.com>,
"mikpe@...uu.se" <mikpe@...uu.se>,
"chrisw@...s-sol.org" <chrisw@...s-sol.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [patch 0/9] x86, xsave: xsave/xrstor support
On 01-08-08 11:51, Ingo Molnar wrote:
> find attached below a newer version of the original list i published
> half a year ago:
>
> http://people.redhat.com/mingo/auto-qa-patches/Kconfig-qa.patch
>
> these are just pragmatic local hacks to get things going. (There are
> more per machine quirks as well.)
>
> i have not used a BROKEN annotation because CONFIG_BROKEN is
> impractical: it just kills code altogether, indiscriminately. There's no
> way for users to enable CONFIG_BROKEN in the upstream kernel - nothing
> selects it and it's not an interactive option either.
>
> So by all means if we mark a driver or a kernel feature as
> CONFIG_BROKEN, it's killed altogether for all practical purposes.
>
> What we'd need is some more gradual approach: for example a way to mark
> "drivers that are not expected to boot on a whitebox PC", without
> removing them altogether via a CONFIG_BROKEN dependency - often it's
> hardware that cannot be probed safely.
For real ISA at the least, the best fix I feel is just not go grabbing
resources without anything (ie, ISAPnP) or anyone (ie, the user) telling
us that's where the hardware's at.
For example, for the first real ISA driver in the list:
> Index: linux/drivers/i2c/busses/Kconfig
> ===================================================================
> --- linux.orig/drivers/i2c/busses/Kconfig
> +++ linux/drivers/i2c/busses/Kconfig
> @@ -610,6 +610,11 @@ config I2C_ELEKTOR
> config I2C_PCA_ISA
> tristate "PCA9564 on an ISA bus"
> depends on ISA
> +
> + # takes away IRQ10 on venus and thus breaks e1000
> + depends on BROKEN_BOOT_ALLOWED
> + select BROKEN_BOOT
> +
The attached would be my preffered approach to this.
(to avoid an IRQ 0 discussion -- the middle hunk is unrelated, just
makes it consistent with the rest of the file)
(and this uses the isa_bus match() method as intended; the idea of the
isa_bus is to make it look at least somewhat like a sane bus such as PCI
which includes only failing a load if there's no way a later bind could
conceivably succeed. somewhat debatable merit sometimes, but such is the
device model, and it's actually fairly nice once you get used to it for
quickly switching drivers for a single piece of hardware)
A user of this hardware is a one-time
$ echo options i2c-pca-isa base=0x330 irq=10 >> /etc/modprobe.conf
away from the old behaviour. Given the hackish nature of all this kind
of hardware these days its users tend to not mind. In fact, what with
getting old hardware to play nice with modern systems, I myself at least
very much welcome having to be explicit about these things.
(and just saw the CC list on this thing while adding Wolfram. ouch. will
be dropping all from any followups...)
Rene.
View attachment "0001-i2c-don-t-autograb-i2c-pca-isa.patch" of type "text/plain" (1975 bytes)
Powered by blists - more mailing lists