I have been trying to compile FreeNAS with XENHVM support recently. FreeNAS works flawlessly in ESXi but it does suffer from wired issues in Xen. I also noticed big performance gap between these 2 platforms. But Xen is light-weight, tho. Dom0 only consumes 1G of men while ESXi 5.5 will reserve 4G ram for itself. Anyways, I think compiling FreeNAS with XENHVM support should close the gap on performance and might solve some issues.
I tried the method provided in http://forums.freenas.org/index.php...ernal-and-xen-tools-working-in-freenas.15287/ and it should work fine in FreeNAS-9.2.1.5-RELEASE. I tried it several times but it didn't work(not following all the steps, expect it to fail). I am trying to solve this issue but I just noticed how much I need to go through every time I tried to recompile it. As instructed, I need to go through
make git-external
make checkout
make release
the "make checkout" process is extremely painful because I have to checkout freenas/ports and trueos/trueos(1.5G total) from github every time I restart the compiling since "make clean" will clear everything including these files.
What I am currently doing to deal with this issue is using snapshots provided by ESXi. I take a snapshot after I finished the checkout and every time I finished compiling test, I roll it back (works pretty well). I think LVM in linux will do the same trick but I am not familiar with FreeBSD.
I read the Makefile in project root directory and it turns out there is another option called "git-internal", but I have no idea how to work with it. Can I have some brief instructions on how to use local git repository or compile without fetch loads of file from github every time?
Another a bit more advanced question is that if it is possible to reuse pre-compiled packages during the compiling process since I only make changes to only one or two packages each time I tried to recompile it. It saves a lot time if I don't need to compile them all over and over.
Last quesiton: Is it possible to target only for amd64 structure? I have no interest in i386 images.
I tried the method provided in http://forums.freenas.org/index.php...ernal-and-xen-tools-working-in-freenas.15287/ and it should work fine in FreeNAS-9.2.1.5-RELEASE. I tried it several times but it didn't work(not following all the steps, expect it to fail). I am trying to solve this issue but I just noticed how much I need to go through every time I tried to recompile it. As instructed, I need to go through
make git-external
make checkout
make release
the "make checkout" process is extremely painful because I have to checkout freenas/ports and trueos/trueos(1.5G total) from github every time I restart the compiling since "make clean" will clear everything including these files.
What I am currently doing to deal with this issue is using snapshots provided by ESXi. I take a snapshot after I finished the checkout and every time I finished compiling test, I roll it back (works pretty well). I think LVM in linux will do the same trick but I am not familiar with FreeBSD.
I read the Makefile in project root directory and it turns out there is another option called "git-internal", but I have no idea how to work with it. Can I have some brief instructions on how to use local git repository or compile without fetch loads of file from github every time?
Another a bit more advanced question is that if it is possible to reuse pre-compiled packages during the compiling process since I only make changes to only one or two packages each time I tried to recompile it. It saves a lot time if I don't need to compile them all over and over.
Last quesiton: Is it possible to target only for amd64 structure? I have no interest in i386 images.