Jump to content
dukzcry

Driver for LSI MegaRAID SAS family

397 posts in this topic

Recommended Posts

 

 


Looks like it's still using IRQ and PreferMSI is Yes in the driver.

I recommend installing kexts by using this utility: http://cvad-mac.narod2.ru/Kext_Utility . Since OS X switched to use kexts cache plus some loaders started to use mkext archive, things got uncomfortable. Looks like you may have load up with old kext from cache.

 

...are read only using mac driver and won't mount at all using Tuxera

SASMegaRAID operates a way lower than VFS layer and hence is independend of file system of choice. I have no problems of using both HFS+, and different ZFS implementations (tried both maczfs and zevo, though switched to zevo, as maczfs is generally unstable).

 

The only difference between them and the other drives on the PERC 6/i is that they are partitioned GUID rather than MBR.

Sorry, can't help there, i don't use so much different kernel-side file systems. As disclaimer: you're on your own when dealing with 3-rd party FSs.
All of drives on my side are GUIDs.

P.S.: I don't know about PERC6, but LSI firmware brings some hassles to PERC5 card, e.g. 3 Tb+ drives aren't supported.

Share this post


Link to post
Share on other sites
Advertisement

You're right. I can't believe I totally blanked. I got so used to having everything pretty much working right that I totally forgot to do a -f at reboot. Once I did, I am now using the MSI, but it gets the long delay at boot with no USB input. I can VNC in just fine, but none of the drives mounted and the controller no longer shows up in System Profiler. I'm going to try going back to IRQ to make sure the new driver still works in that mode.

 

The latest LSI firmware that goes on the PERC 5/i (lsi 8408e) says it supports drives larger than 2TB. I don't see why it wouldn't support 3TB+. http://www.lsi.com/downloads/Public/MegaRAID%20SAS/MegaRAID%20SAS%208408E/MR_SAS_8408E_PB-Final.pdf

 

As for the PERC 6/i, it has no trouble supporting the 2.5TB drives in Windows 8. I also have LSI firmware on it. As for Dell's firmware, I doubt they update it very often.

 

*UPDATE*

 

Went back to MSI = No and it works like it did before. No delays and all drives mount save for the 2.5TB's that have been moved to the other controller.

Share this post


Link to post
Share on other sites

Once I did, I am now using the MSI, but it gets the long delay at boot with no USB input.

 

Thanks. That means MSIs don't work for PERC6 owners. I'll revert to MSI depreference for futher versions and add a note that somebody should try MSIs and switch to them, if everything works (like it works with PERC5) for that one.

 

 

The latest LSI firmware that goes on the PERC 5/i (lsi 8408e) says it supports drives larger than 2TB. I don't see why it wouldn't support 3TB+. http://www.lsi.com/d...8E_PB-Final.pdf

 

The problem is that LSI firmware on Dell's controller is considered unsupported, causing a bit of troubles, please see:

- from here:

 

Note: Since the card uses a Dell Bootloader, there is a possible corruption as defined in Post #1343 (link). It is recommended that you use the Dell firmware unless it does not work.

- here:

 

3TB Drives will technically work, but you will only get 2TB of Storage Space...

- and here for example (even mentions PERC6).

 

So my assumption was that PERC6 with LSI fw may has some dark corners as well.

 

upd: Backing to your problem with Tuxera NTFS. Again, not much i can do here for you. Paraphrasing myself the driver role in all data path is small. But to secure yourself, did you look in their FAQ? There is an answer section related to mounting problems.

 

upd2: Commented out scsi read(12) command with proper field-accessing. Added support for 64-bit lba (2 Tb+ support).

Anyone having issues with big disk arrays please test new version does it fix anything for you.

Share this post


Link to post
Share on other sites

Still following this thread with great interest...

 

 

But,.. what should i look for to determine whether a card will work or not?

Will this one work; DELL PERC H310

And,...is it possible to boot from it?

Share this post


Link to post
Share on other sites

what should i look for to determine whether a card will work or not?

You may look at README.

Will this one work; DELL PERC H310

And,...is it possible to boot from it?

This one should work. Yes it is.

Share this post


Link to post
Share on other sites

Commented out scsi read(12) command with proper field-accessing. Added support for 64-bit lba (2 Tb+ support).

Anyone having issues with big disk arrays please test new version does it fix anything for you.

 

Hello,

 

Have update today.

You mean single drive > 2 Tb or mount like me 3 x 2 Tb Raid 5 -> 4Tb ?

 

Have finished installation PowerEdge T410 booting from raid 1 with clover in legacy mode.(boot7) :)

 

Regards.

 

Fred

Edited by FredWst

Share this post


Link to post
Share on other sites

You mean single drive > 2 Tb or mount like me 3 x 2 Tb Raid 5 -> 4Tb ?

I think both schemes are OK. The limit should move from 2 Tb to 128 Pb from now.

Have finished installation PowerEdge T410 booting from raid 1 with clover in legacy mode.(boot7) :)

Good :)

Share this post


Link to post
Share on other sites

Any chance of getting mfiutil binary?

When i'll find time for that. It currently works, aside of broken linker sets, so it doesn't recognize user commands. I also need to write required part for driver in order to make this tool useful.

 

udp: Fixed the sets. Now the utility (see first post) is workable.

Share this post


Link to post
Share on other sites

Hi,

 

 

 

just wanted to let Dukzcry know i'm very grateful for this great project.

  • Got me a IBM m5014
  • Flashed it to the latest FW of a LSI 9260
  • Installed the driver
  • It works
  • I boot from the card
  • MSI enabled; speaking of which. I experienced some very strange behavior. Not from MSI but from DMA. After i installed/copied ML to the partition and started working on it and updating it, i ran into an issue. A very serious issue. I eventually started over. At a certain point i realized this behaviour was invoked by enabling write back and / or read ahead AFTER i installed the driver and was working with it. I did some comparative testing to verify and even a untouched partition was displaying problems because of this issue.
  • To put it short; MSI works/and performs better/more stable. (at least in my config) i7 - Asus P6T board.

i will be testing SSD Cachecade on this setup and migrating both windows and mac to new disks soon.

If there's anything worthy reporting, i'll let you know.

 

 

Thanks again!

Share this post


Link to post
Share on other sites

Hi, CycleBurns!

just wanted to let Dukzcry know i'm very grateful for this great project.

Thanks.

 

Can you put more on your issue with DMA? *Something* (what exactly?) happens right after you enable mentioned features? I have both "Adaptive Read Ahead" & "Write Back" options enabled and didn't run into issues.

Share this post


Link to post
Share on other sites

I'll try...

 

 

But bare with me, before this issue MSI was a board maker to me, nothing more.

I did read up on it, and it appears as if the DMA can get into some HW conflict (like the USB issue described before). I guess that depends on how good or bad your DSDT is. In any case... What happened was that my drives on the ICH10R ports would not mount. But are visible to the system. As a result the Tuxera NTFS driver would also yield some errors. The worst was that somehow my system disk (on the card) was also effected. I couldn't rebuild kernel caches, and when booting from another (not raid card partition) disk operations (repair, etc) on the raid partition would fail.

 

As i said before; it's quite simple to explain it in a generic way. Generic because of the diversity in DSDT's. What i do understand is that MSI is a not DMA related alternative way of doing some signaling. when using DMA the chance of conflicting seems higher.

 

As i recall;

 

I made 2 virtual disks.

i thought i enabled write back on both of them. This wasn't the case.

At first i left read ahead on normal (i don't have the adaptive option), after i changed it to read ahead.

 

 

So

  1. Driver install on 2 NOT raid card based partitions (SL & ML)
     
  2. Verified that it works.
     
  3. Cloned ML (10.8.2) to a virtual disk on the card
     
  4. Verified that it works.
     
  5. Updated to 10.8.3 - it still works, but i have some other 10.8.3 issues.
     
  6. Changed some behaviour on the raid card. everything is read ahead and write back now
     
  7. Trouble! It wasn't clear to me this was Raid related.
     
  8. Lot's of other fixes. tries to solve some issues (some of which prevented kextcaches to be rebuild)
     
  9. Wiped the faulty partition.
     
  10. Cloned it again.
     
  11. Now it gets interesting; Still or rather new strange disk related behaviour.
     
  12. verified this behaviour on Untouched partitions, when booted via the Raid virtual disk partitions boot loader.
     
  13. Changed to MSI on 1 partition.
     
  14. Verified the (positive) effect.
     
  15. Changed to MSI on a second partition.
     
  16. Verified the expected behaviour.
     
  17. Never looked back. MSI it is. Read up on MSI, what it does/is/replaces....
     
  18. Drew my conclusions!

I hope this helps!


Share this post


Link to post
Share on other sites

Thanks, now you cleared things for me. As for terms: DMA is direct memory access, this is the way how our raid controllers operate. Looks like you messed it with "legacy interrupts", the thingie now usually displaced with better-performed MSI on modern hw. I've updated readme long ago, it's suggests to try MSI in first:

Message signaled interrupts are deprefered by default (they don't work for PERC 6 owners according to their reports). I have them working with PERC 5 card. It is worth to try: just set "PreferMSI" key under "Settings" dictionary in kext's plist to "YES", if driver doesn't function correctly, revert back to "NO".

 

Okay, now what we have:

me, PERC5: both legacy interrupts & MSI behave; LSI firmware

FredWst & Black Knight, PERC6: legacy work, MSI broken; LSI firmware

CycleBurns, M5014: legacy broken, MSI work; LSI firmware

 

There are problems with interrupts on Xen/Linux too.

Share this post


Link to post
Share on other sites

Regarding Dell...

 

Let me share an experience

I tried to install a H310 in my box.

Doesn't work that well; Symptoms... My 12 GB turned into 8 GB.

And Triple Channel became Dual channel.

 

Your Perc. Did you do the well known SMbios 'fix/mod' on the card.

 

I have no experience with Dell (or any other card), but i know how to research and analyze. Dell seems to use a kind of proprietary 'bus allocation' to the memory, i would say.

 

BTW; I am not saying or suggesting the kext is wrong, since there are a million different DSDT's out there, and they could easily be the cause of malfunctioning legacy support.

 

My guess would be to cross translate / compare the DSDT's of the working and none working installs.

 

My only current mods

 

-AppleHDA

-DSDT

-SASMegaraid

-FakeSMC Kozlec (with data fix)

-r2189 Chameleon 2.2

And 1 AppleAPCIPlatform.kext

 

The rest is vanilla.

Share this post


Link to post
Share on other sites

 

 


Your Perc. Did you do the well known SMbios 'fix/mod' on the card.

No, didn't need it.

 

BTW; I am not saying or suggesting the kext is wrong, since there are a million different DSDT's out there, and they could easily be the cause of malfunctioning legacy support.

The kext can't be completely wrong for sure since it behaves, but can haz bugs and problems, like any software. Some were uncovered (thanks to people in this thread) and fixed.
Plus hardware & it's firmware may have dark corners too. For example, by link i provided:

 

To make matters worse, it appears that certain OEM firmware causes a
deadlock in the megaraid_sas probe function if you try to enable MSI
interrupts, which possibly explains why the driver never tries to enable
them in the first place (I have still not had any response from LSI)

BTW, as we figured out, it's not a DMA issue you had, so it's not much worry about. Since MSI work for you, stay on 'em, they will provide you will better I/O.

Share this post


Link to post
Share on other sites

Folks, i've added support of mfiutil to kexts. For those loving to compile everything by themselves: code is not yet pushed to github, please use binary distribution for now. You need to run that management util under root (or su/sudo). Manpage: mfiutil(8).

Share this post


Link to post
Share on other sites

Hey Dukzcry, I finally got a chance to test your driver with 64-bit LBA's and sadly, I still can't mount my 2.5TB hard drives. They still show up as 2.2TB and do not even show the data partition in Disk Utlity. They are both partitioned using GPT, but from Windows 8 rather than OSX. I don't know if this makes any difference. Any ideas?

Share this post


Link to post
Share on other sites

Actually, I'm not sure what happened, but after trying the latest driver with MSI enabled again and it being unsuccessful, I disabled it again and now all the drives are seen like they were before, but none of the NTFS partitions mount. I'm not even sure USB drives with NTFS mount. I'm not really sure what happened.

Share this post


Link to post
Share on other sites

Found a bug with interrupts which affects PPC controllers (PERC6 for example). Fixed, rebuilt and reuploaded kexts.

Black Knight: Could you please test the kext? You'll need to enable MSI in plist.

Share this post


Link to post
Share on other sites

Well, I have good news and bad news. The good news is that the MSI works and doesn't hang up the boot up like it did before. It doesn't interfere with USB or anything like before and all drives are seen by Disk Util and such, but I still can't mount any NTFS partitions. I think something happened to my NTFS driver or something. I'll try reapplying the 10.8.3 update to see if it fixes the problem. It is probably an issue with my computer, so MSI should work for others with PERC 6/i.

 

Actually, I take it back. After another reboot, I have the hangup again and no Parallel SCSI in System Profiler again. I guess MSI isn't working.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

  • Similar Content

    • By dukzcry
      This is kext for LSI MegaRAID SAS family of controllers
      Topic: https://www.insanelymac.com/forum/topic/285197-driver-for-lsi-megaraid-sas-family/
       
    • By Dallastyle
      Hello Insanelymac,
      I've successfully installed Mac OS X Sierra on 2 32gb flash drives with them as a JBOD Raid. I can only get into the hackintosh if I use another USB flash drive with Clover installed on it. I've tried using a clover installer however that just installs on my Raid Disk. I've also noticed that when I open clover configurator, there are 2 EFI partitions but both of them were empty. I've tried moving the contents of the EFI on my Raid disk that clover installed but my BIOS does not detect it. Also when I use the other flash drive to boot into clover, there is another volume called "BOOT OS X" right next to my Raid Disk Volume that I use to boot from. I just want to install and boot off of my Raid usb flash drives. Really running out of options, Thanks guys.
    • By Jarek Januszewski
      This project is actually two years old, but despite the aging SATA standard, still current as an idea.
      And of course - conforming hackintosh different thinking.
       
      I invite you to my shop for a short film of the "Do it yourself" series.
×