Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LVM manual partitioning segfault #1132

Open
abucodonosor opened this issue Apr 26, 2019 · 2 comments
Open

LVM manual partitioning segfault #1132

abucodonosor opened this issue Apr 26, 2019 · 2 comments

Comments

@abucodonosor
Copy link
Contributor

abucodonosor commented Apr 26, 2019

Describe the bug

LVM manual partitioning segfault.
Testing done in a VirtalBox 64bit VM.

( Kpmcore 3.3.0 , Calamares 3.2.{4,5,6} )

To Reproduce
Steps to reproduce the behavior:

  1. Boot a VM with 2 HDDs
  2. Prepare HDDs like this :
    .. Open an terminal
 for each HDD do:
 fdisk /dev/sdX
 type : n , p, enter , enter , enter , t ,8e , w

 pvcreate /dev/sda1 /dev/sdb1
 vgcreate calatest /dev/sda1 /dev/sdb1
  1. Start calamares
  2. On Partitioning site:
    Click Manual partitioning
    Click Next
    Click Deactivate Volume Group
    Click Back
    Click Erase ( to re-trigger partitions update )
    Click Manual partitioning and Next
    < segfault >

It seems to die from PartitionCoreModule::revertDevice().
At the moment I cannot provide good crash logs but I will if needed.

@adriaandegroot
Copy link
Contributor

I did this on a machine with 3 disks; sda is the installed OS & Calamares dev disk, sdb and sdc are scratch disks. So I created the VG on the scratch disks, 5GB in size.

The crash can be reproduced, both straight from the command-line and when running Calamares in gdb. gdb and valgrind show that it's (simply?) a nullptr being passed to revertDevice.

@adriaandegroot
Copy link
Contributor

Chasing this some more with debuggers and logging .. gets me back in the swamp of models being deleted unpredictably and scoped pointers being copied and the whole memory-management mess that is the partitioning module. At this point I think the right thing is to replace the whole thing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants