<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>wdtz -- Will Dietz</title>
	<atom:link href="http://wdtz.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://wdtz.org</link>
	<description>Where there&#039;s a Will there&#039;s a way</description>
	<lastBuildDate>Wed, 13 May 2009 19:22:07 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>VMware and slackware 12.2/Slamd 12.2/linux</title>
		<link>http://wdtz.org/vmware-and-slackwarelinux/</link>
		<comments>http://wdtz.org/vmware-and-slackwarelinux/#comments</comments>
		<pubDate>Fri, 08 May 2009 03:40:54 +0000</pubDate>
		<dc:creator>Will Dietz</dc:creator>
				<category><![CDATA[General]]></category>
		<category><![CDATA[compile]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[slackware]]></category>
		<category><![CDATA[vmware]]></category>

		<guid isPermaLink="false">http://wdtz.org/?p=31</guid>
		<description><![CDATA[Having issues with VMware kernel modules on your linux (particularly slackware?) system?  Read on&#8230;
This isn&#8217;t the first time I&#8217;ve had difficulty compiling vmware modules on my slackware system, and it would appear the issues I have are recurring, and aren&#8217;t limited to myself, which is why I&#8217;m writing up my experiences with them&#8230;
NOTE: After [...]]]></description>
			<content:encoded><![CDATA[<p>Having issues with VMware kernel modules on your linux (particularly slackware?) system?  Read on&#8230;</p>
<p>This isn&#8217;t the first time I&#8217;ve had difficulty compiling vmware modules on my slackware system, and it would appear the issues I have are recurring, and aren&#8217;t limited to myself, which is why I&#8217;m writing up my experiences with them&#8230;</p>
<p>NOTE: After installing vmware, you can find tarballs for the various components in /usr/lib/vmware/modules/source.  The ones we care about are vmblock, vmci, vmnet, vmmon and vsock (all except vmppuser), as of 6.5.2.</p>
<p>Build issues fall into three categories:</p>
<ul>
<li><strong>Lack of support for a kernel that&#8217;s too new.</strong></li>
<p>This is understandable, since there are fairly frequent releases of the kernel, and when running at the level vmware is, maintaining compatibility with the latest and greatest can be difficult.  I get that.  Due to the work of the vmware-any-any patches and members of the vmware forums, these types of issues can be resolved fairly quickly, but the first place I start usually is googling for a patch for my version of vmware/my kernel.  For example, I just made use of the patch and script available here: <a href="http://communities.vmware.com/thread/203231">VMware 6.5.2 patch for kernel 2.6.29</a>.</p>
<li><strong>autoconf.h not on your system</strong></li>
<p>The build expects the file /usr/include/linux/autoconf.h to exist.  This isn&#8217;t necessarily a bad thing&#8211;and I understand it has to make some assumptions; I have no data to assert this is a bad assumption.  Regardless, this file didn&#8217;t exist on my system, which caused problems.  You should be able to find this file in/usr/src/linux-`uname -r`/include/linux/autoconf.h .  The simple solution is to either copy or symlink the file over into your /usr/include/linux directory.  Note that nowhere will the VMware build process give you an error complaining that autoconf.h was expected yet doesn&#8217;t exist (so check that it does yourself!), however all kinds of build issues occur if you don&#8217;t have this file.  I welcome someone with general knowledge of linux to give me some insight here, as I see no target from within the kernel that populates /usr/src/linux with autoconf.h &#8212; make headers_install doesn&#8217;t do it (you&#8217;ll find the Kbuild file within include/linux to have no mention of autoconf.h&#8230;.), and am at a loss as to how this file is supposed to get there in the first place.  For now, copying/symlinking does the trick though.  To be clear, the command to symlink it is as follows:<br />
<code>ln -s /usr/src/linux-`uname -r`/include/linux/autoconf.h /usr/include/linux/</code><br />
as root.</p>
<li><strong>Makefile issues</strong></li>
<p>The issue here is the use of the vm_check_build macro.  This macro is used in the Makefiles to determine what flags/defines are appropriate&#8230; the problem here is two-fold: a)because the route the errors produced here to /dev/null you can have errors that you aren&#8217;t even aware of, for example the autoconf.h issue mentioned above.  Not that I&#8217;m suggesting the dump it all to stdout, since the build is a probe and so errors aren&#8217;t necessarily problematic.  Anyway, this can mask errors that are causing more problems for you.<br />
If you take a look at the Makefile.kernel you&#8217;ll find it references &#8216;vm_check_build&#8217; a number of times, however&#8211; and here is where I scratch my head and wonder how this works on anyone&#8217;s system&#8211; that macro doesn&#8217;t get called when processing Makefile.kernel.  You&#8217;ll notice that within &#8216;Makefile&#8217; it defines vm_check_build, and later includes Makefile.kernel.  Despite this, Makefile.kernel does /not/ see the vm_check_build, and accordingly fails every check&#8211;which probably isn&#8217;t what is the correct configuration for your system.  The solution is to pop open Makefile.normal, and grab the two line definition of vm_check_build and put it near the top of Makefile.kernel:<br />
<code><br />
vm_check_build = $(shell if $(CC) $(CC_OPTS) $(INCLUDE) -Werror -S -o /dev/null -xc $(1) \<br />
&gt; /dev/null 2&gt;&amp;1; then echo "$(2)"; else echo "$(3)"; fi)<br />
</code><br />
Note that to apply this change, you&#8217;ll have to extract each of the tarballs, make this change, and repackage them.  A pain, yes.</ul>
<p>In my experience, applying what&#8217;s need of the above three points gets me working vmware modules.</p>
<p>Due to copyright/legal issues I&#8217;m not posting my modified tars (I have no idea what the rules are about those, so playing it safe), but I&#8217;d be happy to help you build them if you&#8217;re having issues.</p>
<p>Here&#8217;s hoping this helps you out, let me know if it does or if your experience differs from mine.</p>
<hr />
Just to help people find this page when googling their build errors, the various one&#8217;s I got that were resolved with the above information are:</p>
<p><strong><code>error: 'struct task_struct' has no member named</code></strong> followed by a number of fields.  This seems to be a kernel support issue and is fixed by getting a proper patch (like the 2.6.29 one I mention above)</p>
<p><strong><code>error: too many arguments to function 'smp_call_function'</code></strong> This one is fixed by fixing the definition of vm_check_build macro in Makefile.kernel, in combination with ensuring autoconf.h exists properly.<br />
<strong><code>error: conflicting types for 'poll_initwait'</code></strong> This one is fixed in the same manner as the smp_call_function one directly above.</p>
]]></content:encoded>
			<wfw:commentRss>http://wdtz.org/vmware-and-slackwarelinux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>wdtz live!</title>
		<link>http://wdtz.org/wdtz-live/</link>
		<comments>http://wdtz.org/wdtz-live/#comments</comments>
		<pubDate>Thu, 07 May 2009 22:18:02 +0000</pubDate>
		<dc:creator>Will Dietz</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://wdtz.org/?p=13</guid>
		<description><![CDATA[This site is live, all dns stuff working wonderfully.  My thanks to Ian (of ndevix.com, who hosts this site!), zoneedit.com (dns), misk,com (registrar), and google&#8217;s hosted services (mail, etc) for making this all happen for so little $$  .
Now back to studying&#8230;
]]></description>
			<content:encoded><![CDATA[<p>This site is live, all dns stuff working wonderfully.  My thanks to Ian (of ndevix.com, who hosts this site!), zoneedit.com (dns), misk,com (registrar), and google&#8217;s hosted services (mail, etc) for making this all happen for so little $$ <img src='http://wdtz.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<p>Now back to studying&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://wdtz.org/wdtz-live/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New server, migrating!</title>
		<link>http://wdtz.org/new-server-migrating/</link>
		<comments>http://wdtz.org/new-server-migrating/#comments</comments>
		<pubDate>Thu, 07 May 2009 06:44:57 +0000</pubDate>
		<dc:creator>Will Dietz</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://173.9.220.186/blog/?p=6</guid>
		<description><![CDATA[Many of you know I&#8217;ve had a new server for some time now&#8230;. I&#8217;m finally getting around to migrating content from old dtzTech to this one&#8230; which includes this new blog!
Should be switching the dns over in the next week or two&#8230;
]]></description>
			<content:encoded><![CDATA[<p>Many of you know I&#8217;ve had a new server for some time now&#8230;. I&#8217;m finally getting around to migrating content from old dtzTech to this one&#8230; which includes this new blog!</p>
<p>Should be switching the dns over in the next week or two&#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://wdtz.org/new-server-migrating/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
