Difference between revisions of "FreeBSD kernel with Fibre Channel target mode support for QLogic cards"
(→Build and install the kernels) |
|||
Line 27: | Line 27: | ||
sudo zfs create zroot/usr/obj | sudo zfs create zroot/usr/obj | ||
sudo chown aram:staff /usr/obj | sudo chown aram:staff /usr/obj | ||
+ | |||
+ | == Make a copy of GENERIC kernel == | ||
+ | |||
+ | sudo /boot/kernel /boot/GENERIC | ||
+ | |||
+ | From now on freebsd-update(8)� will update this kernel. | ||
== Build and install the kernels == | == Build and install the kernels == |
Revision as of 14:39, 6 November 2018
Contents
Introduction
FreeBSD doesn't enable target mode support for QLogic cards, so we need to compile a custom kernel. We'll assume we have installed a release and we have a populated /usr/src.
Create the kernel configuration file
cat <<EOF >/tmp/FCTARGET include GENERIC ident FCTARGET options ISP_TARGET_MODE EOF sudo install -g staff -o aram /tmp/FCTARGET /usr/src/sys/amd64/conf
Create /etc/make.conf
cat <<EOF >/tmp/make.conf # Build and install only FCTARGET kernel. # /boot/GENERIC will be updated by freebsd-update(8). KERNCONF=FCTARGET sudo install -g staff -o aram /tmp/make.conf /etc
Create /usr/obj
Assuming you have ZFS:
sudo zfs create zroot/usr/obj sudo chown aram:staff /usr/obj
Make a copy of GENERIC kernel
sudo /boot/kernel /boot/GENERIC
From now on freebsd-update(8)� will update this kernel.
Build and install the kernels
Build the kernel:
cd /usr/src # builds FCTARGET make buildkernel -j24
Install the kernel:
# installs FCTARGET sudo make -j24 installkernel
If you need to build generic for whatever reason:
make buildkernel -j24 KERNCONF=GENERIC sudo make -j24 installkernel KERNCONF=GENERIC INSTKERNNAME=GENERIC
Load isp(4) driver in /etc/loader.conf
As root:
sudo su - echo isp_load="YES" >> /boot/loader.conf echo ispfw_load="YES" >> /boot/loader.conf
Reboot and test
sudo reboot