From 78116fed22af96fd2ec3e259d7c936e4c5757a77 Mon Sep 17 00:00:00 2001 From: Pascal Rigaux Date: Thu, 28 Jun 2007 13:16:39 +0000 Subject: - use modularized ide drivers and configure ide-controller in modprobe.conf - bootloader-config: o configure ide-controller in modprobe.conf for upgrading to kernels with modularized ide drivers --- perl-install/NEWS | 5 ++++- perl-install/install/NEWS | 3 +-- perl-install/modules.pm | 6 ++++-- perl-install/standalone/bootloader-config | 13 +++++++++++++ 4 files changed, 22 insertions(+), 5 deletions(-) (limited to 'perl-install') diff --git a/perl-install/NEWS b/perl-install/NEWS index 60dcb4ea6..9eca55313 100644 --- a/perl-install/NEWS +++ b/perl-install/NEWS @@ -1,5 +1,8 @@ - merge "ide" and "all_ide" categories since we now use fully - modularezed ide drivers + modularized ide drivers +- bootloader-config: + o configure ide-controller in modprobe.conf for upgrading to kernels + with modularized ide drivers Version 10.4.139 - 27 June 2007, by Thierry Vignaud diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS index 5cc08c5f4..e3f03689c 100644 --- a/perl-install/install/NEWS +++ b/perl-install/install/NEWS @@ -1,5 +1,4 @@ -Version 10.4.137 - 21 June 2007, by Pascal "Pixel" Rigaux - +- use modularized ide drivers and configure ide-controller in modprobe.conf - auto_install: o allow "automatic=met:http,ser:server,dir:/pub/dir kickstart=/pub/auto_inst.cfg" to get http://server/pub/auto_inst.cfg (#31474) diff --git a/perl-install/modules.pm b/perl-install/modules.pm index 8d6a9f116..c0ebe60de 100644 --- a/perl-install/modules.pm +++ b/perl-install/modules.pm @@ -259,9 +259,11 @@ sub when_load { sub when_load_category { my ($conf, $name, $category) = @_; - if ($category =~ m,disk/(ide|scsi|hardware_raid|sata|usb|firewire),) { + if ($category =~ m,disk/ide,) { + $conf->add_probeall('ide-controller', $name); + } elsif ($category =~ m,disk/(scsi|hardware_raid|sata|usb|firewire),) { $conf->add_probeall('scsi_hostadapter', $name); - eval { load('sd_mod') } if $category ne 'disk/ide'; + eval { load('sd_mod') }; } elsif ($category eq 'bus/usb') { $conf->add_probeall('usb-interface', $name); -f '/proc/bus/usb/devices' or eval { diff --git a/perl-install/standalone/bootloader-config b/perl-install/standalone/bootloader-config index f9b796fc9..4f53ba420 100755 --- a/perl-install/standalone/bootloader-config +++ b/perl-install/standalone/bootloader-config @@ -134,6 +134,8 @@ sub remove_kernel() { #-############################################################################### sub add_kernel() { + configure_ide_controller(); + exit; bootloader::create_link_source(); my $kernel_str = bootloader::vmlinuz2kernel_str($image) or die "bad kernel name $image\n"; @@ -164,6 +166,17 @@ sub add_kernel() { modify_bootloader(); } +sub configure_ide_controller { + my $modules_conf = modules::any_conf->read; + if ($modules_conf->get_alias('ide-controller') || + $modules_conf->get_probeall('ide-controller')) { + #- already configured + } elsif (my @l = detect_devices::probe_category('disk/ide')) { + $modules_conf->add_probeall('ide-controller', $_->{driver}) foreach @l; + $modules_conf->write; + } +} + sub modify_bootloader() { !$no_entry or return; -- cgit v1.2.1