diff options
author | Thierry Vignaud <tvignaud@mandriva.org> | 2005-05-30 02:57:20 +0000 |
---|---|---|
committer | Thierry Vignaud <tvignaud@mandriva.org> | 2005-05-30 02:57:20 +0000 |
commit | 54a40cf7adffd4eff2a7084e710f01d90cee17aa (patch) | |
tree | 3114a93e033762c38eea124de1072742e56eef1a /perl-install/standalone | |
parent | 0d6ed3abcf8ff5cf576e9185bce1f77d966904c1 (diff) | |
download | drakx-54a40cf7adffd4eff2a7084e710f01d90cee17aa.tar drakx-54a40cf7adffd4eff2a7084e710f01d90cee17aa.tar.gz drakx-54a40cf7adffd4eff2a7084e710f01d90cee17aa.tar.bz2 drakx-54a40cf7adffd4eff2a7084e710f01d90cee17aa.tar.xz drakx-54a40cf7adffd4eff2a7084e710f01d90cee17aa.zip |
load drivers for newly added devices so that they work out of the box on first
boot after card plugging for the following categorys: AGP ATA_STORAGE DVB
SATA_STORAGE SCSI_CONTROLLER TV
Diffstat (limited to 'perl-install/standalone')
-rwxr-xr-x | perl-install/standalone/service_harddrake | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/perl-install/standalone/service_harddrake b/perl-install/standalone/service_harddrake index 643aaa62a..77616c0de 100755 --- a/perl-install/standalone/service_harddrake +++ b/perl-install/standalone/service_harddrake @@ -140,9 +140,12 @@ foreach my $hw_class (@harddrake::data::tree) { $modules_conf->write; next; } elsif (member($Ident, qw(AGP ATA_STORAGE DVB SATA_STORAGE SCSI_CONTROLLER TV))) { - $modules_conf->remove_module(difference2([ uniq(map { $_->{driver} } values %$oldconfig) ], [ uniq(map { $_->{driver} } values %ID) ])); + my @old_drivers = uniq(map { $_->{driver} } values %$oldconfig); + my @new_drivers = uniq(map { $_->{driver} } values %ID); + $modules_conf->remove_module(difference2(\@old_drivers, \@new_drivers)); # add agpgart and the like modules to modprobe.preload if needed: $modules_conf->write; + modules::load(difference2(\@new_drivers, \@old_drivers)); next; } elsif ($Ident eq "PCMCIA_CONTROLLER") { harddrake::autoconf::pcmcia(keys %ID ? first(values(%ID))->{driver} : ''); |