Jump to content

MegaRaid SAS Controller and custom kernel


Recommended Posts

I've added a warning in red to the top of that page, as it was created for 32 bit v5, and has never been updated for v6.  If you actually get something working, v6 based, please let us know!  You can edit the page yourself, or tell us how you adapted the instructions.  (if you have time, but would be helpful for others)

Link to comment

"latest stable build"

 

which at the time of this post was 6.1.9

 

I followed the instructions to ensure I was building everything according to version 6.1.9 (which I believe is kernel 4.1.18, or slackware 14.1 64 bit)

 

I would love to update the instructions, but I couldn't modify the wiki

 

I'm not entirely sure how to verify if the kernel includes the correct megaraid sas kernel.  However, it did compile and my bootup did work.

Link to comment

I would love to update the instructions, but I couldn't modify the wiki

 

I've checked and the page is not patrolled or protected, so *should* be available for edit.  I don't know but it's possible you haven't posted enough here to be allowed to edit there.  Authentication there is tied to user membership here, on the forums.  Try again later!  We never have enough users helping out on the wiki!

Link to comment

Well here's what I did (I've done it 3 times now).

 

# original instructions: http://www.lime-technology.com/wiki/index.php/Building_a_custom_kernel
# where I found packages: https://pkgs.org/slackware-14.1/slackware-x86_64/perl-5.18.1-x86_64-1.txz.html
# kernel version: uname -r

mkdir /boot/packages
cd /boot/packages/

wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/ap/bc-1.06.95-x86_64-2.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/d/binutils-2.23.52.0.1-x86_64-2.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/d/gcc-4.8.2-x86_64-1.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/l/glibc-2.17-x86_64-7.txz
wget http://mirrors.slackware.com/slackware/slackware64-14.1/slackware64/a/infozip-6.0-x86_64-2.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware-14.1/slackware/d/kernel-headers-3.10.17_smp-x86-3.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/d/make-3.82-x86_64-4.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/l/ncurses-5.9-x86_64-2.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/d/perl-5.18.1-x86_64-1.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/l/libmpc-0.8.2-x86_64-2.txz
wget http://slackware.cs.utah.edu/pub/slackware/slackware64-14.1/slackware64/a/cpio-2.11-x86_64-2.txz
wget http://dnld.lime-technology.com/stable/unRAIDServer-6.1.9-x86_64.zip

####

cd /boot/packages/

#packages
installpkg /boot/packages/make-3.82-x86_64-4.txz
installpkg /boot/packages/infozip-6.0-x86_64-2.txz
installpkg /boot/packages/kernel-headers-3.10.17_smp-x86-3.txz
installpkg /boot/packages/make-3.82-x86_64-4.txz
installpkg /boot/packages/gcc-4.8.2-x86_64-1.txz
installpkg /boot/packages/glibc-2.17-x86_64-7.txz
installpkg /boot/packages/binutils-2.23.52.0.1-x86_64-2.txz
installpkg /boot/packages/ncurses-5.9-x86_64-2.txz
installpkg /boot/packages/libmpc-0.8.2-x86_64-2.txz
installpkg /boot/packages/cpio-2.11-x86_64-2.txz
installpkg /boot/packages/perl-5.18.1-x86_64-1.txz
installpkg /boot/packages/bc-1.06.95-x86_64-2.txz

tar -C /usr/src/ -zxvf /boot/packages/linux-4.1.18.tar.gz
ln -sf /usr/src/linux-4.1.18 /usr/src/linux
mkdir /mnt/dev
unzip /boot/packages/unRAIDServer-6.1.9-x86_64.zip -d /mnt/dev/
cp -rf /usr/src/linux-4.1.18-unRAID/* /usr/src/linux/
cp -f /usr/src/linux-4.1.18-unRAID/.config /usr/src/linux/
cd /usr/src/linux

#makes
make clean
make menuconfig
make bzImage ; make ; make modules ; make modules_install

# 64 no go?
cp /usr/src/linux/arch/x86_64/boot/bzImage /boot/bzImage_x86_64_new
cp /usr/src/linux/arch/x86/boot/bzImage /boot/bzImage_x86_new

mkdir /mnt/dev/bz-mod
cd /mnt/dev/bz-mod
xzcat ../bzroot | cpio -m -i -d -H newc --no-absolute-filenames
rsync -av --delete /lib/modules/4.1.18-unRAID/ lib/modules/4.1.18-unRAID/
find . | cpio -o -H newc | xz --check=crc32 --x86 --lzma2=preset=9e > /boot/bzroot_new

 

I ensured my sysconfig file was updated with bzroot_new and bzImage_new

 

contents of compiled modules

root@Tower:~# cat /lib/modules/$(uname -r)/modules.builtin
kernel/arch/x86/crypto/crc32c-intel.ko
kernel/arch/x86/kernel/msr.ko
kernel/arch/x86/kernel/cpuid.ko
kernel/fs/binfmt_script.ko
kernel/fs/mbcache.ko
kernel/fs/9p/9p.ko
kernel/fs/btrfs/btrfs.ko
kernel/fs/cifs/cifs.ko
kernel/fs/exportfs/exportfs.ko
kernel/fs/ext4/ext4.ko
kernel/fs/fat/fat.ko
kernel/fs/fat/vfat.ko
kernel/fs/fat/msdos.ko
kernel/fs/fscache/fscache.ko
kernel/fs/fuse/fuse.ko
kernel/fs/hfsplus/hfsplus.ko
kernel/fs/isofs/isofs.ko
kernel/fs/jbd2/jbd2.ko
kernel/fs/lockd/lockd.ko
kernel/fs/nfs/nfs.ko
kernel/fs/nfs/nfsv2.ko
kernel/fs/nfs/nfsv3.ko
kernel/fs/nfs_common/grace.ko
kernel/fs/nfsd/nfsd.ko
kernel/fs/nls/nls_base.ko
kernel/fs/nls/nls_cp437.ko
kernel/fs/nls/nls_ascii.ko
kernel/fs/nls/nls_iso8859-1.ko
kernel/fs/nls/nls_iso8859-15.ko
kernel/fs/nls/nls_utf8.ko
kernel/fs/reiserfs/reiserfs.ko
kernel/fs/udf/udf.ko
kernel/fs/xfs/xfs.ko
kernel/crypto/crypto.ko
kernel/crypto/crypto_wq.ko
kernel/crypto/crypto_algapi.ko
kernel/crypto/aead.ko
kernel/crypto/crypto_blkcipher.ko
kernel/crypto/chainiv.ko
kernel/crypto/eseqiv.ko
kernel/crypto/crypto_hash.ko
kernel/crypto/pcompress.ko
kernel/crypto/cryptomgr.ko
kernel/crypto/cmac.ko
kernel/crypto/hmac.ko
kernel/crypto/md4.ko
kernel/crypto/md5.ko
kernel/crypto/sha1_generic.ko
kernel/crypto/sha256_generic.ko
kernel/crypto/ecb.ko
kernel/crypto/cbc.ko
kernel/crypto/des_generic.ko
kernel/crypto/aes_generic.ko
kernel/crypto/arc4.ko
kernel/crypto/deflate.ko
kernel/crypto/crc32c_generic.ko
kernel/crypto/crct10dif_common.ko
kernel/crypto/crct10dif_generic.ko
kernel/crypto/authenc.ko
kernel/crypto/authencesn.ko
kernel/crypto/rng.ko
kernel/crypto/krng.ko
kernel/crypto/xor.ko
kernel/block/deadline-iosched.ko
kernel/block/cfq-iosched.ko
kernel/drivers/acpi/button.ko
kernel/drivers/acpi/fan.ko
kernel/drivers/acpi/processor.ko
kernel/drivers/acpi/thermal.ko
kernel/drivers/acpi/acpi_pad.ko
kernel/drivers/ata/libata.ko
kernel/drivers/base/firmware_class.ko
kernel/drivers/block/floppy.ko
kernel/drivers/block/loop.ko
kernel/drivers/block/nbd.ko
kernel/drivers/block/xen-blkfront.ko
kernel/drivers/block/xen-blkback/xen-blkback.ko
kernel/drivers/cdrom/cdrom.ko
kernel/drivers/char/lp.ko
kernel/drivers/char/hangcheck-timer.ko
kernel/drivers/char/hw_random/rng-core.ko
kernel/drivers/char/hw_random/intel-rng.ko
kernel/drivers/char/hw_random/amd-rng.ko
kernel/drivers/char/hw_random/via-rng.ko
kernel/drivers/char/ipmi/ipmi_msghandler.ko
kernel/drivers/connector/cn.ko
kernel/drivers/cpufreq/cpufreq_stats.ko
kernel/drivers/cpufreq/cpufreq_performance.ko
kernel/drivers/cpufreq/cpufreq_powersave.ko
kernel/drivers/cpufreq/cpufreq_userspace.ko
kernel/drivers/cpufreq/cpufreq_ondemand.ko
kernel/drivers/cpufreq/cpufreq_conservative.ko
kernel/drivers/devfreq/governor_simpleondemand.ko
kernel/drivers/devfreq/governor_performance.ko
kernel/drivers/devfreq/governor_powersave.ko
kernel/drivers/devfreq/governor_userspace.ko
kernel/drivers/fmc/fmc.ko
kernel/drivers/hid/hid.ko
kernel/drivers/hid/hid-generic.ko
kernel/drivers/hid/hid-a4tech.ko
kernel/drivers/hid/hid-apple.ko
kernel/drivers/hid/hid-belkin.ko
kernel/drivers/hid/hid-cherry.ko
kernel/drivers/hid/hid-chicony.ko
kernel/drivers/hid/hid-cypress.ko
kernel/drivers/hid/hid-dr.ko
kernel/drivers/hid/hid-ezkey.ko
kernel/drivers/hid/hid-gyration.ko
kernel/drivers/hid/hid-kensington.ko
kernel/drivers/hid/hid-kye.ko
kernel/drivers/hid/hid-logitech.ko
kernel/drivers/hid/hid-microsoft.ko
kernel/drivers/hid/hid-monterey.ko
kernel/drivers/hid/hid-ntrig.ko
kernel/drivers/hid/hid-pl.ko
kernel/drivers/hid/hid-petalynx.ko
kernel/drivers/hid/hid-plantronics.ko
kernel/drivers/hid/hid-samsung.ko
kernel/drivers/hid/hid-sjoy.ko
kernel/drivers/hid/hid-sunplus.ko
kernel/drivers/hid/hid-gaff.ko
kernel/drivers/hid/hid-tmff.ko
kernel/drivers/hid/hid-topseed.ko
kernel/drivers/hid/hid-twinhan.ko
kernel/drivers/hid/hid-zpff.ko
kernel/drivers/hid/usbhid/usbhid.ko
kernel/drivers/hwmon/hwmon.ko
kernel/drivers/i2c/i2c-core.ko
kernel/drivers/i2c/i2c-dev.ko
kernel/drivers/input/input-core.ko
kernel/drivers/input/mousedev.ko
kernel/drivers/input/keyboard/atkbd.ko
kernel/drivers/input/misc/pcspkr.ko
kernel/drivers/input/misc/xen-kbdfront.ko
kernel/drivers/input/serio/serio.ko
kernel/drivers/input/serio/i8042.ko
kernel/drivers/input/serio/libps2.ko
kernel/drivers/net/xen-netfront.ko
kernel/drivers/net/phy/libphy.ko
kernel/drivers/net/vmxnet3/vmxnet3.ko
kernel/drivers/net/xen-netback/xen-netback.ko
kernel/drivers/parport/parport.ko
kernel/drivers/parport/parport_pc.ko
kernel/drivers/pci/pci-stub.ko
kernel/drivers/pci/xen-pcifront.ko
kernel/drivers/pci/pcie/aer/aer_inject.ko
kernel/drivers/rtc/rtc-cmos.ko
kernel/drivers/scsi/scsi_mod.ko
kernel/drivers/scsi/sd_mod.ko
kernel/drivers/scsi/sr_mod.ko
kernel/drivers/scsi/sg.ko
kernel/drivers/ssb/ssb.ko
kernel/drivers/thermal/thermal_sys.ko
kernel/drivers/tty/serial/serial_core.ko
kernel/drivers/tty/serial/8250/8250.ko
kernel/drivers/tty/serial/8250/8250_pci.ko
kernel/drivers/uio/uio.ko
kernel/drivers/usb/common/usb-common.ko
kernel/drivers/usb/core/usbcore.ko
kernel/drivers/usb/host/ehci-hcd.ko
kernel/drivers/usb/host/ehci-pci.ko
kernel/drivers/usb/host/ohci-hcd.ko
kernel/drivers/usb/host/ohci-pci.ko
kernel/drivers/usb/host/uhci-hcd.ko
kernel/drivers/usb/host/xhci-hcd.ko
kernel/drivers/usb/host/xhci-pci.ko
kernel/drivers/usb/storage/usb-storage.ko
kernel/drivers/vfio/vfio.ko
kernel/drivers/vfio/vfio_virqfd.ko
kernel/drivers/vfio/vfio_iommu_type1.ko
kernel/drivers/vfio/pci/vfio-pci.ko
kernel/drivers/virtio/virtio.ko
kernel/drivers/virtio/virtio_ring.ko
kernel/drivers/virtio/virtio_mmio.ko
kernel/drivers/virtio/virtio_pci.ko
kernel/drivers/virtio/virtio_balloon.ko
kernel/drivers/xen/xen-evtchn.ko
kernel/drivers/xen/xen-gntdev.ko
kernel/drivers/xen/xen-gntalloc.ko
kernel/drivers/xen/xen-privcmd.ko
kernel/drivers/xen/xen-acpi-processor.ko
kernel/drivers/xen/xen-pciback/xen-pciback.ko
kernel/drivers/xen/xenbus/xenbus_probe_frontend.ko
kernel/drivers/xen/xenfs/xenfs.ko
kernel/net/802/p8022.ko
kernel/net/802/psnap.ko
kernel/net/802/stp.ko
kernel/net/9p/9pnet.ko
kernel/net/bridge/bridge.ko
kernel/net/bridge/br_netfilter.ko
kernel/net/dns_resolver/dns_resolver.ko
kernel/net/ipv4/ip_tunnel.ko
kernel/net/ipv4/ipip.ko
kernel/net/ipv4/gre.ko
kernel/net/ipv4/ip_gre.ko
kernel/net/ipv4/ip_vti.ko
kernel/net/ipv4/ah4.ko
kernel/net/ipv4/esp4.ko
kernel/net/ipv4/ipcomp.ko
kernel/net/ipv4/xfrm4_tunnel.ko
kernel/net/ipv4/xfrm4_mode_beet.ko
kernel/net/ipv4/inet_lro.ko
kernel/net/ipv4/tunnel4.ko
kernel/net/ipv4/xfrm4_mode_transport.ko
kernel/net/ipv4/xfrm4_mode_tunnel.ko
kernel/net/ipv4/inet_diag.ko
kernel/net/ipv4/tcp_diag.ko
kernel/net/ipv4/udp_diag.ko
kernel/net/ipv4/tcp_cubic.ko
kernel/net/ipv4/netfilter/nf_defrag_ipv4.ko
kernel/net/ipv4/netfilter/nf_log_ipv4.ko
kernel/net/llc/llc.ko
kernel/net/netfilter/nfnetlink.ko
kernel/net/netfilter/nfnetlink_acct.ko
kernel/net/netfilter/nfnetlink_queue.ko
kernel/net/netfilter/nfnetlink_log.ko
kernel/net/netfilter/nf_conntrack.ko
kernel/net/netfilter/nf_conntrack_tftp.ko
kernel/net/netfilter/nf_log_common.ko
kernel/net/netfilter/nf_tables.ko
kernel/net/netfilter/nft_compat.ko
kernel/net/netfilter/nft_exthdr.ko
kernel/net/netfilter/nft_meta.ko
kernel/net/netfilter/nft_ct.ko
kernel/net/netfilter/nft_limit.ko
kernel/net/netfilter/nft_queue.ko
kernel/net/netfilter/nft_reject.ko
kernel/net/netfilter/nft_rbtree.ko
kernel/net/netfilter/nft_hash.ko
kernel/net/netfilter/nft_counter.ko
kernel/net/netfilter/nft_log.ko
kernel/net/netfilter/x_tables.ko
kernel/net/netfilter/xt_tcpudp.ko
kernel/net/netfilter/xt_mark.ko
kernel/net/netfilter/xt_connmark.ko
kernel/net/netfilter/xt_CLASSIFY.ko
kernel/net/netfilter/xt_HMARK.ko
kernel/net/netfilter/xt_LOG.ko
kernel/net/netfilter/xt_NFLOG.ko
kernel/net/netfilter/xt_NFQUEUE.ko
kernel/net/netfilter/xt_RATEEST.ko
kernel/net/netfilter/xt_TCPMSS.ko
kernel/net/netfilter/xt_TEE.ko
kernel/net/netfilter/xt_IDLETIMER.ko
kernel/net/netfilter/xt_addrtype.ko
kernel/net/netfilter/xt_bpf.ko
kernel/net/netfilter/xt_cluster.ko
kernel/net/netfilter/xt_comment.ko
kernel/net/netfilter/xt_connbytes.ko
kernel/net/netfilter/xt_connlabel.ko
kernel/net/netfilter/xt_connlimit.ko
kernel/net/netfilter/xt_conntrack.ko
kernel/net/netfilter/xt_cpu.ko
kernel/net/netfilter/xt_dccp.ko
kernel/net/netfilter/xt_devgroup.ko
kernel/net/netfilter/xt_dscp.ko
kernel/net/netfilter/xt_ecn.ko
kernel/net/netfilter/xt_esp.ko
kernel/net/netfilter/xt_hashlimit.ko
kernel/net/netfilter/xt_helper.ko
kernel/net/netfilter/xt_hl.ko
kernel/net/netfilter/xt_ipcomp.ko
kernel/net/netfilter/xt_iprange.ko
kernel/net/netfilter/xt_l2tp.ko
kernel/net/netfilter/xt_length.ko
kernel/net/netfilter/xt_limit.ko
kernel/net/netfilter/xt_mac.ko
kernel/net/netfilter/xt_multiport.ko
kernel/net/netfilter/xt_nfacct.ko
kernel/net/netfilter/xt_osf.ko
kernel/net/netfilter/xt_owner.ko
kernel/net/netfilter/xt_cgroup.ko
kernel/net/netfilter/xt_physdev.ko
kernel/net/netfilter/xt_pkttype.ko
kernel/net/netfilter/xt_policy.ko
kernel/net/netfilter/xt_quota.ko
kernel/net/netfilter/xt_rateest.ko
kernel/net/netfilter/xt_realm.ko
kernel/net/netfilter/xt_recent.ko
kernel/net/netfilter/xt_sctp.ko
kernel/net/netfilter/xt_socket.ko
kernel/net/netfilter/xt_state.ko
kernel/net/netfilter/xt_statistic.ko
kernel/net/netfilter/xt_string.ko
kernel/net/netfilter/xt_tcpmss.ko
kernel/net/netfilter/xt_time.ko
kernel/net/netfilter/xt_u32.ko
kernel/net/netlink/netlink_diag.ko
kernel/net/packet/af_packet.ko
kernel/net/packet/af_packet_diag.ko
kernel/net/sunrpc/sunrpc.ko
kernel/net/unix/unix.ko
kernel/net/unix/unix_diag.ko
kernel/net/vmw_vsock/vsock.ko
kernel/net/xfrm/xfrm_algo.ko
kernel/net/xfrm/xfrm_ipcomp.ko
kernel/lib/bitrev.ko
kernel/lib/crc-ccitt.ko
kernel/lib/crc16.ko
kernel/lib/crc-t10dif.ko
kernel/lib/crc-itu-t.ko
kernel/lib/crc32.ko
kernel/lib/libcrc32c.ko
kernel/lib/ts_kmp.ko
kernel/lib/ts_bm.ko
kernel/lib/ts_fsm.ko
kernel/lib/lz4/lz4_decompress.ko
kernel/lib/lzo/lzo_compress.ko
kernel/lib/lzo/lzo_decompress.ko
kernel/lib/raid6/raid6_pq.ko
kernel/lib/xz/xz_dec.ko
kernel/lib/zlib_deflate/zlib_deflate.ko
kernel/lib/zlib_inflate/zlib_inflate.ko

Link to comment

Looks like i'm doing everything right but it's just refusing to compile any megaraid .ko files.

 

Looking at another post (https://bugs.launchpad.net/ubuntu/+source/linux-lts-saucy/+bug/1316076), they should be dumping to ~

 

root@mirror:/lib/modules/3.11.0-20-generic/kernel/drivers/scsi/megaraid# ls
megaraid_mbox.ko megaraid_mm.ko

 

the name of the kernel module is megaraid_sas.ko but it doesn't exist.

 

I've even tried

 

make modules SUBDIRS=drivers/scsi/megaraid

 

just to make that one specific subsection.

 

contents of my .config with relevant sections

 


CONFIG_MEGARAID_NEWGEN=y
CONFIG_MEGARAID_MM=m
CONFIG_MEGARAID_MAILBOX=m
CONFIG_MEGARAID_LEGACY=m
CONFIG_MEGARAID_SAS=m

 

 

Link to comment

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...