Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 6 Nov 2011 21:27:01 +0530
From:      linux freaker <linuxfreaker@gmail.com>
To:        freebsd-hardware@freebsd.org
Subject:   Re: Support for MegaRAID SAS on FreeBSD
Message-ID:  <CAFfRdEcaODTaJz1kDv5b7MMoXR8-Bba6E8rDNO7k06G=ToJ87g@mail.gmail.com>
In-Reply-To: <CAFfRdEfEZGEctJWHa1-JAnYgK6phuYSAVHFfgBbg6e-pjL56cw@mail.gmail.com>
References:  <CAFfRdEeHWRFG_rYTkkTynFt6-SzT0Ygxp=ONwTWKQrecOj03iQ@mail.gmail.com> <4EB57E28.5090906@darkbsd.org> <CAFfRdEcmryAPoWU%2BRdbHKP4WZ1MaiKEMDZ0%2B3MGhadXjxK5E%2Bg@mail.gmail.com> <4EB60421.1010603@darkbsd.org> <CAFfRdEfLK5x=yOwYTNkv=R2xKR8S5aTFL7PDkK_q0mEPo3za=A@mail.gmail.com> <CAFfRdEfH61S3jj%2BPQabnXhH2yH2oef%2B-aKo9asSuN5Vi4CKv2g@mail.gmail.com> <CAFfRdEfEX1zAaBnWa4kfJaXtOHLE9XDiVoYZHR584K8VtxB_rA@mail.gmail.com> <4EB6A808.2060805@darkbsd.org> <CAFfRdEfKf3q7GEifFELzjFE7rfCFwbFMvKRoADvW=9v=PPVVCA@mail.gmail.com> <CAFfRdEfEZGEctJWHa1-JAnYgK6phuYSAVHFfgBbg6e-pjL56cw@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
I have pasted the make results:



freebsd-new# cd /usr/src/sys/dev/mfi
freebsd-new# make
Warning: Object directory not changed from original /usr/src/sys/dev/mfi
@ -> /usr/src/sys
machine -> /usr/src/sys/amd64/include
x86 -> /usr/src/sys/x86/include
awk -f @/tools/makeobjops.awk @/kern/device_if.m -h
awk -f @/tools/makeobjops.awk @/kern/bus_if.m -h
awk -f @/tools/makeobjops.awk @/dev/pci/pci_if.m -h
:> opt_mfi.h
:> opt_cam.h
cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE
-nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param
inline-unit-growth=100 --param large-function-growth=1000 -fno-common
-fno-omit-frame-pointer  -mno-sse -mcmodel=kernel -mno-red-zone -mno-mmx
-msoft-float  -fno-asynchronous-unwind-tables -ffreestanding
-fstack-protector -std=iso9899:1999 -fstack-protector -Wall
-Wredundant-decls -Wnested-externs -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef
-Wno-pointer-sign -fformat-extensions  -Wmissing-include-dirs
-fdiagnostics-show-option -c mfi.c
cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE
-nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param
inline-unit-growth=100 --param large-function-growth=1000 -fno-common
-fno-omit-frame-pointer  -mno-sse -mcmodel=kernel -mno-red-zone -mno-mmx
-msoft-float  -fno-asynchronous-unwind-tables -ffreestanding
-fstack-protector -std=iso9899:1999 -fstack-protector -Wall
-Wredundant-decls -Wnested-externs -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef
-Wno-pointer-sign -fformat-extensions  -Wmissing-include-dirs
-fdiagnostics-show-option -c mfi_pci.c
cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE
-nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param
inline-unit-growth=100 --param large-function-growth=1000 -fno-common
-fno-omit-frame-pointer  -mno-sse -mcmodel=kernel -mno-red-zone -mno-mmx
-msoft-float  -fno-asynchronous-unwind-tables -ffreestanding
-fstack-protector -std=iso9899:1999 -fstack-protector -Wall
-Wredundant-decls -Wnested-externs -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef
-Wno-pointer-sign -fformat-extensions  -Wmissing-include-dirs
-fdiagnostics-show-option -c mfi_disk.c
cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE
-nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param
inline-unit-growth=100 --param large-function-growth=1000 -fno-common
-fno-omit-frame-pointer  -mno-sse -mcmodel=kernel -mno-red-zone -mno-mmx
-msoft-float  -fno-asynchronous-unwind-tables -ffreestanding
-fstack-protector -std=iso9899:1999 -fstack-protector -Wall
-Wredundant-decls -Wnested-externs -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef
-Wno-pointer-sign -fformat-extensions  -Wmissing-include-dirs
-fdiagnostics-show-option -c mfi_syspd.c
cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE
-nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param
inline-unit-growth=100 --param large-function-growth=1000 -fno-common
-fno-omit-frame-pointer  -mno-sse -mcmodel=kernel -mno-red-zone -mno-mmx
-msoft-float  -fno-asynchronous-unwind-tables -ffreestanding
-fstack-protector -std=iso9899:1999 -fstack-protector -Wall
-Wredundant-decls -Wnested-externs -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef
-Wno-pointer-sign -fformat-extensions  -Wmissing-include-dirs
-fdiagnostics-show-option -c mfi_cam.c
cc -O2 -pipe -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE
-nostdinc   -I. -I@ -I@/contrib/altq -finline-limit=8000 --param
inline-unit-growth=100 --param large-function-growth=1000 -fno-common
-fno-omit-frame-pointer  -mno-sse -mcmodel=kernel -mno-red-zone -mno-mmx
-msoft-float  -fno-asynchronous-unwind-tables -ffreestanding
-fstack-protector -std=iso9899:1999 -fstack-protector -Wall
-Wredundant-decls -Wnested-externs -Wstrict-prototypes
-Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  -Wundef
-Wno-pointer-sign -fformat-extensions  -Wmissing-include-dirs
-fdiagnostics-show-option -c mfi_debug.c
ld  -d -warn-common -r -d -o mfi.ko mfi.o mfi_pci.o mfi_disk.o mfi_syspd.o
mfi_cam.o mfi_debug.o
:> export_syms
awk -f /usr/src/sys/dev/mfi/../../conf/kmod_syms.awk mfi.ko  export_syms |
xargs -J% objcopy % mfi.ko
objcopy --strip-debug mfi.ko
freebsd-new#
freebsd-new#


On Sun, Nov 6, 2011 at 9:14 PM, linux freaker <linuxfreaker@gmail.com>wrote:

>
>
> ---------- Forwarded message ----------
> From: linux freaker <linuxfreaker@gmail.com>
> Date: Sun, Nov 6, 2011 at 9:06 PM
> Subject: Re: Support for MegaRAID SAS on FreeBSD
> To: Stephane LAPIE <stephane.lapie@darkbsd.org>
>
>
> It dint work.
> I tried this:
>
> freebsd-new# cd /boot/kernel/
> freebsd-new# kldload ./mfi.ko
> kldload: can't load ./mfi.ko: File exists
> freebsd-new# kldload mfi.ko
> kldload: can't load mfi.ko: File exists
> freebsd-new#
>
>   On Sun, Nov 6, 2011 at 9:00 PM, Stephane LAPIE <
> stephane.lapie@darkbsd.org> wrote:
>
>> Hmm,
>>
>> Did you copy the new mfi.ko module in /boot/kernel ? The kldload warning
>> clearly says it would load from /boot/kernel (so the old module!) and
>> not from where you just built it.
>>
>> You could try "kldload ./mfi.ko".
>>
>> Cheers,
>>
>> On 11/07/2011 12:18 AM, linux freaker wrote:
>> > As I ssh through putty and running these command on VM, I can see the
>> > following errors on console:
>> >
>> > interface mfi.1 already present in the KLD 'kernel'!
>> > linker_load_file:Unsupported file type
>> > module_register:module pci/mfi already exists!
>> > module pci/mfi failed to register: 17
>> >
>> >
>> > On Sun, Nov 6, 2011 at 8:42 PM, linux freaker <linuxfreaker@gmail.com
>> >wrote:
>> >
>> >> Hi Stephane,
>> >>
>> >> I did follow these steps:
>> >>
>> >> 1. Installed FreeBSD 9.1 RC1 VM.
>> >> 2.Installed the FreeBSD 9.0-RC1 source
>> >> 3.Removed the default /usr/src/sys/dev/mfi (by renaming it, for
>> instance)
>> >> 4.Put the driver source provided by LSI in its place
>> >> 5. Modify mfi.c, the call to psignal() on line 1603 must be altered to
>> >>
>> >>>> kern_psignal() (only step required for FreeBSD 9.X)
>> >> The line looks now as:
>> >>
>> >> kern_psignal(mfi_aen_entry->p, SIGIO);
>> >>
>> >> 6. After that modification : cd /usr/src/sys/dev/mfi; make
>> >> 7.When I tried to kldload it through:
>> >>
>> >> freebsd-new# kldload mfi.ko
>> >> kldload: mfi.ko will be loaded from /boot/kernel, not the current
>> directory
>> >> kldload: can't load mfi.ko: Exec format error
>> >> freebsd-new# cd /boot/kernel/
>> >> freebsd-new# kldload mfi.ko
>> >> kldload: can't load mfi.ko: Exec format error
>> >> Any idea why its not letting me to load it.
>> >>
>> >> Also, Once done with the above step, I have now VM with mfi driver
>> loaded.
>> >> How shall I transport this VM to hardware?
>> >> Please suggest the further steps.
>> >>
>> >> On Sun, Nov 6, 2011 at 10:30 AM, linux freaker <linuxfreaker@gmail.com
>> >wrote:
>> >>
>> >>> That sounds really clear.
>> >>> Thanks for your great help.
>> >>> I am going to try out this now.
>> >>>
>> >>>   On Sun, Nov 6, 2011 at 9:20 AM, Stephane LAPIE <
>> >>> stephane.lapie@darkbsd.org> wrote:
>> >>>
>> >>>> Hi,
>> >>>>
>> >>>> The instructions I provided work for 9.x and 8.x (well, minus the
>> mfi.c
>> >>>> modification). To make things simple :
>> >>>> - For installing 6.x, 7.x and 8.x, just grab the appropriate archive
>> >>>> from LSI's site and use it as is. (don't modify the mfi.c !)
>> >>>> - For installing 9.x, grab the 8.x driver, modify the one line in
>> mfi.c,
>> >>>> and use it.
>> >>>>
>> >>>> 1) To create the module for 9.0-RC1, yes, you could :
>> >>>> - Create a VM, install FreeBSD 9.0-RC1 in it
>> >>>> - Install the FreeBSD 9.0-RC1 source
>> >>>> - Apply the instructions for installing the module (it should be
>> >>>> loadable on a GENERIC kernel, then)
>> >>>> - Put the module on a USB key, or something
>> >>>>
>> >>>> Installation itself should go something like this :
>> >>>> - Launch the installer on physical hardware
>> >>>> - Drop to a command prompt (if you have a liveFS), load your external
>> >>>> media, load the module to get the hardware detected
>> >>>> - Resume installation now that it can see your hardware
>> >>>> - Before rebooting, manually copy the mfi.ko to your /boot/kernel/
>> >>>> (erasing the older one!), and adding mfi_load="YES" to your
>> >>>> /boot/loader.conf (these paths are relative to your brand new
>> >>>> installation)
>> >>>>
>> >>>> 2) Alternatively, you could engineer your own release :
>> >>>> - Create a VM, install FreeBSD 9.0-RC1 in it
>> >>>> - Install the FreeBSD 9.0-RC1 source
>> >>>> - Apply the instructions for installing the module (it should be
>> >>>> loadable on a GENERIC kernel, then)
>> >>>> - Run a "make release" on the source (you would probably have a few
>> >>>> errors with the mfip modules and mfi_linux, but nothing too hard to
>> >>>> solve)
>> >>>>
>> >>>> And use the resulting ISO to install FreeBSD normally (since it would
>> >>>> have the special mfi module by default).
>> >>>>
>> >>>> Cheers,
>> >>>>
>> >>>> On 11/06/2011 04:22 AM, linux freaker wrote:
>> >>>>> Hi Stephane,
>> >>>>>
>> >>>>> Thanks for your response.
>> >>>>> Since I am unable to install FreeBSD 9.0 RC1 how shall I proceed?
>> >>>>> As you said you need to build a custom kernel or module beforehand,
>> do
>> >>>> you
>> >>>>> mean I need to install FreeBSD 9.0 RC1(or earlier) on VM or other
>> >>>> supported
>> >>>>> hardware.Though I can install it on other hardware or VM, will it be
>> >>>> useful
>> >>>>> to build this kernel there?
>> >>>>>
>> >>>>> The Instruction which you provided is nice but which FreeBSD
>> version I
>> >>>> need
>> >>>>> to run on?
>> >>>>>
>> >>>>> Well, it would be appreciated if you can provide me with custom ISO
>> >>>> Image,
>> >>>>> if possible..
>> >>>>> If not, suggest me and I will follow the steps.
>> >>>>>
>> >>>>> On Sat, Nov 5, 2011 at 11:49 PM, Stephane LAPIE
>> >>>>> <stephane.lapie@darkbsd.org>wrote:
>> >>>>>
>> >>>>>> Hi,
>> >>>>>>
>> >>>>>> The SAS 9240 controller works fine with the mfi driver provided by
>> >>>> LSI,
>> >>>>>> however there is no driver to my knowledge in the default FreeBSD
>> tree
>> >>>>>> that handles this controller, which is kind of annoying.
>> >>>>>>
>> >>>>>> So you have to build a custom kernel or module beforehand for it.
>> >>>>>>
>> >>>>>> I have two servers using this driver right now (one running on
>> >>>>>> 8.2-STABLE and one on 9.0-RC1.
>> >>>>>>
>> >>>>>> (Yes, I know this does not help at all for installation time unless
>> >>>> you
>> >>>>>> have a full live filesystem, or engineer your own releases
>> >>>> yourself... :/)
>> >>>>>>
>> >>>>>> However, for FreeBSD 9.X, it requires a quick modification to the
>> >>>> source
>> >>>>>> for it to build (following enclosed instructions) :
>> >>>>>> - Remove the default /usr/src/sys/dev/mfi (by renaming it, for
>> >>>> instance)
>> >>>>>> - Put the driver source provided by LSI in its place
>> >>>>>> - Modify mfi.c, the call to psignal() on line 1603 must be altered
>> to
>> >>>>>> kern_psignal() (only step required for FreeBSD 9.X)
>> >>>>>> - After that modification : cd /usr/src/sys/dev/mfi; make
>> >>>>>> - You can then kldload the resulting mfi.ko module.
>> >>>>>>
>> >>>>>> So, to sum up, the LSI driver works, yes. :)
>> >>>>>>
>> >>>>>> Cheers,
>> >>>>>>
>> >>>>>> On 11/06/2011 01:59 AM, linux freaker wrote:
>> >>>>>>> I am facing issue while installing FreeBSD 9.1 RC1 on Dell
>> PowerEdge
>> >>>>>> Server
>> >>>>>>> with MegaRAID SAS 9240 driver.
>> >>>>>>> It is unable to detect the controller.Any idea how to
>> troubleshoot?
>> >>>>>>> I can see that it has mfi.1 driver loaded.(I am not sure if thats
>> >>>>>> mfi/mps).
>> >>>>>>> Do I need to rebuilt the kernel with this new driver.If yes, what
>> >>>> steps I
>> >>>>>>> need to follow.
>> >>>>>>> I can see that LSI does provide the new
>> >>>> 3.98_FreeBSD_x86_and_x64_drivers
>> >>>>>>> but uncertain if that would work.
>> >>>>>>> _______________________________________________
>> >>>>>>> freebsd-hardware@freebsd.org mailing list
>> >>>>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-hardware
>> >>>>>>> To unsubscribe, send any mail to "
>> >>>>>> freebsd-hardware-unsubscribe@freebsd.org"
>> >>>>>>
>> >>>>>> --
>> >>>>>> Stephane LAPIE, EPITA SRS, Promo 2005
>> >>>>>> "Even when they have digital readouts, I can't understand them."
>> >>>>>> --MegaTokyo
>> >>>>>>
>> >>>>>>
>> >>>>> _______________________________________________
>> >>>>> freebsd-hardware@freebsd.org mailing list
>> >>>>> http://lists.freebsd.org/mailman/listinfo/freebsd-hardware
>> >>>>> To unsubscribe, send any mail to "
>> >>>> freebsd-hardware-unsubscribe@freebsd.org"
>> >>>>
>> >>>> --
>> >>>> Stephane LAPIE, EPITA SRS, Promo 2005
>> >>>> "Even when they have digital readouts, I can't understand them."
>> >>>> --MegaTokyo
>> >>>>
>> >>>>
>> >>>
>> >>
>> >
>>
>>
>> --
>> Stephane LAPIE, EPITA SRS, Promo 2005
>> "Even when they have digital readouts, I can't understand them."
>> --MegaTokyo
>>
>>
>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CAFfRdEcaODTaJz1kDv5b7MMoXR8-Bba6E8rDNO7k06G=ToJ87g>