Restrict libata transition to x86
The kernel configurations for other architectures are not changing, so there is no need to change their configuration files. Also, the code for non-x86 bootloaders is largely untested. svn path=/dists/sid/linux-2.6/; revision=15411
This commit is contained in:
parent
608fbe2c11
commit
2ef0b9ab6c
|
@ -1,10 +1,11 @@
|
||||||
linux-2.6 (2.6.32-10) unstable; urgency=low
|
linux-2.6 (2.6.32-10) unstable; urgency=low
|
||||||
|
|
||||||
* The old IDE (PATA) drivers are no longer developed, but most PATA
|
* The old IDE (PATA) drivers are no longer developed. Most PATA
|
||||||
controllers can be handled by new drivers using 'libata', which is
|
controllers used in PCs (i386 and amd64 architectures) can be handled
|
||||||
already used for SATA controllers. This release enables all the new
|
by new drivers using 'libata', which is already used for SATA
|
||||||
drivers that are considered stable and disables the old drivers that
|
controllers. This release enables all the new drivers that are
|
||||||
they replace.
|
considered stable and disables the old drivers that they replace.
|
||||||
|
Other architectures should not be affected.
|
||||||
|
|
||||||
While the old drivers presented device names beginning with 'hd',
|
While the old drivers presented device names beginning with 'hd',
|
||||||
libata makes PATA drives appear as SCSI devices and presents device
|
libata makes PATA drives appear as SCSI devices and presents device
|
||||||
|
|
|
@ -53,7 +53,7 @@ linux-2.6 (2.6.32-10) UNRELEASED; urgency=low
|
||||||
* Remove /usr/include/drm from linux-libc-dev; let libdrm-dev provide it
|
* Remove /usr/include/drm from linux-libc-dev; let libdrm-dev provide it
|
||||||
again
|
again
|
||||||
* [x86] Enable rtl8192su driver using external firmware
|
* [x86] Enable rtl8192su driver using external firmware
|
||||||
* Use libata-based drivers for most PATA controllers (Closes: #444182):
|
* [x86] Use libata-based drivers for most PATA controllers (Closes: #444182):
|
||||||
- pata_triflex replaces triflex
|
- pata_triflex replaces triflex
|
||||||
- pata_atiixp replaces atiixp
|
- pata_atiixp replaces atiixp
|
||||||
- pata_ns87415 replaces ns87415
|
- pata_ns87415 replaces ns87415
|
||||||
|
|
|
@ -522,225 +522,12 @@ sub lilo_post {
|
||||||
system('lilo');
|
system('lilo');
|
||||||
}
|
}
|
||||||
|
|
||||||
### SILO
|
|
||||||
|
|
||||||
sub silo_post {
|
|
||||||
system('silo');
|
|
||||||
}
|
|
||||||
|
|
||||||
### ELILO
|
### ELILO
|
||||||
|
|
||||||
sub elilo_post {
|
sub elilo_post {
|
||||||
system('elilo');
|
system('elilo');
|
||||||
}
|
}
|
||||||
|
|
||||||
### PALO
|
|
||||||
|
|
||||||
sub palo_next {
|
|
||||||
my ($file, $expect_opt) = @_;
|
|
||||||
my $text = <$file>;
|
|
||||||
|
|
||||||
if (!defined($text) || $text eq '') {
|
|
||||||
return ();
|
|
||||||
}
|
|
||||||
|
|
||||||
my $arg = $text;
|
|
||||||
$arg =~ s/^\s*(?:#.*)?//s;
|
|
||||||
$arg =~ s/\s*$//;
|
|
||||||
|
|
||||||
# I would like to use Getopt::Long but it would make it
|
|
||||||
# impossible to determine which source text to replace.
|
|
||||||
if ($expect_opt && $arg =~ /^-(?!-)[?v]*(.)(.+)?$/) {
|
|
||||||
return ($text, "-$1", $2, defined($2));
|
|
||||||
} elsif ($expect_opt && $arg =~ /^(--[^=]+)(?:=(.*))?$/) {
|
|
||||||
return ($text, $1, $2, defined($2));
|
|
||||||
} elsif ($arg ne '') {
|
|
||||||
return ($text, undef, $arg, 1);
|
|
||||||
} else {
|
|
||||||
return ($text, undef, undef, $expect_opt);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sub palo_list {
|
|
||||||
my ($file) = @_;
|
|
||||||
my $optopt;
|
|
||||||
my @bdevs;
|
|
||||||
|
|
||||||
while (1) {
|
|
||||||
my ($text, $optarg, $complete);
|
|
||||||
if (defined($optopt)) {
|
|
||||||
($text, undef, $optarg, $complete) = palo_next($file, 0);
|
|
||||||
} else {
|
|
||||||
($text, $optopt, $optarg, $complete) = palo_next($file, 1);
|
|
||||||
}
|
|
||||||
last unless defined($text);
|
|
||||||
|
|
||||||
if ($complete && defined($optopt)) {
|
|
||||||
if ($optopt eq '-c' || $optopt eq '--commandline') {
|
|
||||||
# If PALO is not configured to use the generic sym-link,
|
|
||||||
# ignore it
|
|
||||||
if ($optarg !~ m|^\d+/vmlinux\b|) {
|
|
||||||
return ();
|
|
||||||
}
|
|
||||||
push @bdevs, kernel_list($optarg);
|
|
||||||
} elsif ($optopt eq '-I' || $optopt eq '--init-partitioned') {
|
|
||||||
push @bdevs, $optarg;
|
|
||||||
}
|
|
||||||
$optopt = undef;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (!defined($optopt) && defined($optarg) && $optarg eq '--') {
|
|
||||||
last;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return @bdevs;
|
|
||||||
}
|
|
||||||
|
|
||||||
sub palo_update {
|
|
||||||
my ($old, $new, $map) = @_;
|
|
||||||
my $optopt;
|
|
||||||
my $allow_opts = 1;
|
|
||||||
|
|
||||||
while (1) {
|
|
||||||
my ($text, $optarg, $complete);
|
|
||||||
if (defined($optopt)) {
|
|
||||||
($text, undef, $optarg, $complete) = palo_next($old, 0);
|
|
||||||
} else {
|
|
||||||
($text, $optopt, $optarg, $complete) = palo_next($old, $allow_opts);
|
|
||||||
}
|
|
||||||
last unless defined($text);
|
|
||||||
|
|
||||||
if (defined($optopt)) {
|
|
||||||
if ($optopt eq '-c' || $optopt eq '--commandline') {
|
|
||||||
$text = "# $text";
|
|
||||||
if ($complete) {
|
|
||||||
my $new_cmdline = kernel_update($optarg, $map);
|
|
||||||
if (!defined($new_cmdline)) {
|
|
||||||
$new_cmdline = $optarg;
|
|
||||||
}
|
|
||||||
$text .= "--commandline=$new_cmdline\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$optopt = undef;
|
|
||||||
}
|
|
||||||
|
|
||||||
$new->print($text);
|
|
||||||
|
|
||||||
if (!defined($optopt) && defined($optarg) && $optarg eq '--') {
|
|
||||||
$allow_opts = 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sub palo_post {
|
|
||||||
system('palo');
|
|
||||||
}
|
|
||||||
|
|
||||||
### delo
|
|
||||||
|
|
||||||
sub delo_next {
|
|
||||||
# Based on getconfig() in config.c
|
|
||||||
|
|
||||||
my ($file) = @_;
|
|
||||||
my $text = <$file>;
|
|
||||||
|
|
||||||
if (!defined($text) || $text eq '') {
|
|
||||||
return ();
|
|
||||||
}
|
|
||||||
|
|
||||||
local $_ = $text;
|
|
||||||
s/[ \t]*(?:#.*)?\n//;
|
|
||||||
s/^[ \t]*//;
|
|
||||||
|
|
||||||
if (/^([a-z]+)=(.*)$/) {
|
|
||||||
return ($text, $1, $2);
|
|
||||||
} else {
|
|
||||||
return ($text);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sub delo_sections {
|
|
||||||
my ($file) = @_;
|
|
||||||
my @sections;
|
|
||||||
my $section = {};
|
|
||||||
|
|
||||||
while (1) {
|
|
||||||
my ($text, $name, $value) = delo_next($file);
|
|
||||||
|
|
||||||
# If this is EOF or a new section, finish the current section
|
|
||||||
if (!defined($text) || (defined($name) && $name eq 'label')) {
|
|
||||||
$section->{is_generic} =
|
|
||||||
(exists($section->{image}) &&
|
|
||||||
exists($section->{append}) &&
|
|
||||||
$section->{image} =~ m|^/vmlinux(?:\.old)?$|);
|
|
||||||
push @sections, $section;
|
|
||||||
$section = {};
|
|
||||||
}
|
|
||||||
|
|
||||||
last unless defined($text);
|
|
||||||
|
|
||||||
if (defined($name)) {
|
|
||||||
if ($name eq 'append') {
|
|
||||||
$value =~ s/^"([^"]*).*/$1/;
|
|
||||||
}
|
|
||||||
$section->{$name} = $value;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return @sections;
|
|
||||||
}
|
|
||||||
|
|
||||||
sub delo_list {
|
|
||||||
my ($file) = @_;
|
|
||||||
my ($globals, @entries) = delo_sections($file);
|
|
||||||
my @bdevs;
|
|
||||||
|
|
||||||
if (exists($globals->{boot})) {
|
|
||||||
push @bdevs, $globals->{boot};
|
|
||||||
}
|
|
||||||
|
|
||||||
for my $entry (@entries) {
|
|
||||||
if ($entry->{is_generic}) {
|
|
||||||
push @bdevs, kernel_list($entry->{append});
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return @bdevs;
|
|
||||||
}
|
|
||||||
|
|
||||||
sub delo_update {
|
|
||||||
my ($old, $new, $map) = @_;
|
|
||||||
my ($globals, @entries) = delo_sections($old);
|
|
||||||
my $i = -1;
|
|
||||||
|
|
||||||
$old->seek(0, 0);
|
|
||||||
|
|
||||||
while (1) {
|
|
||||||
my ($text, $name, $value) = delo_next($old);
|
|
||||||
last unless defined($text);
|
|
||||||
|
|
||||||
if (defined($name)) {
|
|
||||||
if ($name eq 'label') {
|
|
||||||
++$i; # next entry
|
|
||||||
} elsif ($name eq 'boot' && $i < 0) {
|
|
||||||
my $new_value = $map->{$value} && id_to_path($map->{$value});
|
|
||||||
if (defined($new_value)) {
|
|
||||||
$text = "# $text" . "boot=$new_value\n";
|
|
||||||
}
|
|
||||||
} elsif ($name eq 'append' &&
|
|
||||||
$i >= 0 && $entries[$i]->{is_generic}) {
|
|
||||||
my $new_cmdline = kernel_update($value, $map);
|
|
||||||
if (defined($new_cmdline)) {
|
|
||||||
$text = "# $text" . "append=\"$new_cmdline\"\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$new->print($text);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
### extlinux
|
### extlinux
|
||||||
|
|
||||||
sub extlinux_old_path {
|
sub extlinux_old_path {
|
||||||
|
@ -804,51 +591,6 @@ sub extlinux_post {
|
||||||
system('update-extlinux');
|
system('update-extlinux');
|
||||||
}
|
}
|
||||||
|
|
||||||
### aboot
|
|
||||||
|
|
||||||
sub aboot_next {
|
|
||||||
my ($file) = @_;
|
|
||||||
my $text = <$file>;
|
|
||||||
|
|
||||||
if (!defined($text) || $text eq '') {
|
|
||||||
return ();
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($text =~ /^([0-9]):([^ ]*) (.*)/) {
|
|
||||||
return ($text, $1, $2, $3);
|
|
||||||
} else {
|
|
||||||
return ($text);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sub aboot_list {
|
|
||||||
my ($file) = @_;
|
|
||||||
my @bdevs;
|
|
||||||
while (1) {
|
|
||||||
my ($text, $preset, $kernel, $params) = aboot_next($file);
|
|
||||||
last unless defined($text);
|
|
||||||
if (defined($params) && $kernel =~ m|^\d+/vmlinux(?:\.old)?$|) {
|
|
||||||
push @bdevs, kernel_list($params);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return @bdevs;
|
|
||||||
}
|
|
||||||
|
|
||||||
sub aboot_update {
|
|
||||||
my ($old, $new, $map) = @_;
|
|
||||||
while (1) {
|
|
||||||
my ($text, $preset, $kernel, $params) = aboot_next($old);
|
|
||||||
last unless defined($text);
|
|
||||||
if (defined($params) && $kernel =~ m|^\d+/vmlinux(?:\.old)?$|) {
|
|
||||||
my $new_params = kernel_update($params, $map);
|
|
||||||
if (defined($new_params)) {
|
|
||||||
$text = "# $text" . "$preset:$kernel $new_params\n";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
$new->print($text);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
# udev persistent-cd
|
# udev persistent-cd
|
||||||
|
|
||||||
sub udev_next {
|
sub udev_next {
|
||||||
|
@ -1087,37 +829,11 @@ my @config_files = ({packages => 'mount',
|
||||||
list => \&lilo_list,
|
list => \&lilo_list,
|
||||||
update => \&lilo_update,
|
update => \&lilo_update,
|
||||||
post_update => \&lilo_post},
|
post_update => \&lilo_post},
|
||||||
{packages => 'silo',
|
|
||||||
path => '/etc/silo.conf',
|
|
||||||
list => \&lilo_list,
|
|
||||||
update => \&lilo_update,
|
|
||||||
post_update => \&silo_post},
|
|
||||||
{packages => 'quik',
|
|
||||||
path => '/etc/quik.conf',
|
|
||||||
list => \&lilo_list,
|
|
||||||
update => \&lilo_update},
|
|
||||||
{packages => 'yaboot',
|
|
||||||
path => '/etc/yaboot.conf',
|
|
||||||
list => \&lilo_list,
|
|
||||||
update => \&lilo_update},
|
|
||||||
{packages => 'elilo',
|
{packages => 'elilo',
|
||||||
path => '/etc/elilo.conf',
|
path => '/etc/elilo.conf',
|
||||||
list => \&lilo_list,
|
list => \&lilo_list,
|
||||||
update => \&lilo_update,
|
update => \&lilo_update,
|
||||||
post_update => \&elilo_post},
|
post_update => \&elilo_post},
|
||||||
{packages => 'palo',
|
|
||||||
path => '/etc/palo.conf',
|
|
||||||
list => \&palo_list,
|
|
||||||
update => \&palo_update,
|
|
||||||
post_update => \&palo_post},
|
|
||||||
{packages => 'delo',
|
|
||||||
path => '/etc/delo.conf',
|
|
||||||
list => \&delo_list,
|
|
||||||
update => \&delo_update},
|
|
||||||
{packages => 'arcboot',
|
|
||||||
path => '/etc/arcboot.conf',
|
|
||||||
list => \&delo_list,
|
|
||||||
update => \&delo_update},
|
|
||||||
{packages => 'extlinux',
|
{packages => 'extlinux',
|
||||||
path => extlinux_old_path(),
|
path => extlinux_old_path(),
|
||||||
list => \&extlinux_old_list,
|
list => \&extlinux_old_list,
|
||||||
|
@ -1128,10 +844,6 @@ my @config_files = ({packages => 'mount',
|
||||||
list => \&extlinux_new_list,
|
list => \&extlinux_new_list,
|
||||||
update => \&extlinux_new_update,
|
update => \&extlinux_new_update,
|
||||||
post_update => \&extlinux_post},
|
post_update => \&extlinux_post},
|
||||||
{packages => 'aboot',
|
|
||||||
path => '/etc/aboot.conf',
|
|
||||||
list => \&aboot_list,
|
|
||||||
update => \&aboot_update},
|
|
||||||
{packages => 'udev',
|
{packages => 'udev',
|
||||||
path => '/etc/udev/rules.d/70-persistent-cd.rules',
|
path => '/etc/udev/rules.d/70-persistent-cd.rules',
|
||||||
needs_update => \&udev_cd_needs_update,
|
needs_update => \&udev_cd_needs_update,
|
||||||
|
@ -1622,8 +1334,11 @@ sub compare_versions {
|
||||||
return $AptPkg::Config::_config->system->versioning->compare(@_);
|
return $AptPkg::Config::_config->system->versioning->compare(@_);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($ARGV[0] eq 'reconfigure' ||
|
my $deb_arch = `dpkg --print-architecture`;
|
||||||
compare_versions($ARGV[1], '2.6.32-10') < 0) {
|
chomp $deb_arch;
|
||||||
|
|
||||||
|
if (($deb_arch eq 'i386' || $deb_arch eq 'amd64') &&
|
||||||
|
($ARGV[0] eq 'reconfigure' || compare_versions($ARGV[1], '2.6.32-10') < 0)) {
|
||||||
DebianKernel::DiskId::transition();
|
DebianKernel::DiskId::transition();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue