From a642542a916a17214e3b2f5748ac28a1bfe78e90 Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Tue, 9 Mar 2004 16:01:00 +0000 Subject: special case to handle imm & ppa on kernel 2.6: - need parport_pc - modules insmod always succeed, so need to check /proc/sys/dev/parport/parport0/devices/{imm,ppa} --- perl-install/modules.pm | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'perl-install/modules.pm') diff --git a/perl-install/modules.pm b/perl-install/modules.pm index 616ffa93c..7bddda631 100644 --- a/perl-install/modules.pm +++ b/perl-install/modules.pm @@ -111,7 +111,7 @@ sub load_category { my @try_modules = ( if_($category =~ /scsi/, - if_(arch() !~ /ppc/, 'imm', 'ppa'), + if_(arch() !~ /ppc/, 'parport_pc', 'imm', 'ppa'), if_(detect_devices::usbStorage(), 'usb-storage'), ), if_(arch() =~ /ppc/, @@ -418,6 +418,11 @@ sub when_load { $conf{$name}{options} = join " ", @options if @options; if (my $category = module2category($name)) { + if (c::kernel_version() =~ /^\Q2.6/ && member($name, 'imm', 'ppa') + && ! -d "/proc/sys/dev/parport/parport0/devices/$name") { + unload($name); + undef $category; + } if ($category =~ m,disk/(scsi|hardware_raid|usb|firewire),) { add_probeall('scsi_hostadapter', $name); eval { load('sd_mod') }; -- cgit v1.2.1