Re: Is the change to IDE probing really necessary?

From: Borislav Petkov
Date: Mon Nov 24 2008 - 17:51:42 EST


Hi,

On Mon, Nov 24, 2008 at 03:56:32PM +0000, Mel Gorman wrote:
> Hi,
>
> I got caught by commit 20df429dd6671804999493baf2952f82582869fa as I didn't
> immediately guess that "ide_generic." was necessary on the kernel command line
> when compiled in instead of as a module. While it didn't catch me for long,
> my concern is that this is going to trip up other people with old machines
> that need that mask. This change was introduced in 2.6.28-rc1 but I didn't
> catch it till now as I hadn't used the laptop in a while.
>
> I have a few questions on the commit.
>
> 1. Why was it necessary to disable the legacy probes like this at all?
> Would it be possible to try the probe_mask in the event nothing is found
> or does that have other consequences?

take a look at 0cbccbc30a60ff60dbeb203154f1f527c632de9b for background
info on the decision behind the probe_mask. Now ide-generic probes only
the legacy ports as is the case in common machine configurations and
is a sort-of fall-back option in case there's no PCI IDE controller
present. In addition, the Kconfig text explains more why ide-generic
should not be used in modern systems (not sharing IRQs, preventing
controller-specific drivers from attaching in certain cases).

And the probing _is_ done when loaded as a module so the problem is
not with the mask - in your case the probing will work just fine as
you need ide0 and ide1, AFAICT. The problem is that the probing is not
being done when ide-generic is compiled in and is the only controller
driver enabled. The only trick I can think of off the top of my head
is a Kconfig-option enabling ide-generic only when no other controller
driver is enabled and getting rid of the possibility of compiling it as
a module.

Bart, I'm sure you have a better idea :).

--
Regards/Gruss,
Boris.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/