Bug 1170153 - anaconda gets stuck during creating a partition, when there is some existing partition after that one
Summary: anaconda gets stuck during creating a partition, when there is some existing ...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: anaconda
Version: 21
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Anaconda Maintenance Team
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard: AcceptedBlocker
: 1169541 (view as bug list)
Depends On:
Blocks: F21FinalBlocker
TreeView+ depends on / blocked
 
Reported: 2014-12-03 12:34 UTC by Kamil Páral
Modified: 2014-12-05 03:26 UTC (History)
11 users (show)

Fixed In Version: anaconda-21.48.21-1.fc21
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-12-05 03:26:48 UTC


Attachments (Terms of Use)
mac-screenshot (195.04 KB, image/png)
2014-12-03 12:35 UTC, Kamil Páral
no flags Details
mac-anaconda.log (18.05 KB, text/plain)
2014-12-03 12:35 UTC, Kamil Páral
no flags Details
mac-program.log (21.23 KB, text/plain)
2014-12-03 12:35 UTC, Kamil Páral
no flags Details
mac-storage.log (194.06 KB, text/plain)
2014-12-03 12:35 UTC, Kamil Páral
no flags Details
mac-journal (311.43 KB, text/plain)
2014-12-03 12:35 UTC, Kamil Páral
no flags Details
mac-lsblk (930 bytes, text/plain)
2014-12-03 12:35 UTC, Kamil Páral
no flags Details
mac-pstack.out (6.10 KB, text/plain)
2014-12-03 12:35 UTC, Kamil Páral
no flags Details
lenovo-anaconda.log (27.01 KB, text/plain)
2014-12-03 12:36 UTC, Kamil Páral
no flags Details
lenovo-program.log (65.85 KB, text/plain)
2014-12-03 12:36 UTC, Kamil Páral
no flags Details
lenovo-storage.log (369.99 KB, text/plain)
2014-12-03 12:36 UTC, Kamil Páral
no flags Details
lenovo-journal (513.46 KB, text/plain)
2014-12-03 12:36 UTC, Kamil Páral
no flags Details
lenovo-lsblk.out (974 bytes, text/plain)
2014-12-03 12:36 UTC, Kamil Páral
no flags Details
lenovo-pstack.out (6.10 KB, text/plain)
2014-12-03 12:37 UTC, Kamil Páral
no flags Details


Links
System ID Priority Status Summary Last Updated
Red Hat Bugzilla 1166598 None None None Never

Internal Links: 1166598

Description Kamil Páral 2014-12-03 12:34:12 UTC
Description of problem:
I have seen this on a Mac with existing Mac OS X, and on Lenovo with existing Fedora 21 + Windows 8 installation (I wanted to reinstall the F21 system). After I begun installation, anaconda got frozen and the spinner stopped moving. Anaconda utilized CPU for 100%. In both cases there were some partitions I wanted to preserve (the other operating system). All UEFI.

I rebooted the computer. Mac OS booted again, but Lenovo didn't boot into either F21 or Windows (neither from UEFI boot menu), the screen just flashed and returned back. So there was some data loss.

I tried again on Lenovo, happened again. From pstack output, it seems to be stuck inside libparted when checking "disk sanity":

Thread 3 (Thread 0x7f8fba2ef700 (LWP 2251)):
#0  0x00007f8fd170d1dd in poll () from /lib64/libc.so.6
#1  0x00007f8fc94b3e24 in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0
#2  0x00007f8fc94b41b2 in g_main_loop_run () from /lib64/libglib-2.0.so.0
#3  0x00007f8fc8dc1d96 in gdbus_shared_thread_func () from /lib64/libgio-2.0.so.0
#4  0x00007f8fc94da7b5 in g_thread_proxy () from /lib64/libglib-2.0.so.0
#5  0x00007f8fd20eb52a in start_thread () from /lib64/libpthread.so.0
#6  0x00007f8fd171877d in clone () from /lib64/libc.so.6
Thread 2 (Thread 0x7f8f8effd700 (LWP 2511)):
#0  0x00007f8fc0182f78 in _disk_check_sanity () from /lib64/libparted.so.2
#1  0x00007f8fc0183d45 in _disk_pop_update_mode () from /lib64/libparted.so.2
#2  0x00007f8fc0184653 in ped_disk_add_partition () from /lib64/libparted.so.2
#3  0x00007f8fc03d16af in py_ped_disk_add_partition () from /usr/lib64/python2.7/site-packages/_pedmodule.so
#4  0x00007f8fd23e2a4e in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#5  0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#6  0x00007f8fd236f6bd in function_call () from /lib64/libpython2.7.so.1.0
#7  0x00007f8fd234a903 in PyObject_Call () from /lib64/libpython2.7.so.1.0
#8  0x00007f8fd23e0050 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#9  0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#10 0x00007f8fd23e1ae4 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#11 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#12 0x00007f8fd23e1ae4 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#13 0x00007f8fd23e1be6 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#14 0x00007f8fd23e1be6 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#15 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#16 0x00007f8fd23e1ae4 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#17 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#18 0x00007f8fd23e1ae4 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#19 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#20 0x00007f8fd23e1ae4 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#21 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#22 0x00007f8fd23e1ae4 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#23 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#24 0x00007f8fd236f6bd in function_call () from /lib64/libpython2.7.so.1.0
#25 0x00007f8fd234a903 in PyObject_Call () from /lib64/libpython2.7.so.1.0
#26 0x00007f8fd23e0050 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#27 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#28 0x00007f8fd236f6bd in function_call () from /lib64/libpython2.7.so.1.0
#29 0x00007f8fd234a903 in PyObject_Call () from /lib64/libpython2.7.so.1.0
#30 0x00007f8fd2359815 in instancemethod_call () from /lib64/libpython2.7.so.1.0
#31 0x00007f8fd234a903 in PyObject_Call () from /lib64/libpython2.7.so.1.0
#32 0x00007f8fd23e0050 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#33 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#34 0x00007f8fd23e1ae4 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#35 0x00007f8fd23e1be6 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#36 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#37 0x00007f8fd236f5dc in function_call () from /lib64/libpython2.7.so.1.0
#38 0x00007f8fd234a903 in PyObject_Call () from /lib64/libpython2.7.so.1.0
#39 0x00007f8fd2359815 in instancemethod_call () from /lib64/libpython2.7.so.1.0
#40 0x00007f8fd234a903 in PyObject_Call () from /lib64/libpython2.7.so.1.0
#41 0x00007f8fd23dc4c7 in PyEval_CallObjectWithKeywords () from /lib64/libpython2.7.so.1.0
#42 0x00007f8fd2412062 in t_bootstrap () from /lib64/libpython2.7.so.1.0
#43 0x00007f8fd20eb52a in start_thread () from /lib64/libpthread.so.0
#44 0x00007f8fd171877d in clone () from /lib64/libc.so.6
Thread 1 (Thread 0x7f8fd28d0700 (LWP 2246)):
#0  0x00007f8fd20f2710 in sem_wait () from /lib64/libpthread.so.0
#1  0x00007f8fd240de55 in PyThread_acquire_lock () from /lib64/libpython2.7.so.1.0
#2  0x00007f8fd23dbdb6 in PyEval_RestoreThread () from /lib64/libpython2.7.so.1.0
#3  0x00007f8fd23fc828 in PyGILState_Ensure () from /lib64/libpython2.7.so.1.0
#4  0x00007f8fc9e52eb5 in _pygi_closure_handle () from /usr/lib64/python2.7/site-packages/gi/_gi.so
#5  0x00007f8fc9267b4f in ffi_closure_unix64_inner () from /lib64/libffi.so.6
#6  0x00007f8fc9267ec8 in ffi_closure_unix64 () from /lib64/libffi.so.6
#7  0x00007f8fc94b4553 in g_timeout_dispatch () from /lib64/libglib-2.0.so.0
#8  0x00007f8fc94b3aeb in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#9  0x00007f8fc94b3e88 in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0
#10 0x00007f8fc94b41b2 in g_main_loop_run () from /lib64/libglib-2.0.so.0
#11 0x00007f8fb8a63b35 in gtk_main () from /lib64/libgtk-3.so.0
#12 0x00007f8fc9267d60 in ffi_call_unix64 () from /lib64/libffi.so.6
#13 0x00007f8fc92677d1 in ffi_call () from /lib64/libffi.so.6
#14 0x00007f8fc9e556a4 in pygi_invoke_c_callable () from /usr/lib64/python2.7/site-packages/gi/_gi.so
#15 0x00007f8fc9e56fd8 in pygi_function_cache_invoke () from /usr/lib64/python2.7/site-packages/gi/_gi.so
#16 0x00007f8fd234a903 in PyObject_Call () from /lib64/libpython2.7.so.1.0
#17 0x00007f8fd23e0585 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#18 0x00007f8fd23e1be6 in PyEval_EvalFrameEx () from /lib64/libpython2.7.so.1.0
#19 0x00007f8fd23e3400 in PyEval_EvalCodeEx () from /lib64/libpython2.7.so.1.0
#20 0x00007f8fd23e34f9 in PyEval_EvalCode () from /lib64/libpython2.7.so.1.0
#21 0x00007f8fd23fc90f in run_mod () from /lib64/libpython2.7.so.1.0
#22 0x00007f8fd23fdb32 in PyRun_FileExFlags () from /lib64/libpython2.7.so.1.0
#23 0x00007f8fd23fed47 in PyRun_SimpleFileExFlags () from /lib64/libpython2.7.so.1.0
#24 0x00007f8fd24102ea in Py_Main () from /lib64/libpython2.7.so.1.0
#25 0x00007f8fd1637fe0 in __libc_start_main () from /lib64/libc.so.6
#26 0x000000000040071e in _start ()

Then I tried again on Lenovo, this time I marked all partitions for deletion, and this time everything worked. So it might be related just to preserving some partitions.

Version-Release number of selected component (if applicable):
F21 RC4 Workstation x86_64, copied to USB using gnome-disks (i.e. dd)

How reproducible:
2/2 on Lenovo when preserving partitions, 0/1 on Lenovo when erasing whole disk, 1/1 on Mac when preserving partitions

Steps to Reproduce:
1. probably prepare some partitions, ideally ntfs or hfs+
2. instruct anaconda to install into the free space alongside those partitions
3. see anaconda being stuck on the first screen

Additional info:
One user (rudrab) reported same problems on #fedora-qa. He had these problems with RC1 and RC2, but not with TC4. He was unable to provide logs, though.

Comment 1 Kamil Páral 2014-12-03 12:35:00 UTC
Created attachment 964114 [details]
mac-screenshot

Comment 2 Kamil Páral 2014-12-03 12:35:34 UTC
Created attachment 964115 [details]
mac-anaconda.log

Comment 3 Kamil Páral 2014-12-03 12:35:39 UTC
Created attachment 964116 [details]
mac-program.log

Comment 4 Kamil Páral 2014-12-03 12:35:44 UTC
Created attachment 964117 [details]
mac-storage.log

Comment 5 Kamil Páral 2014-12-03 12:35:50 UTC
Created attachment 964118 [details]
mac-journal

Comment 6 Kamil Páral 2014-12-03 12:35:54 UTC
Created attachment 964119 [details]
mac-lsblk

Comment 7 Kamil Páral 2014-12-03 12:35:58 UTC
Created attachment 964120 [details]
mac-pstack.out

Comment 8 Kamil Páral 2014-12-03 12:36:28 UTC
Created attachment 964121 [details]
lenovo-anaconda.log

Comment 9 Kamil Páral 2014-12-03 12:36:37 UTC
Created attachment 964122 [details]
lenovo-program.log

Comment 10 Kamil Páral 2014-12-03 12:36:43 UTC
Created attachment 964123 [details]
lenovo-storage.log

Comment 11 Kamil Páral 2014-12-03 12:36:54 UTC
Created attachment 964124 [details]
lenovo-journal

Comment 12 Kamil Páral 2014-12-03 12:36:58 UTC
Created attachment 964125 [details]
lenovo-lsblk.out

Comment 13 Kamil Páral 2014-12-03 12:37:02 UTC
Created attachment 964126 [details]
lenovo-pstack.out

Comment 14 Kamil Páral 2014-12-03 12:42:30 UTC
On the Mac with stuck anaconda, I tried to list all partitions with parted and it worked without problems.

Comment 15 Kamil Páral 2014-12-03 12:44:12 UTC
I tried the Mac again, and it got stuck again. Same symptoms.

Comment 16 Kamil Páral 2014-12-03 12:44:35 UTC
Proposing as Final blocker.

Comment 17 Kamil Páral 2014-12-03 13:25:00 UTC
OK, folks, here's the minimum reproducer. You can use bare metal or VM, UEFI or BIOS, gpt or msdos, doesn't matter.

1. Clean the whole disk
# parted /dev/vda
# mklabel msdos
2. Create a partition *at then end* of the disk. Let's say the whole disk has 10GB, then something like this:
# mkpart p ext4 9G 10G
3. Review the layout, e.g.:
(parted) p                                                                
Model: Virtio Block Device (virtblk)
Disk /dev/vda: 10.7GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos
Disk Flags: 

Number  Start   End     Size    Type     File system  Flags
 1      9000MB  10.0GB  1000MB  primary  ext4         lba
4. Run anaconda, and use all default options (guided partitioning, no reclaim dialog, just install into the free space).
5. Anaconda freezes during the first step - creating its first partition.

It seems this bug occurs every time (and only if) there is some partition *after* the partitions being created.

Comment 18 Kamil Páral 2014-12-03 13:35:23 UTC
This is also broken in RC1 (anaconda-21.48.18-1.fc21.x86_64), but everything works in TC4 (anaconda-21.48.16-1.fc21.x86_64).

Comment 19 Kamil Páral 2014-12-03 13:50:21 UTC
According to Vratislav, this is caused by the fix for bug 1166598 - the side effect is that anaconda is trying to change partition numbers even for existing partitions, which doesn't work.

Comment 20 Matthew Miller 2014-12-03 14:34:39 UTC
Vratislav, what do you think we should do here?

Comment 21 Kamil Páral 2014-12-03 15:24:20 UTC
(In reply to Kamil Páral from comment #19)
> According to Vratislav, this is caused by the fix for bug 1166598 - the side
> effect is that anaconda is trying to change partition numbers even for
> existing partitions, which doesn't work.

Correction, I can't hit this with the single disk use case in F20, but it can be hit using multiple disks use case in F20.

Comment 22 Kamil Páral 2014-12-03 16:54:55 UTC
Please ignore comment 21, wrong bug.

Comment 23 Mike Ruckman 2014-12-03 17:57:15 UTC
Discussed in 2014-12-03 blocker review meeting. Accepted as a blocker: This bug is a clear violation of the Windows dual boot criterion and can lead to data loss.

Comment 24 Fedora Update System 2014-12-03 20:45:22 UTC
anaconda-21.48.21-1.fc21, python-blivet-0.61.13-1.fc21 has been submitted as an update for Fedora 21.
https://admin.fedoraproject.org/updates/FEDORA-2014-15910/anaconda-21.48.21-1.fc21,python-blivet-0.61.13-1.fc21

Comment 25 Adam Williamson 2014-12-04 02:54:11 UTC
*** Bug 1169541 has been marked as a duplicate of this bug. ***

Comment 26 Kamil Páral 2014-12-04 12:40:03 UTC
This is fixed in RC5.

Comment 27 Fedora Update System 2014-12-05 03:26:48 UTC
anaconda-21.48.21-1.fc21, python-blivet-0.61.13-1.fc21 has been pushed to the Fedora 21 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.