View unanswered posts | View active topics It is currently Mon May 20, 2013 9:36 am



Reply to topic  [ 3 posts ] 
 HighPoint RocketRaid 23xx on ESXi 5? If not, DIY? 
Author Message

Joined: Mon Dec 26, 2011 12:09 pm
Posts: 4
 HighPoint RocketRaid 23xx on ESXi 5? If not, DIY?
Hi guys,

I'm new here so please forgive me if this has been discussed before. I did take a look around the forum but couldn't find an answer so here we go: I've got a RocketRaid 2300 4-port SATA2 card in my home server (an Asus P5QL Pro, soon to be Quad C2D motherboard) and it's rocking OK. But I would love to use this raid card either on the host itself creating a datastore on it or passing it through to a dedicated fileserver guest, but neither seems to be possible with this configuration :(

What is needed by the host hardware for PCI(e) cards to be passed through to the guests anyway?

Since there is a driver compiled for RocketRaid 3510 ( http://schipka.com/archives/88 ) for ESX 4.x shouldn't it be pretty straight forward to recompile it or the one for 23xx for ESXi 5?? I'm not a developer myself, but I have compiled a few drivers here and there. I would love to give it a go if some out pointed me in the right direction ... What do I need? An SDK/kernel-tree from VMWare or similar would be a good start I guess.

Thanks and happy holidays!
/shoe


Mon Dec 26, 2011 2:28 pm
Profile

Joined: Mon Dec 26, 2011 12:09 pm
Posts: 4
Post Re: HighPoint RocketRaid 23xx on ESXi 5? If not, DIY?
Since I posted this (it takes a while for the first post to get approved, remember) I've done some digging and about 12 hours of trial and error :D And this is as far as I've got:

1) I've downloaded the VMware-esx-public-source-5.0.0-434156.tar.gz and extracted the vmkdrivers-gpl.tgz package.

2) I've got a CentOS 6.2 development system up and running with a local GCC 4.1.2 with binutils 'ld' 2.17 as per the README from the vmkdrivers archive.

3) I can successfully compile the modules with the ./build-vmkdrivers.sh script. However loading one of these modules FAILS on my ESXi host with the error message: "<sata_promise> lacks namespace information. Not loading. , Kernel based module load of sata_promise failed: Invalid module <ElfSetNamespaceInfo failed>"
I'm guessing this is expected behavior or something I just missed to do.

4) Now to my real problem: the rr231x_0x module.

I have downloaded rr231x_0x-linux-src-v2.5-091022-1618.tar.gz and I can compile it on my CentOS dev machine. However I cannot take this kernel module straight off and load it with vmkload_mod.

Quote:
# vmkload_mod rr2310_00.ko
vmkload_mod: Can not load module rr2310_00.ko: Module does not provide a license tag


It won't give me any info on the module either:

Quote:
# vmkload_mod -s rr2310_00.ko
vmkload_mod module information
input file: rr2310_00.ko
Module contains no information!


However on my CentOS box it looks all right:

Quote:
[root@esxdev linux]# modinfo rr2310_00.ko
filename: rr2310_00.ko
license: Proprietary
description: RAID driver
author: HighPoint Technologies, Inc.
alias: pci:v000011ABd00007042sv*sd*bc*sc*i*
alias: pci:v00001103d00002300sv*sd*bc*sc*i*
alias: pci:v00001103d00002310sv*sd*bc*sc*i*
depends:
vermagic: 2.6.32-220.2.1.el6.x86_64 SMP mod_unload modversions
parm: autorebuild:int


But I guess I'm missing something here.. I'm currently looking into the buildscript provided by VMware to add some of the missing pieces to the Makefile from HighPoint for the RocketRaid driver. But I'm a total noob at this, ha ha :)

This is what I've come up with so far:

Quote:
# cat Makefile
# $Id: Makefile,v 1.5 2009/09/22 05:45:48 wsw Exp $
#
# Copyright (C) 2006 HighPoint Technologies, Inc.
# All Rights Reserved.
#

HPT_ROOT := ../../..

C_DEFINES := -DSUPPORT_ARRAY -fwrapv -fno-working-directory -fno-strict-aliasing -fPIE -falign-functions=4 -falign-jumps=4 -falign-loops=4 -ffreestanding -fno-common -fno-omit-frame-pointer -fno-strength-reduce -march=x86-64 -mcmodel=small -minline-all-stringops -mno-red-zone -nostartfiles -nostdlib --sysroot=/nowhere -Wall -Wdeclaration-after-statement -Wno-unused-value -Wno-pointer-sign -Wno-strict-prototypes -Wno-declaration-after-statement -Wno-declaration-after-statement -DCONFIG_COMPAT -DCPU=x86-64 -DDEBUG_STUB -DEXPORT_SYMTAB -DGPLED_CODE -DLINUX_MODULE_AUX_HEAP_NAME=vmklnx_rr_shoe -DLINUX_MODULE_HEAP_INITIAL=64*1024 -DLINUX_MODULE_HEAP_MAX=8*1024*1024 -DLINUX_MODULE_HEAP_NAME=vmklnx_rr_shoe -DLINUX_MODULE_VERSION=\"0.1\" -DMODULE -DVMKERNEL_MODULE -DVMX86_RELEASE -DVMX86_SERVER -DVMX86_VPROBES -D_LINUX -D_VMKDRVEI -D__KERNEL__ -D__VMKERNEL_MODULE__ -D__VMKERNEL__ -D__VMKLNX__ -D__VMK_GCC_BUG_ALIGNMENT_PADDING__ -D__VMWARE__ -Ivmkdrivers/src_9/drivers/ata -IBLD/build/version -IBLD/build/HEADERS/vmkdrivers-vmkernel/vmkernel64/release -Ivmkdrivers/src_9/include -Ivmkdrivers/src_9/include/vmklinux_9 -IBLD/build/HEADERS/CUR-9-vmkdrivers-asm-x64/vmkernel64/release -IBLD/build/HEADERS/vmkapi-current-all-public-bincomp/vmkernel64/release

TARGETNAME := rr2310_00
TARGETTYPE := KMOD
TARGETMODS := him_rr2310pm.o ldm_raid50_compat.o partition.o raid0.o raid1.o raid5.o jbod.o
TARGETOBJS := os_linux.o osm_linux.o div64.o hptinfo.o config.o

TRASH := ./spp ./update_revision.sh

include $(HPT_ROOT)/inc/linux/Makefile.def

$(TARGETOBJS): osm_linux.h


But I still have a lot of work to do.. I realize all the includes are for a promise sata card, never mind that at this point. I just want the damn thing to get pass GO.

Appreciate ANY and ALL assistance anyone can provide! I would love to get my hands on the Makefile for the RocketRaid17xx that some guy here on the forum built for ESXi 4.x (!!!)

Cheers!
/shoe


Last edited by shoe on Tue Dec 27, 2011 2:40 pm, edited 2 times in total.



Tue Dec 27, 2011 1:41 pm
Profile

Joined: Mon Dec 26, 2011 12:09 pm
Posts: 4
Post Re: HighPoint RocketRaid 23xx on ESXi 5? If not, DIY?
This to me is what we call a Show Stopper

Quote:
make[1]: Entering directory `/usr/src/kernels/2.6.32-220.2.1.el6.x86_64'
CC [M] /root/rr231x_0x-linux-src-v2.5/product/rr2310pm/linux/.build/os_linux.o
CC [M] /root/rr231x_0x-linux-src-v2.5/product/rr2310pm/linux/.build/osm_linux.o
In file included from /usr/src/kernels/2.6.32-220.2.1.el6.x86_64/arch/x86/include/asm/irqflags.h:60,
from include/linux/irqflags.h:57,
from /usr/src/kernels/2.6.32-220.2.1.el6.x86_64/arch/x86/include/asm/system.h:11,
from /usr/src/kernels/2.6.32-220.2.1.el6.x86_64/arch/x86/include/asm/processor.h:17,
from include/linux/prefetch.h:14,
from include/linux/list.h:6,
from include/linux/module.h:9,
from /root/rr231x_0x-linux-src-v2.5/osm/linux/osm_linux.h:21,
from /root/rr231x_0x-linux-src-v2.5/product/rr2310pm/linux/.build/osm_linux.c:6:
/usr/src/kernels/2.6.32-220.2.1.el6.x86_64/arch/x86/include/asm/paravirt.h: In function ‘hpt_reset’:
/usr/src/kernels/2.6.32-220.2.1.el6.x86_64/arch/x86/include/asm/paravirt.h:878: warning: asm operand 2 probably doesn’t match constraints
/usr/src/kernels/2.6.32-220.2.1.el6.x86_64/arch/x86/include/asm/paravirt.h:878: warning: asm operand 2 probably doesn’t match constraints
/usr/src/kernels/2.6.32-220.2.1.el6.x86_64/arch/x86/include/asm/paravirt.h:878: error: impossible constraint in ‘asm’
/usr/src/kernels/2.6.32-220.2.1.el6.x86_64/arch/x86/include/asm/paravirt.h:878: error: impossible constraint in ‘asm’


Tue Dec 27, 2011 1:43 pm
Profile
Display posts from previous:  Sort by  
Reply to topic   [ 3 posts ] 

Who is online

Users browsing this forum: No registered users and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by STSoftware for PTF.