diff -Naur anaconda-9.2/fsset.py anaconda-9.2-patched/fsset.py --- anaconda-9.2/fsset.py 2003-11-04 19:05:05.000000000 +0530 +++ anaconda-9.2-patched/fsset.py 2003-11-04 19:04:11.000000000 +0530 @@ -1337,6 +1337,10 @@ try: label = isys.readExt2Label(dev) except: + try: + label = readXFSLabel(dev) + except: + continue continue if label: entry.setLabel(label) @@ -1646,6 +1650,10 @@ try: return isys.readExt2Label(self.setupDevice(), makeDevNode = 0) except: + try: + return readXFSLabel(self.setupDevice()) + except: + return "" return "" class DevDevice(Device): @@ -2214,6 +2222,22 @@ return 0 +def readXFSLabel(device): + fd = getDevFD(device) + if fd == -1: + return "" + + buf = os.read(fd, 128) + os.close(fd) + + if len(buf) != 128: + xfslabel = "" + + if buf[0:4] == "XFSB": + xfslabel = string.rstrip(buf[108:120]) + + return xfslabel + # this will return a list of types of filesystems which device # looks like it could be to try mounting as def getFStoTry(device):