Bug 962010

Summary: anaconda crashes after begin install when LVM names contains Unicode characters (custom partitioning)
Product: [Fedora] Fedora Reporter: Reartes Guillermo <rtguille>
Component: anacondaAssignee: David Shea <dshea>
Status: CLOSED RAWHIDE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: high Docs Contact:
Priority: unspecified    
Version: 19CC: anaconda-maint-list, dshea, g.kaviyarasu, jonathan, mkolman, moceap, sbueno, vanmeeuwen+fedora
Target Milestone: ---   
Target Release: ---   
Hardware: x86_64   
OS: Linux   
Whiteboard:
Fixed In Version: anaconda-21.38-1 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-06-16 13:38:49 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Attachments:
Description Flags
custom partitioning
none
anaconda.log
none
program.log
none
storage.log
none
anaconda-tb-xxx file
none
screen-shot of how i put certain unicode characters none

Description Reartes Guillermo 2013-05-10 23:17:25 UTC
Created attachment 746422 [details]
custom partitioning

Description of problem:

It is possible to setup mount points with Unicode characters in anaconda custom partitioning.
Standard partitions mount points, while looking strange, works.
LVM mount points do not, see below.

Version-Release number of selected component (if applicable):
F19b TC4 (19.25-1)

How reproducible:
always.

Steps to Reproduce:

0. Reach the Main Hub, set English because Portuguese is still selected by default. The correct one would be Spanish.
1. I selected 'Minimal' Base Environment
2. Enter Storage: Installation Destination and do custom partitioning (1 disk guest) using 'lvm' partition scheme.
3. Setup partitions as the sreenshot shows.
   Both "DATA" /boot (standard partition) and / (lvm lv) have an Unicode trailing character.
7. Return to the Main Hub and and anaconda will crash.

Actual results:
anaconda crashes after starting installing. (thus, it has touched the disks).

Expected results:
refusal to accept a mount point with Unicode character, or some other
alternative that prevent this issue.

Additional info:

anaconda 19.25-1 exception report
Traceback (most recent call first):
  File "/usr/lib/python2.7/site-packages/blivet/devices.py", line 789, in create
    raise DeviceCreateError(str(e), self.name)
  File "/usr/lib/python2.7/site-packages/blivet/deviceaction.py", line 272, in execute
    self.device.create()
  File "/usr/lib/python2.7/site-packages/blivet/devicetree.py", line 237, in processActions
    action.execute()
  File "/usr/lib/python2.7/site-packages/blivet/__init__.py", line 303, in doIt
    self.devicetree.processActions()
  File "/usr/lib/python2.7/site-packages/blivet/__init__.py", line 162, in turnOnFilesystems
    storage.doIt()
  File "/usr/lib64/python2.7/site-packages/pyanaconda/install.py", line 126, in doInstall
    turnOnFilesystems(storage, mountOnly=flags.flags.dirInstall)
  File "/usr/lib64/python2.7/threading.py", line 766, in run
    self.__target(*self.__args, **self.__kwargs)
  File "/usr/lib64/python2.7/site-packages/pyanaconda/threads.py", line 168, in run
    threading.Thread.run(self, *args, **kwargs)
DeviceCreateError: ('lvcreate failed for fedora_fnext-tst3/: running lvm lvcreate -L 450m -n  --config  devices { filter=["r|/loop3$|","r|/loop4$|","r|/loop5$|","r|/loop6$|","r|/loop7$|"] }  fedora_fnext-tst3 failed', 'fedora_fnext-tst3-')

Local variables in innermost frame:
self: non-existent 450MB lvmlv fedora_fnext-tst3- (20) with non-existent ext4 filesystem mounted at /<U+200E>
e: lvcreate failed for fedora_fnext-tst3/: running lvm lvcreate -L 450m -n  --config  devices { filter=["r|/loop3$|","r|/loop4$|","r|/loop5$|","r|/loop6$|","r|/loop7$|"] }  fedora_fnext-tst3 failed

Comment 1 Reartes Guillermo 2013-05-10 23:17:50 UTC
Created attachment 746424 [details]
anaconda.log

Comment 2 Reartes Guillermo 2013-05-10 23:18:15 UTC
Created attachment 746425 [details]
program.log

Comment 3 Reartes Guillermo 2013-05-10 23:18:35 UTC
Created attachment 746426 [details]
storage.log

Comment 4 Reartes Guillermo 2013-05-10 23:19:10 UTC
Created attachment 746427 [details]
anaconda-tb-xxx file

Comment 5 Reartes Guillermo 2013-05-10 23:23:16 UTC
Created attachment 746429 [details]
screen-shot of how i put certain unicode characters

Comment 6 Reartes Guillermo 2013-05-10 23:25:28 UTC
ABRT pointed to bug 960271, see comment #23,24,25,27

Comment 7 David Shea 2014-05-12 21:37:41 UTC
This only applies to LVM, since LVM adds a bunch of restrictions to device names that don't apply to other types of mount point.

Comment 8 David Shea 2014-05-21 13:42:41 UTC
Pushed a change to anaconda to validate the VG names and a change to python-blivet to validate the LV names.

Comment 9 Martin Kolman 2014-06-16 10:21:43 UTC
*** Bug 1072412 has been marked as a duplicate of this bug. ***