From 3a76f08fbdd7dc83dc260e6af4f482c600774576 Mon Sep 17 00:00:00 2001 From: Martin Whitaker Date: Sat, 4 Feb 2017 17:11:10 +0000 Subject: Fix erratic behaviour when telling kernel to delete partitions (mga#20074). When telling the kernel about changes to a DOS partition table, if a partition was deleted on a disk that also contained an Empty partition, the kernel also removed the Empty partition from its cached partition table (and renumbered the other partitions). Experimentation showed that leaving the udev exec queue active whilst we were telling the kernel about the changes fixed this problem, although I don't have an explanation for why it does. --- perl-install/partition_table.pm | 4 ---- 1 file changed, 4 deletions(-) diff --git a/perl-install/partition_table.pm b/perl-install/partition_table.pm index 955a71a3f..2a226b7f7 100644 --- a/perl-install/partition_table.pm +++ b/perl-install/partition_table.pm @@ -425,8 +425,6 @@ sub tell_kernel { my $F = partition_table::raw::openit($hd); - run_program::run('udevadm', 'control', '--stop-exec-queue'); - my $force_reboot = any { $_->[0] eq 'force_reboot' } @$tell_kernel; if (!$force_reboot) { foreach (@$tell_kernel) { @@ -441,8 +439,6 @@ sub tell_kernel { } } - run_program::run('udevadm', 'control', '--start-exec-queue'); - if ($force_reboot) { # FIXME Handle LVM/dmcrypt/RAID my @magic_parts = grep { $_->{isMounted} && $_->{real_mntpoint} } get_normal_parts($hd); -- cgit v1.2.1