From ea2f6034e6a9eb1b222f96794335794a40463918 Mon Sep 17 00:00:00 2001 From: jbjohnso Date: Sat, 3 Mar 2012 00:14:09 +0000 Subject: [PATCH] Cope with kernel bug around correct UUID handling by using dmidecode instead git-svn-id: https://svn.code.sf.net/p/xcat/code/xcat-core/trunk@11732 8638fb3e-16cb-4fca-ae20-7b5d299a9bcd --- xCAT-nbroot2/dodiscovery | 2 +- xCAT-nbroot2/doxcat | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/xCAT-nbroot2/dodiscovery b/xCAT-nbroot2/dodiscovery index dc8a5b8da..13264df7f 100755 --- a/xCAT-nbroot2/dodiscovery +++ b/xCAT-nbroot2/dodiscovery @@ -71,7 +71,7 @@ elif [ -r /proc/device-tree/model ]; then #POWER fi CPUCOUNT=`cat /proc/cpuinfo |grep "model name"|wc -l` MEMORY=`cat /proc/meminfo |grep MemTotal|awk '{print $2}'` -UUID=`cat /sys/devices/virtual/dmi/id/product_uuid` +UUID=`dmidecode -s system-uuid` grep "model name" /proc/cpuinfo | while read line; do #to avoid pulling in tail, we do a goofy thing echo $line > /tmp/cpumod done diff --git a/xCAT-nbroot2/doxcat b/xCAT-nbroot2/doxcat index 618ba3e97..8a045f7e3 100755 --- a/xCAT-nbroot2/doxcat +++ b/xCAT-nbroot2/doxcat @@ -20,7 +20,8 @@ fi if [ -r /sys/devices/virtual/dmi/id/product_uuid ]; then duid='default-duid "\\000\\004'; - for i in `sed -e s/-//g -e 's/\(..\)/\1 /g' /sys/devices/virtual/dmi/id/product_uuid`; do + #product_uuid in sysfs fails to cope with endianness of SMBIOS 2.6 + for i in `dmidecode -s system-uuid|sed -e s/-//g -e 's/\(..\)/\1 /g'`; do octnum="\\"`printf "\\%03o" 0x$i` duid=$duid$octnum done