summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--isys/isys.py26
2 files changed, 18 insertions, 11 deletions
diff --git a/ChangeLog b/ChangeLog
index 03040f2b7..2d434e1a1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -10,6 +10,9 @@
between the device description and the stripe for tall languages
(#217294).
+ * isys/isys.py: Use /dev/ devices nodes for probing RAID superblocks,
+ instead of recycling the same node in /tmp (#172648, #208970, #215231).
+
2007-03-27 Jeremy Katz <katzj@redhat.com>
* liveinst/liveinst.sh: Support using hal locking by running
diff --git a/isys/isys.py b/isys/isys.py
index 1aeea4059..551586f15 100644
--- a/isys/isys.py
+++ b/isys/isys.py
@@ -60,9 +60,11 @@ def raidstop(mdDevice):
return
del raidCount[mdDevice]
- makeDevInode(mdDevice, "/tmp/md")
- fd = os.open("/tmp/md", os.O_RDONLY)
- os.remove("/tmp/md")
+ devInode = "/dev/%s" % mdDevice
+
+ makeDevInode(mdDevice, devInode)
+ fd = os.open(devInode, os.O_RDONLY)
+
try:
_isys.raidstop(fd)
except:
@@ -76,16 +78,18 @@ def raidstart(mdDevice, aMember):
raidCount[mdDevice] = 1
- makeDevInode(mdDevice, "/tmp/md")
- makeDevInode(aMember, "/tmp/member")
- fd = os.open("/tmp/md", os.O_RDONLY)
- os.remove("/tmp/md")
+ mdInode = "/dev/%s" % mdDevice
+ mbrInode = "/dev/%s" % aMember
+
+ makeDevInode(mdDevice, mdInode)
+ makeDevInode(aMember, mbrInode)
+ fd = os.open(mdInode, os.O_RDONLY)
+
try:
- _isys.raidstart(fd, "/tmp/member")
+ _isys.raidstart(fd, mbrInode)
except:
pass
os.close(fd)
- os.remove("/tmp/member")
def wipeRaidSB(device):
try:
@@ -101,8 +105,8 @@ def wipeRaidSB(device):
return
def raidsb(mdDevice):
- makeDevInode(mdDevice, "/tmp/md")
- return raidsbFromDevice("/tmp/md")
+ makeDevInode(mdDevice, "/dev/%s" % mdDevice)
+ return raidsbFromDevice("/dev/%s" % mdDevice)
def raidsbFromDevice(device):
fd = os.open(device, os.O_RDONLY)