<div dir="ltr"><div><br></div>python-dmidecode-3.10.13-11.<wbr>el7.x86_64<br><div><br></div><div>I cut and pasted your python code into a file and ran python file....  no workie....<br></div><div><br></div><div>I did find the attached dmidump.py on github.  It segfaults after printing bios on line 64.</div><div><div><br></div></div><div>Also attached is a dump from the AMIDEDOS utility.</div><div><br></div><div>Happy to do whatever is required to fix this issue..  I have a couple of months of nights and weekends invested so far...  what&#39;s a couple more.  :)</div><div><br></div><div><br></div><div><br></div><div><br></div><div><br></div></div><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Oct 13, 2016 at 5:01 PM, Dan Kenigsberg <span dir="ltr">&lt;<a href="mailto:danken@redhat.com" target="_blank">danken@redhat.com</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Thu, Oct 13, 2016 at 11:52:17AM +1100, David Pinkerton wrote:<br>
&gt; Nir,<br>
&gt;<br>
&gt; Looks like its crashing on the dmidecode system call.<br>
&gt;<br>
&gt; I&#39;ve attached the output from gbd as well as a dmidecode text dump,<br>
&gt; dmidecode binary dump and each keywords run individually.<br>
&gt;<br>
&gt; &gt;From the keywords it look like my dmi info is corrupted.  I have download a<br>
&gt; AMI dmi editor but this only allows access to limited fields.  Do you know<br>
&gt; another tools to rewrite the dmi info?<br>
<br>
I don&#39;t. But whatever is inside your dmi, dmidecode must not crash.<br>
Which version of python-dmidecode do you have installed?<br>
Would you open a bug against it?<br>
<br>
I believe that its maintainers would appriace a simple reproducer, that<br>
does not involve ovirt or Vdsm. See if you can simplify the code in<br>
<br>
def __leafDict(d):<br>
    ret = {}<br>
    for k, v in d.iteritems():<br>
        if isinstance(v, dict):<br>
            ret.update(__leafDict(v))<br>
        else:<br>
            ret[k] = v<br>
    return ret<br>
<br>
<br>
def getAllDmidecodeInfo():<br>
    import dmidecode<br>
<br>
    myLeafDict = {}<br>
    for k in (&#39;system&#39;, &#39;bios&#39;, &#39;cache&#39;, &#39;processor&#39;, &#39;chassis&#39;, &#39;memory&#39;):<br>
        myLeafDict[k] = __leafDict(getattr(dmidecode, k)())<br>
    return myLeafDict<br>
</blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><pre cols="72">David Pinkerton
Consultant
Red Hat Asia Pacific Pty. Ltd.
Level 11, Canberra House
40 Marcus Clarke Street
Canberra 2600 ACT

Mobile: +61-488-904-232
Email: <a href="mailto:david.pinkerton@redhat.com" target="_blank">david.pinkerton@redhat.com</a>
Web: <a href="http://apac.redhat.com/" target="_blank">http://apac.redhat.com/</a>
<a href="http://apac.redhat.com/" target="_blank"></a></pre>
</div></div></div></div></div></div></div></div></div></div>
</div>