New: [rhinstaller/blivet/pulls/68 master] Use /sys to obtain sizes of existing devices

dwlehman installerbot-noreply at redhat.com
Thu Apr 2 21:08:11 UTC 2015


parted.Device is quite heavy for just tracking device size. Due to its intended purpose being quite different from how blivet uses it, it becomes problematic in certain situations related to uevents, udev rules, and things like md arrays. Specifically, deleting a parted.Device involves closing a read/write file descriptor, which generates a "change" uevent, which triggers all sorts of udev rules. If the device whose parted.Device you just deleted happened to be a member of an md array, the result would be that the array would get activated. One way this can happen is by simply calling Blivet.reset on a system with an inactive md array. Obviously, this is unacceptable on the basis that storage libraries (or modules) must not activate system devices without having been instructed to do so.

This business of closing rw fds gets even less convenient when blivet begins listening for and reacting to uevents, so this is a prerequisite for that.
-- 
To view this pull request on github, visit https://github.com/rhinstaller/blivet/pull/68


More information about the anaconda-patches mailing list