<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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/"
		>
<channel>
	<title>Comments on: Using a Marvell LAN card with Vmware ESXi 3.5</title>
	<atom:link href="http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/</link>
	<description>the difference that is no difference makes no difference</description>
	<lastBuildDate>Thu, 08 Jul 2010 14:50:34 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.4</generator>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
		<item>
		<title>By: cheelee</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-171</link>
		<dc:creator>cheelee</dc:creator>
		<pubDate>Thu, 08 Jul 2010 14:50:34 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-171</guid>
		<description>Hi, I am building a driver for the Realtek 8139 chipset using the 8139too.c source from 2.4.18 kernel.  I just found out that you need to include 2 new lines into the driver for it to be recognized by the ESX kernel. You need to include:

SET_MODULE_OWNER(dev);
SET_NETDEV_DEV(dev, &amp;pdev-&gt;dev);

after the &quot;alloc_etherdev()&quot; function.  Otherwise, the esxcfg-nics command will not see the NIC card and it cannot be configured.</description>
		<content:encoded><![CDATA[<p>Hi, I am building a driver for the Realtek 8139 chipset using the 8139too.c source from 2.4.18 kernel.  I just found out that you need to include 2 new lines into the driver for it to be recognized by the ESX kernel. You need to include:</p>
<p>SET_MODULE_OWNER(dev);<br />
SET_NETDEV_DEV(dev, &amp;pdev-&gt;dev);</p>
<p>after the &#8220;alloc_etherdev()&#8221; function.  Otherwise, the esxcfg-nics command will not see the NIC card and it cannot be configured.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kernel</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-165</link>
		<dc:creator>kernel</dc:creator>
		<pubDate>Tue, 29 Jun 2010 05:05:42 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-165</guid>
		<description>cheelee, thanks for the comment. I never tried doing that vmkload_mod  for the drivers I&#039;ve compiled where I don&#039;t have the physical card/chipset. I always assumed that it would never say anything useful. I might have to have another look at that skge driver to try that out. For that skge driver, we seem to get it working for ESXi 4, but not for ESXi 3.5. 

Thanks for the tips about the PCI id. 

Re the large object files, the build scripts I use tend to have plenty of debug turned on by default. Try editing your build...sh script and editing the CFLAGS line so that it does not include the &#039;-g3&#039; bit. Then recompile. For the ESXi 4 build scripts, there are two variables at the top of the scripts; DEBUG and DASHG. Just comment those line out.

As for that skge-for-esxi3.5u4-0.04.tar.gz, I assumed there might me some unresolved stuff, but I didn&#039;t get any feedback about it. Like I said I might have another go now using the  vmkload_mod, as per your suggestion.</description>
		<content:encoded><![CDATA[<p>cheelee, thanks for the comment. I never tried doing that vmkload_mod  for the drivers I&#8217;ve compiled where I don&#8217;t have the physical card/chipset. I always assumed that it would never say anything useful. I might have to have another look at that skge driver to try that out. For that skge driver, we seem to get it working for ESXi 4, but not for ESXi 3.5. </p>
<p>Thanks for the tips about the PCI id. </p>
<p>Re the large object files, the build scripts I use tend to have plenty of debug turned on by default. Try editing your build&#8230;sh script and editing the CFLAGS line so that it does not include the &#8216;-g3&#8242; bit. Then recompile. For the ESXi 4 build scripts, there are two variables at the top of the scripts; DEBUG and DASHG. Just comment those line out.</p>
<p>As for that skge-for-esxi3.5u4-0.04.tar.gz, I assumed there might me some unresolved stuff, but I didn&#8217;t get any feedback about it. Like I said I might have another go now using the  vmkload_mod, as per your suggestion.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: cheelee</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-164</link>
		<dc:creator>cheelee</dc:creator>
		<pubDate>Tue, 29 Jun 2010 01:33:44 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-164</guid>
		<description>Thanks for this blog. I had bought a Dlink DGE-528T gbit NIC which was suppose to be a Realtek 8169S card. I thought that it was going to be supported out-of-the-box by the customized oem.tgz file. But it did not work, even after I had included the PCI ID into the simple.map file. I then started pulling source codes from various sites to compile as per your instructions above but faced a lot of challenges esp the skb_ stuff.

One thing I did to make things easier was to dd the installation into a USB stick. Then I kept changing the oem.tgz file and just boot it on the PC without the card install. I can then use the vmkload_mod command to try and load each module.o file to see if there are unresolved symbols in the message log. So you don&#039;t actually need the card to test for unresolved symbols.

In the end, I check the source in the open-vdriver for the r8169.c file and I found that actually the PCI IDs are ALSO SET in the module source code (in a struct named pci_tbl) and if your card&#039;s id is not in there then it will NEVER detect the card even if you specified it in the simple.map file.

So I made changes to the source, recompiled it and now the DGE-528T is recognized with the driver r8169 and it works.

There is another way to make the change which is to do a binary replace of one of the other pre-defined pci-id in that file to fill in your PCI ID, using hexedit, I think.

Hence, if you have problems in getting your card recognized and you are sure that it has a supported chipset, consider making the PCI ID change in the module file.

BTW, I am also getting pretty large object files and I don&#039;t know how to shrink / reduce / minimize its size.

Also I have a problem fixing the unresolved symbol kmap_skb_ and kunmap_skb_ as per your skge-for-esxi3.5u4-0.04.tar.gz source above. Did you managed to overcome these references ?</description>
		<content:encoded><![CDATA[<p>Thanks for this blog. I had bought a Dlink DGE-528T gbit NIC which was suppose to be a Realtek 8169S card. I thought that it was going to be supported out-of-the-box by the customized oem.tgz file. But it did not work, even after I had included the PCI ID into the simple.map file. I then started pulling source codes from various sites to compile as per your instructions above but faced a lot of challenges esp the skb_ stuff.</p>
<p>One thing I did to make things easier was to dd the installation into a USB stick. Then I kept changing the oem.tgz file and just boot it on the PC without the card install. I can then use the vmkload_mod command to try and load each module.o file to see if there are unresolved symbols in the message log. So you don&#8217;t actually need the card to test for unresolved symbols.</p>
<p>In the end, I check the source in the open-vdriver for the r8169.c file and I found that actually the PCI IDs are ALSO SET in the module source code (in a struct named pci_tbl) and if your card&#8217;s id is not in there then it will NEVER detect the card even if you specified it in the simple.map file.</p>
<p>So I made changes to the source, recompiled it and now the DGE-528T is recognized with the driver r8169 and it works.</p>
<p>There is another way to make the change which is to do a binary replace of one of the other pre-defined pci-id in that file to fill in your PCI ID, using hexedit, I think.</p>
<p>Hence, if you have problems in getting your card recognized and you are sure that it has a supported chipset, consider making the PCI ID change in the module file.</p>
<p>BTW, I am also getting pretty large object files and I don&#8217;t know how to shrink / reduce / minimize its size.</p>
<p>Also I have a problem fixing the unresolved symbol kmap_skb_ and kunmap_skb_ as per your skge-for-esxi3.5u4-0.04.tar.gz source above. Did you managed to overcome these references ?</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kernel</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-115</link>
		<dc:creator>kernel</dc:creator>
		<pubDate>Sat, 27 Mar 2010 05:23:07 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-115</guid>
		<description>OK, try this 0.04 version ; &lt;a href=&quot;/blog/wp-content/skge-for-esxi3.5u4-0.04.tar.gz&quot; rel=&quot;nofollow&quot;&gt;skge-for-esxi3.5u4-0.04.tar.gz&lt;/a&gt;. Note, for Sheepless, that copy_skb_header thing highlights just how different the sk_buff struct is now. I just commented out a heap of stuff and shoved it into skge.c. Again, probably won&#039;t work, but worth a try.</description>
		<content:encoded><![CDATA[<p>OK, try this 0.04 version ; <a href="/blog/wp-content/skge-for-esxi3.5u4-0.04.tar.gz" rel="nofollow">skge-for-esxi3.5u4-0.04.tar.gz</a>. Note, for Sheepless, that copy_skb_header thing highlights just how different the sk_buff struct is now. I just commented out a heap of stuff and shoved it into skge.c. Again, probably won&#8217;t work, but worth a try.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kernel</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-114</link>
		<dc:creator>kernel</dc:creator>
		<pubDate>Sat, 27 Mar 2010 05:11:53 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-114</guid>
		<description>Oops, Am pretty sure that 0.03 version won&#039;t work. Will probably get an unresolved symbol about copy_skb_header.</description>
		<content:encoded><![CDATA[<p>Oops, Am pretty sure that 0.03 version won&#8217;t work. Will probably get an unresolved symbol about copy_skb_header.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kernel</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-113</link>
		<dc:creator>kernel</dc:creator>
		<pubDate>Sat, 27 Mar 2010 05:08:04 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-113</guid>
		<description>daymz, if you feel like trying the latest incantation of the skge driver (see comment above), please do. I suspect it won&#039;t work, but see how it goes.</description>
		<content:encoded><![CDATA[<p>daymz, if you feel like trying the latest incantation of the skge driver (see comment above), please do. I suspect it won&#8217;t work, but see how it goes.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kernel</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-112</link>
		<dc:creator>kernel</dc:creator>
		<pubDate>Sat, 27 Mar 2010 05:06:20 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-112</guid>
		<description>Sheepless, I see what you mean. I had a go at fixing those unresolved symbols, and I can get it to compile, but I suspect my compile may have the same panics as yours. Please grab the &lt;a href=&quot;/blog/wp-content/skge-for-esxi3.5u4-0.03.tar.gz&quot; rel=&quot;nofollow&quot;&gt;skge-for-esxi3.5u4-0.03.tar.gz&lt;/a&gt; tar file and see if works any better. All the changes I&#039;ve made are just more routines (out of a 2.4.37 kernel) jammed into the top of the skge.c file.</description>
		<content:encoded><![CDATA[<p>Sheepless, I see what you mean. I had a go at fixing those unresolved symbols, and I can get it to compile, but I suspect my compile may have the same panics as yours. Please grab the <a href="/blog/wp-content/skge-for-esxi3.5u4-0.03.tar.gz" rel="nofollow">skge-for-esxi3.5u4-0.03.tar.gz</a> tar file and see if works any better. All the changes I&#8217;ve made are just more routines (out of a 2.4.37 kernel) jammed into the top of the skge.c file.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: daymz</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-111</link>
		<dc:creator>daymz</dc:creator>
		<pubDate>Sat, 27 Mar 2010 01:33:51 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-111</guid>
		<description>Been following the ESXi 4.0 article and am definitely very interested in this, as my target ESX server can only do 32-bit.  I have a DGE-530T NIC so I can definitely help in testing the driver.  I am proficient in C and Ethernet as well if needed (but not in Linux drivers).</description>
		<content:encoded><![CDATA[<p>Been following the ESXi 4.0 article and am definitely very interested in this, as my target ESX server can only do 32-bit.  I have a DGE-530T NIC so I can definitely help in testing the driver.  I am proficient in C and Ethernet as well if needed (but not in Linux drivers).</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: kernel</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-107</link>
		<dc:creator>kernel</dc:creator>
		<pubDate>Mon, 22 Mar 2010 20:41:18 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-107</guid>
		<description>Thanks for trying. Thanks for listing the unresolved symbols.  I&#039;ll have a closer look when I get some time.</description>
		<content:encoded><![CDATA[<p>Thanks for trying. Thanks for listing the unresolved symbols.  I&#8217;ll have a closer look when I get some time.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sheepless</title>
		<link>http://www.kernelcrash.com/blog/using-a-marvell-lan-card-with-vmware-esxi-35/2009/08/14/comment-page-1/#comment-106</link>
		<dc:creator>Sheepless</dc:creator>
		<pubDate>Mon, 22 Mar 2010 19:48:11 +0000</pubDate>
		<guid isPermaLink="false">http://www.kernelcrash.com/blog/?p=345#comment-106</guid>
		<description>Having an old PC with an 88E8001, I tried your skge module with ESXi 3.5, but you still have some unresolved symbols:

Warning: unresolved symbol skb_headroom
Warning: unresolved symbol skb_padto
Warning: unresolved symbol skb_copy_expand
Warning: unresolved symbol skb_tailroom
Warning: unresolved symbol jiffies_to_msecs
Warning: unresolved symbol msecs_to_jiffies

The time conversion ones are easy to fix: you rolled the functions into skge.c with changed names, but forgot to change some references to the original names.  Unfortunately, the other problems are tougher.  I started merging the relevant sk_buff-related stuff into the driver, but soon ran up against compilation problems, and a comment in VMware-esx-public-source/include/linux_skbuff.h shows why: &quot;This is the small subset of sk_buff stuff we actually use in the vmkernel linux emulation layer&quot;.  Basically, they&#039;ve made changes to struct sk_buff, so changes are needed to the driver code.  I&#039;ve had a crack at this, but it&#039;s still panicking, and I&#039;ve got a feeling there are deeper problems.</description>
		<content:encoded><![CDATA[<p>Having an old PC with an 88E8001, I tried your skge module with ESXi 3.5, but you still have some unresolved symbols:</p>
<p>Warning: unresolved symbol skb_headroom<br />
Warning: unresolved symbol skb_padto<br />
Warning: unresolved symbol skb_copy_expand<br />
Warning: unresolved symbol skb_tailroom<br />
Warning: unresolved symbol jiffies_to_msecs<br />
Warning: unresolved symbol msecs_to_jiffies</p>
<p>The time conversion ones are easy to fix: you rolled the functions into skge.c with changed names, but forgot to change some references to the original names.  Unfortunately, the other problems are tougher.  I started merging the relevant sk_buff-related stuff into the driver, but soon ran up against compilation problems, and a comment in VMware-esx-public-source/include/linux_skbuff.h shows why: &#8220;This is the small subset of sk_buff stuff we actually use in the vmkernel linux emulation layer&#8221;.  Basically, they&#8217;ve made changes to struct sk_buff, so changes are needed to the driver code.  I&#8217;ve had a crack at this, but it&#8217;s still panicking, and I&#8217;ve got a feeling there are deeper problems.</p>
]]></content:encoded>
	</item>
</channel>
</rss>
