could it be that the bug is rather fixed because you increase the number
of characters cut checks for the domain name?
You mix in your patch some complex logic to determine stuff with the
minor change of setting these characters up to 40.
It is a known, but still unfixed bug in Xen upstream that they only cut
the first 14 characters, and if your domain has a name like
server-nameserver-test, you're out of luck.
IMHO a better fix is described in my Xen bugreport for this:
http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=859
basically, the parseln() function should look like:
parseln()
{
#name=`echo "$1" | cut -c0-17`
name=`echo "$1" | cut -d " " -f 1`
name=${name%% *}
#rest=`echo "$1" | cut -c18- `
rest=`echo "$1" | cut -d " " -f 2-`
read id mem cpu vcpu state tm < <(echo "$rest")
}
As Xen upstream is too slow in incorporating this fix, it might be a
good idea to put it into the debian package (maybe after trying to nag
the upstream to get this in soon, which I will do no).
Henning