[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
Re: [PATCH] Create setup and teardown functs for dmraid devs.
- From: David Lehman <dlehman redhat com>
- To: Discussion of Development and Customization of the Red Hat Linux Installer <anaconda-devel-list redhat com>
- Subject: Re: [PATCH] Create setup and teardown functs for dmraid devs.
- Date: Thu, 02 Apr 2009 10:20:40 -0500
On Thu, 2009-04-02 at 17:11 +0200, Joel Granados Moreno wrote:
> * storage/devices.py (DMRaidArrayDevice): Erase the activate and
> deactivate functions for the DMRaidArrayDevice. They are no really
> being used.
> * storage/devices.py (DMRaidArrayDevice): Create setup and teardown
> functions for the class.
> * storage/devices.py (Device): Add the pyblock attribute to the shallow
> copy list.
Looks good to me as long as there is no chance that the members of a
dmraid could be devices that we need to deactivate if given the
recursive argument.
> ---
> storage/devices.py | 32 +++++++++++++++++++++++++-------
> 1 files changed, 25 insertions(+), 7 deletions(-)
>
> diff --git a/storage/devices.py b/storage/devices.py
> index 32e4c23..da9aacc 100644
> --- a/storage/devices.py
> +++ b/storage/devices.py
> @@ -201,7 +201,8 @@ class Device(object):
> new = self.__class__.__new__(self.__class__)
> memo[id(self)] = new
> shallow_copy_attrs = ('partedDisk', 'partedDevice',
> - '_partedPartition', '_origPartedDisk')
> + '_partedPartition', '_origPartedDisk',
> + '_raidSet')
> for (attr, value) in self.__dict__.items():
> if attr in shallow_copy_attrs:
> setattr(new, attr, copy.copy(value))
> @@ -2403,12 +2404,6 @@ class DMRaidArrayDevice(DiskDevice):
> """ Return a list of this array's member device instances. """
> return self.parents
>
> - def activate(self, mknod=True):
> - self._raidSet.activate(mknod=mknod)
> -
> - def deactivate(self):
> - self._raidSet.deactivate()
> -
> def updateSysfsPath(self):
> """ Update this device's sysfs path. """
> log_method_call(self, self.name, status=self.status)
> @@ -2422,6 +2417,29 @@ class DMRaidArrayDevice(DiskDevice):
> else:
> self.sysfsPath = ''
>
> + def teardown(self, recursive=None):
> + """ Close, or tear down, a device. """
> + log_method_call(self, self.name, status=self.status)
> + if not self.exists:
> + raise DeviceError("device has not been created")
> +
> + if self.format.exists:
> + self.format.teardown()
> +
> + # This call already checks if the set is not active.
> + self._raidSet.deactivate()
> +
> + def setup(self, intf=None):
> + """ Open, or set up, a device. """
> + log_method_call(self, self.name, status=self.status)
> + if not self.exists:
> + raise DeviceError("device has not been created")
> +
> + # This call already checks if the set is active.
> + self._raidSet.activate(mknod=True)
> +
> + udev_settle()
> +
>
> class MultipathDevice(DMDevice):
> """ A multipath device """
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]