Jump to content
Mieze

IntelMausiEthernet.kext for Intel onboard LAN

896 posts in this topic

Recommended Posts

Over afp with Blackmagic Speedtest on my nas:

Read: 111,3 mb/s

Write: 109,9 mb/s

 

Edit:

smb is a little bit slower

Read: 109 mb/s

Write: 100 mb/s

Share this post


Link to post
Share on other sites
Advertisement

Well i have some new very positive feedback to give on this driver.

While the hnak driver had worked decently well in almost all the situations i used it (later versions with high load disconnect problems aside) there was one situation where it continued to have major issues, even after rolling back to stable versions, etc- I never much got into diagnosing the culprit of the issues, but in this particular case when sharing a volume from a particular machine with the hank driver- a macbook pro connecting to it would have good write speeds (around 100mb) but really bad reads (only about 50mb). More importantly is the driver would stall and require a reboot (quite often) when reading heavily from the share (outgoing traffic). In any case i have now swapped in the Mausi driver on this system and both read and write speeds are now well over 100MB and there have been no driver crashes or disconnects as there had been on the hnak recent releases.

 

Bravo Mieze!

g\

 

PS, as an aside i have this working perfectly on 4 different systems and counting...

Share this post


Link to post
Share on other sites

Installed the new version, and will monitor. Thank you for your continued work on the driver Mieze.  :thumbsup_anim:

Share this post


Link to post
Share on other sites

Apologies if this is going off-topic. I installed the 1.0.0d2 version of the driver and ran it for a while. Didn't notice anything odd. However, when I looked at the output from netstat I realised that this driver doesn't seem to do checksums in software.

 

Output from "netstat -s" after using the system for a while with the hnak driver:

ip:
    238317 total packets received
        0 bad header checksums
        219647 headers (4393268 bytes) checksummed in software
        ...
    212038 packets sent from this host
        ...
        195009 headers (3900208 bytes) checksummed in software

Output after using the system for a while with the mausi driver (similar network usage profile):

ip:
    411934 total packets received
        0 bad header checksums
        0 headers (0 bytes) checksummed in software
        ...
    382249 packets sent from this host
        ...
        75 headers (1508 bytes) checksummed in software

Now, I do admit that I don't understand the details. My assumption is that headers that are not checksummed in software are checksummed in hardware in the NIC, right? Is it a good thing that the Mausi driver does almost no checksumming in software?

Share this post


Link to post
Share on other sites

Now, I do admit that I don't understand the details. My assumption is that headers that are not checksummed in software are checksummed in hardware in the NIC, right? Is it a good thing that the Mausi driver does almost no checksumming in software?

 

Checksum calculation is expensive, in particular when the NIC is operating at full speed, so that it's best to offload this task to the NIC whenever possible. Checksum insertion and verification is done in software only for packets which can't be checksummed by the NIC.

 

Mieze

Share this post


Link to post
Share on other sites

Thanks for this new driver Mieze! Seems to be working fine in my Z68 (haven't really stressed it).

 

Can't try it on the X79 because of 10.6 but I don't use the ethernet on that as it's connected via wifi. It's the same 82579V anyway.

 

Update: Out of curiosity, I tried building it for 10.6. Got a few errors about kChecksumTCPIPv6 etc and found a post by RehabMan who had similar errors compiling your Realtek kext in 10.6. Used his hack (just the first step, no need for kernel detection as I built it solely for 10.6) and the kext compiled and loads fine on 10.6.8. I'll try wiring it up to something later and see if anything explodes.

Share this post


Link to post
Share on other sites

Update: Out of curiosity, I tried building it for 10.6. Got a few errors about kChecksumTCPIPv6 etc and found a post by RehabMan who had similar errors compiling your Realtek kext in 10.6. Used his hack (just the first step, no need for kernel detection as I built it solely for 10.6) and the kext compiled and loads fine on 10.6.8. I'll try wiring it up to something later and see if anything explodes.

 

In principle there is nothing except these constants which prevents the driver from building for 10.6 and I'm quite sure it will work on Snow Leopard too.

 

Mieze

Share this post


Link to post
Share on other sites

Update: Out of curiosity, I tried building it for 10.6. Got a few errors about kChecksumTCPIPv6 etc and found a post by RehabMan who had similar errors compiling your Realtek kext in 10.6. Used his hack (just the first step, no need for kernel detection as I built it solely for 10.6) and the kext compiled and loads fine on 10.6.8.

Can you explain please how you did it.. Thanks

Share this post


Link to post
Share on other sites

Can you explain please how you did it.. Thanks

 

Here's the post from RehabMan I mentioned. I just added the contents of the first section of his hack to IntelMausiEthernet.cpp (at line 101 for reference, although that was just a random placement).

 

In Xcode (4.6.3 running on 10.7.5) I added the 10.6 SDK (taken from Xcode 4.2 for Snow Leopard) and set the Base SDK and Deployment Target in the Xcode project to 10.6.

Share this post


Link to post
Share on other sites

Something seems to go bananas sometimes and I can't figure out what the root cause is. One of the few clues I have to go on is IntelMausi's logging:

Feb 16 10:36:31 kernel[0]: Ethernet [IntelMausi]: Restart stalled queue!Feb 16 10:36:31 kernel[0]: Ethernet [IntelMausi]: Not enough descriptors. Stalling.
Feb 16 10:36:31 kernel[0]: Ethernet [IntelMausi]: Restart stalled queue!
Feb 16 10:36:32 kernel[0]: Ethernet [IntelMausi]: Not enough descriptors. Stalling.
Feb 16 10:36:32 kernel[0]: Ethernet [IntelMausi]: Restart stalled queue!
Feb 16 10:36:32 kernel[0]: Ethernet [IntelMausi]: Not enough descriptors. Stalling.

I've noticed that sometimes the intel ethernet device doesn't present itself at boot, which then results in the window server not starting correctly. I have no idea what difference that would make in loginwindow but when en0 doesn't come up I get a graphical display and a pointer on the screen but no loginwindow. I can login remotely via ssh (I have a second interface (AppleYukon)) and see only one device (en1 (AppleYukon)) has been configured. Usually a shutdown and then rebooting it resolves the issue but I also removed Cisco AnyConnect and purged a kernel extension on my Clover EFI directory for my old Marvell ethernet yesterday after a couple of boots without en0 showing up and I don't know if either of those were related or simply coincidence. 

 

I've just remotely issued a reboot again because when IntelMausi was logging this error my local zpool started erroring (!) so I had to quickly export the pool as much as I could and offline the storage, I raised some of the values for files and processes per uid for sysctl — fseventsd and spotlight are currently losing their minds and I'm not at home to force a reboot so hopefully the I/O situation sorts out and my reboot request gets handled before anything else happens.

Share this post


Link to post
Share on other sites

Something seems to go bananas sometimes and I can't figure out what the root cause is. One of the few clues I have to go on is IntelMausi's logging:

Feb 16 10:36:31 kernel[0]: Ethernet [IntelMausi]: Restart stalled queue!Feb 16 10:36:31 kernel[0]: Ethernet [IntelMausi]: Not enough descriptors. Stalling.
Feb 16 10:36:31 kernel[0]: Ethernet [IntelMausi]: Restart stalled queue!
Feb 16 10:36:32 kernel[0]: Ethernet [IntelMausi]: Not enough descriptors. Stalling.
Feb 16 10:36:32 kernel[0]: Ethernet [IntelMausi]: Restart stalled queue!
Feb 16 10:36:32 kernel[0]: Ethernet [IntelMausi]: Not enough descriptors. Stalling.

I've noticed that sometimes the intel ethernet device doesn't present itself at boot, which then results in the window server not starting correctly. I have no idea what difference that would make in loginwindow but when en0 doesn't come up I get a graphical display and a pointer on the screen but no loginwindow. I can login remotely via ssh (I have a second interface (AppleYukon)) and see only one device (en1 (AppleYukon)) has been configured. Usually a shutdown and then rebooting it resolves the issue but I also removed Cisco AnyConnect and purged a kernel extension on my Clover EFI directory for my old Marvell ethernet yesterday after a couple of boots without en0 showing up and I don't know if either of those were related or simply coincidence. 

 

I've just remotely issued a reboot again because when IntelMausi was logging this error my local zpool started erroring (!) so I had to quickly export the pool as much as I could and offline the storage, I raised some of the values for files and processes per uid for sysctl — fseventsd and spotlight are currently losing their minds and I'm not at home to force a reboot so hopefully the I/O situation sorts out and my reboot request gets handled before anything else happens.

 

I see no evidence for a driver issue. Looks more like a misconfigured system. The driver has to stall the output queue when resources become exhausted. Obviously something is flooding the network stack with packets. Are you using some kind of file sharing software?

 

Check the kernel logs to find out what prevents the network interface from coming up and what prevents the login window from appearing because the login window doesn't depend on en0.

 

Mieze

Share this post


Link to post
Share on other sites

FYI... the d3 version has been working great for me over the last 5 days on my Lenovo T420. no worrisome messages.

 

saw the tx ring messages in the d2 version  - but have not seen these since i installed the d3 version

 

Feb 11 00:17:12 Toms-Mac kernel[0]: Ethernet [intelMausi]: Check tx ring for progress. txNumFreeDesc=2047

Feb 11 03:03:15 Toms-Mac kernel[0]: Ethernet [intelMausi]: Check tx ring for progress. txNumFreeDesc=2046

Feb 11 04:26:29 Toms-Mac kernel[0]: Ethernet [intelMausi]: Check tx ring for progress. txNumFreeDesc=2046

Feb 11 06:26:31 Toms-Mac kernel[0]: Ethernet [intelMausi]: Check tx ring for progress. txNumFreeDesc=2046

 
this is all i see now (upon reboot).
 
Feb 14 10:31:01 localhost kernel[0]: Ethernet [intelMausi]: TCP/IPv4 segmentation offload enabled.

Feb 14 10:31:01 localhost kernel[0]: Ethernet [intelMausi]: TCP/IPv6 segmentation offload enabled.

Feb 14 10:31:01 localhost kernel[0]: Ethernet [intelMausi]: TCP/IPv6 checksum offload enabled.

Feb 14 10:31:01 localhost kernel[0]: Ethernet [intelMausi]: Version 1.0.0d3 using max interrupt rate 7000.

Feb 14 10:31:01 localhost kernel[0]: Ethernet [intelMausi]: 82579LM (Rev. 4) at 0xffffff81089f5000, 00:21:cc:b5:5a:60

Feb 14 10:31:06 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link up on en0, 1-Gigabit, Full-duplex, Rx/Tx flow-control

Share this post


Link to post
Share on other sites

One thing I'm hitting occasionally is 

 

 

18/02/2015 01:25:28.000 kernel[0]: Ethernet [intelMausi]: Tx stalled? Resetting chipset. txDirtyDescIndex=209, IMS=0x80000080.

18/02/2015 01:25:28.000 kernel[0]: Ethernet [intelMausi]: Link down on en0

 

This time it occurred while I was loading my iTunes library from a Drobo (connected to a MacMini) over AFP and playing music, while at the same time running CoverScout (which is loading all the albums to detect missing covers). I've had it stutter playing the music and recover a couple of times, then it stopped. The traffic at the time was minimal (2-6MB/s) so its not that the link is saturated.

 

It also happened earlier this evening around when the screen went to sleep. (I left the computer for an hour, monitor sleep time set for 15 minutes, computer sleep time set to never) I had left iTunes open connected to a remote library, when I came back it was back to the local library. There was nothing useful in the log preceding it stalling.

17/02/2015 23:34:02.608 CallHistorySyncHelper[308]: notify name "ids-device-nearby-8868CB55-B857-401E-BF69-FC5AD23455F5" has been registered 40 times - this may be a leak
17/02/2015 23:34:02.608 CallHistorySyncHelper[308]: notify name "ids-device-nearby-064BF398-9BA8-4A3A-89FF-170DB57EB0D0" has been registered 40 times - this may be a leak
17/02/2015 23:34:15.000 kernel[0]: Ethernet [IntelMausi]: Tx stalled? Resetting chipset. txDirtyDescIndex=782, IMS=0x80000080.
17/02/2015 23:34:15.000 kernel[0]: Ethernet [IntelMausi]: Link down on en0
<snipped various services complaining that the link is gone>
17/02/2015 23:34:18.000 kernel[0]: Ethernet [IntelMausi]: Link up on en0, 1-Gigabit, Full-duplex, Rx/Tx flow-control

Any thoughts?

Share this post


Link to post
Share on other sites

@tarasis: Use the debug version to collect more data and send me the kernel logs showing the problem. It should also include the driver startup sequence and when the link goes up. It might be a power management issue or an unstable connection.

 

Mieze

Share this post


Link to post
Share on other sites

@tarasis: Use the debug version to collect more data and send me the kernel logs showing the problem. It should also include the driver startup sequence and when the link goes up. It might be a power management issue or an unstable connection.

 

Mieze

 

Will do, thanks Mieze.

 

-- Edit

 

Running debug version now, but not had it repeat the error yet. Will keep an eye on it.

 

I am seeing this occasionally in the log:

Feb 18 14:54:58 MacPC kernel[0]: Ethernet [IntelMausi]: Not enough descriptors. Stalling.
Feb 18 14:54:58 MacPC kernel[0]: Ethernet [IntelMausi]: Restart stalled queue!

Edited by tarasis

Share this post


Link to post
Share on other sites

 

Will do, thanks Mieze.

 

-- Edit

 

Running debug version now, but not had it repeat the error yet. Will keep an eye on it.

 

I am seeing this occasionally in the log:

Feb 18 14:54:58 MacPC kernel[0]: Ethernet [IntelMausi]: Not enough descriptors. Stalling.
Feb 18 14:54:58 MacPC kernel[0]: Ethernet [IntelMausi]: Restart stalled queue!

 

This is harmless but it looks like something is flooding the output queue with packets. Are you using any kind of file sharing software or anything special?

 

You might also run ifconfig in Terminal and check if EEE is enabled. I've seen problems with tx deadlocks due to EEE with the Realtek driver sometimes and I wouldn't be surprised when Intel is affected too. EEE can be disabled selecting the medium manually in System Preferences.

 

Mieze

Share this post


Link to post
Share on other sites

I don't appear to have EEE enabled.

MacPC:docsgen rob$ ifconfig
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> mtu 16384
	options=3<RXCSUM,TXCSUM>
	inet6 ::1 prefixlen 128 
	inet 127.0.0.1 netmask 0xff000000 
	inet6 fe80::1%lo0 prefixlen 64 scopeid 0x1 
	nd6 options=1<PERFORMNUD>
gif0: flags=8010<POINTOPOINT,MULTICAST> mtu 1280
stf0: flags=0<> mtu 1280
en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
	options=6b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4,TSO6>
	ether <snip> 
	inet6 <snip>%en0 prefixlen 64 scopeid 0x4 
	inet 192.168.0.38 netmask 0xffffff00 broadcast 192.168.0.255
	nd6 options=1<PERFORMNUD>
	media: autoselect (1000baseT <full-duplex,flow-control>)
	status: active

As to sharing apps, the only two running are Dropbox and the OwnCloud app.

Share this post


Link to post
Share on other sites

Mieze

- just i got the same thing tarisis reported on the 15th. happened last night.

 

the symptom is ethernet just stopped working.  so i ran sudo ifconfig en0 down ; sudo ifconfig en0 up 

it started working again. my gut is this may not be a driver issue - i.e. OSX stack issue? 

 

Feb 20 16:55:22 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 37 ResolverIntf:4

Feb 20 16:55:23 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 38 ResolverIntf:4

Feb 20 16:55:23 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 39 ResolverIntf:4

Feb 20 16:55:23 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 40 ResolverIntf:4

Feb 20 16:55:23 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 41 ResolverIntf:4

Feb 20 16:55:23 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 42 ResolverIntf:4

Feb 20 16:55:23 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 43 ResolverIntf:4

Feb 20 16:55:24 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 44 ResolverIntf:4

Feb 20 16:55:24 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 45 ResolverIntf:4

Feb 20 16:55:24 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 46 ResolverIntf:4

Feb 20 16:55:24 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 47 ResolverIntf:4

Feb 20 16:55:25 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 48 ResolverIntf:4

Feb 20 16:55:25 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 49 ResolverIntf:4

Feb 20 16:55:25 Toms-Mac.local discoveryd[54]: Basic DNSResolver UDNS Send(): UDP Sendto() failed to DNSNameServer 192.168.1.1 Port 53 errno 64, fd 86, ErrLogCount 50 ResolverIntf:4

Feb 20 16:55:36 Toms-Mac.local discoveryd[54]: Basic NATTServer Got control URL:  (ip)

Feb 20 16:55:52 --- last message repeated 1 time ---

Feb 20 16:55:52 Toms-Mac.local discoveryd[54]: Basic NATTServer,Warn connect failed 64 Host is down

Feb 20 16:56:08 Toms-Mac.local discoveryd[54]: Basic NATTServer Got control URL:  (ip)

Feb 20 16:56:29 --- last message repeated 1 time ---

Feb 20 16:56:29 Toms-Mac.local discoveryd[54]: Basic NATTServer,Warn connect failed 64 Host is down

Feb 20 16:56:44 Toms-Mac.local discoveryd[54]: Basic NATTServer Got control URL:  (ip)

Feb 20 16:56:49 Toms-Mac.local com.apple.iCloudHelper[2780]: AOSKit ERROR: Setup request failed, appleID=tjluckenbach@icloud.com, url=https://setup.icloud.com/setup/get_account_settings, requestHeaders=

{

    "Accept-Language" = "en-us";

    Authorization = "...";

    "X-APNS-Token" = ...;

    "X-Aos-Accept-Tos" = false;

    "X-Apple-ADSID" = "000022-05-32776fed-3b0b-4a38-8888-3257507fe1e9";

    "X-Mme-Client-Info" = "<MacBookPro8,1> <Mac OS X;10.10.3;14D72i> <com.apple.AOSKit/217 (com.apple.mail/8.2)>";

    "X-Mme-Country" = US;

    "X-Mme-Device-Id" = "80A91FC1-E94C-500E-91AD-EAABEC4E575A";

    "X-Mme-Timezone" = EST;

},

error=Error Domain=AOSErrorDomain Code=1000 "The operation couldn’t be completed. (AOSErrorDomain error 1000.)" UserInfo=0x7ff7eac0d9c0 {UnderlyingError=The request timed out., DialogInfo={

    DialogType = Unknown;

}}, httpStatusCode=-1, responseHeaders=

(null),

responseBody=

(null)

Feb 20 16:56:49 Toms-Mac.local com.apple.iCloudHelper[2780]: AOSKit ERROR: Failed to get mail props (doBypassCache=1, user=tjluckenbach@icloud.com, passwordProvided=0), accountInfoFound=0, mailDataclassInfo=

(null)

Feb 20 16:56:52 Toms-Mac.local discoveryd[54]: Basic NATTServer,Warn connect failed 64 Host is down

Feb 20 16:57:07 Toms-Mac.local discoveryd[54]: Basic NATTServer Got control URL:  (ip)

Feb 20 16:57:20 Toms-Mac.local Mail[3132]: AOSKit ERROR: XPC CLIENT: Connection [0x6000001f6c00] event handler received event with type: [XPC_TYPE_ERROR].  Description: [Connection interrupted]

Feb 20 16:57:20 Toms-Mac com.apple.iCloudHelper[3219]: objc[3219]: Class FALogging is implemented in both /System/Library/PrivateFrameworks/FamilyCircle.framework/Versions/A/FamilyCircle and /System/Library/PrivateFrameworks/FamilyNotification.framework/Versions/A/FamilyNotification. One of the two will be used. Which one is undefined.

Feb 20 16:57:20 Toms-Mac com.apple.xpc.launchd[1] (com.apple.imfoundation.IMRemoteURLConnectionAgent): The _DirtyJetsamMemoryLimit key is not available on this platform.

Feb 20 16:57:38 Toms-Mac.local discoveryd[54]: Basic NATTServer Got control URL:  (ip)

Feb 20 16:58:25 Toms-Mac.local discoveryd[54]: Basic NATTServer Got control URL:  (ip)

Feb 20 16:59:45 Toms-Mac.local discoveryd[54]: Basic NATTServer Got control URL:  (ip)

Feb 20 17:00:18 Toms-Mac.local ScreenSaverEngine[3220]: ### archList:(

    16777223

) --- 0

Feb 20 17:00:48 --- last message repeated 1 time ---

Feb 20 17:01:33 Toms-Mac.local discoveryd[54]: Basic DNSResolver  Re-Binding to random udp port 51844

Feb 20 17:02:08 Toms-Mac.local discoveryd[54]: Basic NATTServer Got control URL:  (ip)

Feb 20 17:02:56 Toms-Mac.local com.apple.iCloudHelper[3219]: AOSKit ERROR: Config request failed, url=https://setup.icloud.com/configurations/init, requestHeaders=

{

 

 

i looked through the log and network access things started going south around 16:15 and then apparently at 18:15 it then spit out these messages m

 

 

$ gzcat system.log.0.gz |grep -i ethernet

Feb 20 18:15:23 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link down on en0

Feb 20 18:15:29 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link up on en0, 1-Gigabit, Full-duplex, Rx/Tx flow-control

Feb 20 18:15:43 Toms-Mac kernel[0]: Ethernet [intelMausi]: Tx stalled? Resetting chipset. txDirtyDescIndex=445, IMS=0x80000080.

Feb 20 18:15:43 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link down on en0

Feb 20 18:15:48 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link up on en0, 1-Gigabit, Full-duplex, Rx/Tx flow-control

Share this post


Link to post
Share on other sites

i looked through the log and network access things started going south around 16:15 and then apparently at 18:15 it then spit out these messages m

 

 

$ gzcat system.log.0.gz |grep -i ethernet

Feb 20 18:15:23 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link down on en0

Feb 20 18:15:29 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link up on en0, 1-Gigabit, Full-duplex, Rx/Tx flow-control

Feb 20 18:15:43 Toms-Mac kernel[0]: Ethernet [intelMausi]: Tx stalled? Resetting chipset. txDirtyDescIndex=445, IMS=0x80000080.

Feb 20 18:15:43 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link down on en0

Feb 20 18:15:48 Toms-Mac kernel[0]: Ethernet [intelMausi]: Link up on en0, 1-Gigabit, Full-duplex, Rx/Tx flow-control

 

Well, there are two incidents and at least the first one (16:55 h ) doesn't seem to be related to the driver at all as there are no driver messages.

 

The second (18:15h) is clearly a driver/ethernet issue. It looks like the negotiated link parameters didn't result in a stable connection which causes these link up/down cycles. Try to select the medium manually. I would suggest 1Gbit, no flow control, no EEE as this is the most basic setting.

 

Mieze

Share this post


Link to post
Share on other sites

When I

 

@ mieze

When do you plan to integrate WOL?

 

Would be really great to have it.

 

After all the teething troubles have been fixed, which have priority of course, I will need about a day of full time work to implement and test it. Basically it depends on the amount of spare time I have during the next weeks.

 

:cat:

 

Mieze

Share this post


Link to post
Share on other sites

Tested on Lenovo T440s w/ Intel I218LM (8086:155A)

No issues noted.

en0: flags=8863<UP,BROADCAST,SMART,RUNNING,SIMPLEX,MULTICAST> mtu 1500
options=6b<RXCSUM,TXCSUM,VLAN_HWTAGGING,TSO4,TSO6>
ether 28:d2:44:b3:75:cd
inet6 fe80::2ad2:44ff:feb3:75cd%en0 prefixlen 64 scopeid 0x5
inet 10.10.10.110 netmask 0xffffff00 broadcast 10.10.10.255
nd6 options=1<PERFORMNUD>
media: autoselect (1000baseT <full-duplex,flow-control,energy-efficient-ethernet>)
status: active
I've not performed any performance testing so far but it seems to be working fine as a replacement for AppleIntelE1000e.kext
Feb 21 15:17:00 Eriks-MacBook-Air kernel[0]: Ethernet [IntelMausi]: TCP/IPv4 segmentation offload enabled.
Feb 21 15:17:00 Eriks-MacBook-Air kernel[0]: Ethernet [IntelMausi]: TCP/IPv6 segmentation offload enabled.
Feb 21 15:17:00 Eriks-MacBook-Air kernel[0]: Ethernet [IntelMausi]: TCP/IPv6 checksum offload enabled.
Feb 21 15:17:00 Eriks-MacBook-Air kernel[0]: Ethernet [IntelMausi]: Version 1.0.0d3 using max interrupt rate 7000.
Feb 21 15:17:01 Eriks-MacBook-Air kernel[0]: Ethernet [IntelMausi]: I218LM (Rev. 4) at 0xffffff81796a5000, 28:d2:44:b3:75:cd
Feb 21 15:17:44 Eriks-MacBook-Air kernel[0]: Ethernet [IntelMausi]: Link up on en0, 1-Gigabit, Full-duplex, Rx/Tx flow-control

 

Share this post


Link to post
Share on other sites

Hi 

I just gave the driver a try 'cause of those big-data-transfer-problems with hnak's intel1000e.

 

Good news first: it works well, transfer speed is very good - but i got a weird problem: safari always crashes!

I rechecked it with i1000e re-installed (checked kextstat that the correct driver is loaded) no safari crash  - checked again with mausi-driver: safari crashed. Any other browser (firefox, chrome) did work...

 

I installed the driver on a yosemite 10.10.2 using "clover bootloader" on a Gigabyte H87 MB. Now I'd like to contribute to troubleshooting, but frankly I don't know how.

 

cheers

roh7

 

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

  • Similar Content

    • By Bahaa
      Need help here
      My graphic card is detached 7mb
      and I try a lot of solution and no one work 
      can any one help
       

    • By Angelo_
      Just recently installed Mojave on my yoga 730(i5-8250u, 8gb of ram and 1080p 13.3" touchscreen) and got many features working, now the only issues are that my igpu is shown as only 7mb(and not metal capable, not sure whether it is or not) even tho I should've changed it from 5917 to 5916 (added both EFI folder and send me), the screen is shown as a 30.5" in system information and the cpu even tho I extracted the ssdt for it with ssdtPRGen.sh and appleintelinfo.kext to get low frequency info (ssdt was done with info 15,400,1600,3400 so it should go between 16-3400mhz and down to 400 in idle), idk what is wrong with my installation, can you guys help me or linke me something to fix those issues?
       
      Ps thunderbolt shows as no device found, is it regular for hackintoshes to be that way or do I need something for that too? Laptop has 2 tb3 ports as x4 pcie 3
      EFI.zip
      Send me Angeloss-MacBook-Pro.zip
    • By Gymnae
      Introduction
      The H370 chipset powers 8th generation Intel Core-i CPUs. Even though the name H370 rings comparable to Z370, the H370 is based on newer silicon. This it also requires some new approaches compared to the Z370. An example would be on-die USB 3.1 and WiFi support.
       
      Since this guide is not a "hold-your-hand-every-step" guide, I assume you know:
      Clover installation and configuration How to create an install medium for MacOS Access and configure the BIOS Have heard of ACPI patching (I'm a newb at this myself)  
      What works
      Sleep (via DSDT edits and emulated NVRAM) On-board Audio (via AppleALC and native AppleHDA) Native power management (without any kext or patch) All USB ports (and only those present are active) iGPU for both acceleration and display dGPU (I'm running an Nvidia GTX 1080)  
      Untested
      NIC --> I'm using WiFi only  
      What doesn't work
      Native NVRAM via AptioMemoryFix.efi DMVT Pre-alloc higher than 64MB (but not necessary)  
      Community additions
      User @Panzerschiffe added a helpful post, altering this guide for user with AMD cards and not needing on-board sound.
      He also runs Mojave, which I don't run yet.
       
       
      Changes to the guide:
      22.5.18: Added SSDT hot-patching to enable sleep, replacing DSDT static patching as an alternative.
      23.5.18: Add iMac18,1 as alternative SMBIOS config for those relying on the iGPU for output
      25.6.18: Added update info
      28.8.18: Small changes for clarity, changed info for afps loading & updated USB patch for 13.6
      04.10.18: Update to Mojave will come once Mojave is more mature
      02.12.18: Removed unnecessary patches, fakepciid and audio patch method & linked to AMD post & added whatevergreen.kext as replacement for previous GPU kexts
      02.03.19: Removed unnecessary fakeid and ig_platform_id injections, ACPI patches - this is all handled by whatevergreen & lilu. In testing is a Framebuffer patch, see this post.
      04.03.19: Added Germany keyboard layout and updated pre-patched DSDT.aml removed DSDT patching
       
       
      1. Installation
      This guide heavy inspired by the work of /u/corpnewt of /r/hackintosh and his (sorta) Vanilla guide
       
      1.1 Create the install media for MacOS
      Follow this, if you are using a Mac to start off with. If you are totally new to MacOS, then please check the basic guide Creation of an installer media in windows or linux
       
      1.2 Install Clover on the install media
      Using the Clover installer, ensure you are installing to the USB medium you are using for the installer.
      Chose the following options, leaving the others on default: 
       
      UEFI driver: AptioMemoryFix UEFI driver: ApfsDriverLoader UEFI booting only Install to ESP  
      You have to get your hands on an apfs.efi. A google search can help, or extracting it from the Installer package. Make sure you procure a version matching the MacOS version you are about to install. Place the apfs.efi in drivers64UEFI.
       
      1.2 Adjust the config.plist for the installer
      You can use the config.plist attached as a guideline, but take a look at it before and at least adjust the SMBIOS - otherwise it won't boot.
      Attention: The attached plist contains audio patches introduced by a post-install step. If you run into problems, you might remove those. It also contains a manual slide value, which should normally not be needed, but works fine for me. It is also tuned for usage with an Nvidia Pascal dGPU as main GPU.
       
      The config you create now should serve you nicely for install and running the system.
       
      Take care of adding the following basics:
      SMBIOS: iMac18,3 - You can generate a serial number via Clover Configurator. The creation of a proper SMBIOS is covered in many guides to good extend Note: If you aim at using the iGPU for output, a user reported that iMac18,1 works better - since iMac18,3 produces severe flicker. I'm now also testing 18,1 Look at the graphics section and adjust the injection for Intel to your situation  
      Fixes

      Patches

      Devices

      Graphics
      Important:
      Change 0x59120003 to 0x59120000 if you don't use a dGPU as your main display Driver and instead use the iGPU for output.
      Also note. SMBIOS iMac18,1 has been reported to work better in this configuration. But 18,3 works fine for me.

      Kernel and Kext patches
       
      1.3 kexts and friends
      Add the supplied SSDT-UAIC.aml to "patched" - it limits the injected USB Ports to the actual number and ports valid for this board.
       
      Required kexts on "Other":
      FakeSMC.kext Whatevergreen.kext Lilu.kext AppleALC.kext IntelMausiEthernet.kext in case you're running Ethernet USBInjectAll.kext with the HCI-300-series-injector.kext --> These two should be installed to /L/E after install  
      We are leaving sound out at the moment, this is something for post-install.
       
      1.4 Check BIOS and install
      You should be ready for install. But before you reboot, please take a look at your BIOS and set it up accordingly (copied from the aforementioned guide and adapted):
      Load Optimized Defaults Disable VT-d setting If your system has Secure Boot Mode, disable it Enable CSM - This is sometimes needed to dual screens to work Set OS Type to Windows 8/10 or OtherOS - I have not seen a difference Turn off internal Serial and Parallel port Turn off Network stack for boot Turn off wake-on-lan (for now) Set XHCI Handoff to enabled Don't enable decode over 4G Depending on your GPU, set priority for boot Set internal GPU (iGPU) to enable - not auto or disabled Set DMVT pre-alloc min to 64MB and max to 128MB. For this selection to appear you might need to reboot after setting iGPU to enable Set USB legacy to enabled Activate XMP profile 1 f your Ram has it (mine doesn't and I added the timings manually) Set ERP to enable, disable platform power management (I need to do more research if this could be enabled)  
      I've attached my current BIOS config "hack2". You can place that on a fat32 drive (the EFI partition of your install USB drive might be an idea) and see if it loads. It's made for and with the F2 BIOS.
       
      The install itself should be like other MacOS Hackintosh installs with it several reboots and ensuring to select the correct boot device in Clover.
       
      2. Post-install
       
      2.1 Install clover on target
      This is a no-brainer, but install a fresh copy of Clover on your target medium.
       
      During install select again AptioMemoryFix but also additionally
      EmuVariableUefi-64.efi Install RC scripts on target volume because otherwise NVRAM doesn't seem to work
       
      After the install, copy
      config.plist contents of "Other" content of "patched" to your new clover install.
       
      2.2 Edit ACPI for slumber
      Choose one option, not both. The hot-patch is experimental, but for the moment it is stable.
       
      2.2.1 Edit DSDT
      No more need for manual DSDT patching. If you still do it, you might run into unstable sleep. SSDT hot-patching + sane clover.config edits are enough
       
      This is necessary only once on initial install and every time, you edit or upgrade the BIOS. The DSDT.aml attached to this post might work for your system or give you a file to compare to. Don't expect it to work for you, though.
      EDIT: Since moving from F2 BIOS to F12 I did not repatch and sleep is still somewhat reliable. But to be 100% sure, you can still follow these steps.
      I won't go into the details of DSDT extraction and patching. There are better guides (the linked guide is a rip-off of rehabman's guide from a different forum). Please follow such a guide to extract your ACPI data.
       
      Locate and disassemble the DSDT with the newest iasl binary you can put your hands on, then open it with MacIASL in its newest version you can find (Hint: Here is a good source) You can check if the version is new enough if MacIASL doesn't throw error upon compiling a freshly extracted DSDT.aml or DSDT.dst
       
      Add rehabmans repo (as per linked guide) and apply the following patches:
      Rename _DSM to _XDSM Fix _WAK Arg0 v2 USB3 _PRW 0x6D Skylake (instant wake) Find the CNVW device and remove the _PWR function there.
       
      Compile the DSDT and place it in "patched".
       
      2.2.2 Use SSDT hot-patching
      Instead of having to re-extract and re-patch the DSDT on every BIOS change or update, Hardware change one can also use ACPI hot-patching.
      It's a combination of config.plist patches and an SSDT, which is hot-patched into the ACPI (if I understand the process correctly)
       
      You need to add this SSDT-GPRW.aml to your Clover folder in the designated position at Clover/ACPI/patched You need to add this patch to your config.plist. It goes into the DSDT patch section  
      Note: This works for me, but the patch removes the _PRW method from all devices in the DSDT. This could have side-effects. So far, I have seen none. At the moment I'm also not applying any other patch, compared with the additional edits I made to the DSDT method before.
       
      2.3 Install kexts to system
      As mentioned in the install section, it's better to follow rehabman's instruction and install USBinjectAll.kext to /L/E:
      sudo cp -R Release/USBInjectAll.kext /Library/Extensions sudo touch /System/Library/Extensions && sudo kextcache -u / 2.4 Enable onboard Audio - Install AppleALC kext
      Make sure your EFI partition is mounted and that you have a vanilla AppleHDA kext available. See below for a guide how to get a vanilla AppleHDA if needed
      Note: Our Audio codec is ALC887 and it's running with layout ID 1.
      Download the newest AppleALC kext from here and install it together with lilu.kext from here into your usual /clover/kexts/others location. Done. No scripts or config.plist patches necessary.
      Add layout ID 1 to config.plist, if it's not there yet:
      <key>Audio</key> <dict> <key>Inject</key> <integer>1</integer> <key>ResetHDA</key> <true/> </dict> If you previously  installed any  audio patches, please follow this guide to "vanilla-ize" your install.
       
      2.5 Optional steps for Graphics
      If you have a dGPU, now it's the time to install its drivers and adjust the config.plist for it. The detaisl are specific to your GPU and thus of scope of this guide. Yet, my supplied config.plist is ready to be used with Nvidia Pascal cards and using the Nvidia web driver.
      Whatevergreen.kext helps with Intel iGPU and NVIDIA dGPU fixes.
       
      At the moment I'm also testing out a special bootflag: 'shikigva=12' to enable faster rendering in Final Cut Pro X. Without whatevergreen.kext and a shikigva bootflag, rendering in final cut seem very slow.
       
      2.5.1 Framebuffers
      If you're facing problems with output from your internal GPU, you can try the framebuffer patches listed by @BackwardMac:
       
      2.6 Install a proper keyboard layout
      You might not be using a fancy Apple branded keyboard. If you use a PC keyboard, you might be annoyed by the differing layout and usage of keys. As a German, you might find yourself quitting applications, since alt gr + Q won't add an @, but quit your current application. To fix this, you can simply install a different keyboard layout. Copy it to /Library/Keyboard Layouts/ and chose the layout in System Preferences, Keyboard in the section "Other". Deleting the previously selecting layout makes sure that only this one is used. Nice little trick.
       
      A keyboard layout for German keyboards is attached and works wonders
       
      3. Updating
      Updating inside 10.3.x/ 10.4.x point updates doesn't require much attention:
      Download the update from the AppStore as any Mac would do Allow the system to reboot Before booting MacOS with Clover, make sure to disable extra drivers for dGPUs which require non-native support. If using an Nvidia dGPU: Remove "nvda_drv=1"  from your boot arguments and disable Nvidia injection If using a non natively supported AMD card, do the same for AMD (I'm not using AMD, thus I cannot be specific) Boot into the newly created Install MacOS partition Repeat this process until the Install partition is gone Boot MacOS again, still following 3., and potentially install updated drivers Your Audio might require re-patching  
      4. ToDo
      Move away from static DSDT patching to SSDT hotpatching --> requires my work Native NVRAM --> requires developer work Audio without AppleHDA patching --> requires developer work  
      5. Thanks to
      @MaLd0nfor helping finding the right way with the DSDT
      @RehabMan, for being a legend and helping me out patching
      @toleda, for audio patches for the 300 series
      /u/corpnewt, for his superb vanilla guide
      @wmchris for his super XPS 9550 guide and introducing me to hot-patching
      @Panzerschiffe for his addition to this guide
      all the developers of clover and it's awesomeness
       
      SSDT-UIAC.aml
       
       
       
      win-germany.keylayout
       
    • By PixelLover
      I'm in the middle of my first hackintosh (High Sierra) on my ZenBook Pro UX501VW-US71 laptop using the Vanilla Install. I've tried using different config.plst files and I've gotten the furthest with RehabMan's own (linked here). It hangs at error message IOConsoleUsers: gIOScreenLockState 3, hs 0, bs 0, now 0, sm 0x0.   Can anyone help me figure out what changes to make to the config.plst file for my specific laptop (which is where I assume the problem lies)   System Specs: Intel Skylake Core i7­-6700HQ 2.6 GHz Quad­core
      Intel® HD Graphics 530 Nvidia GTX 960M 2G 15.6" Touch IPS 4K Ultra­-HD display, 3840 x 2160 resolution   Kexts: AppleALC.kext FakeSMC.kext Lilu.kext USBInjectAll.kext WhateverGreen.kext  
    • By grisno
      Hi people,
       
      Installer to activate the sound card REALTEK ALC282-v2 (10ec:0282) with LayoutID 1 or 3 in MacOS. This installer does not contain AppleHDA patched Kext. To work properly, it must be installed over vanilla AppleHDA.kext.
       
      I want to thank the whole community for their efforts and content provided, because without these it would not be possible to create this installer.
       
      I would appreciate comments and suggestions!!
       
      Status:
      Speakers : OK Headphones : OK HDMI Audio : OK (Intel HD4K Tested) LineIn : N/A (Model Without LineIn) MicInt : OK MicIntNoiseReduction : OK MicExt : N/A (Model Without MicExt) AutoDetectLineIn : N/A (Model Without LineIn) Sleep : OK WakeUp : OK AutoSleep : OK Hibernate : OK Siri : OK   Tested Laptops:
       
      - HP Pavillion 15-D002SS
       
      Coming Soon:
       
      - Unified installer for the different supported operating systems.
      - Support model with LineIn jack.
       
      Modified Verbs:
      01271C20 01271D00 01271EA0 01271F90 01471C10 01471D00 01471E17 01471F90 01871CF0 01871D00 01871E00 01871F40 01E71CF0 01E71D00 01E71E00 01E71F40 02171C30 02171D10 02171E21 02171F00 01470C02   DSDT:
       
      Patch to apply with MaciASL in your DSDT
      ######################################### HDEF v1.00######################################## into method label _DSM parent_label HDEF remove_entry;into device label HDEF insertbeginMethod (_DSM, 4, NotSerialized)\n{\n If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n Return (Package()\n {\n "layout-id", Buffer() { 0x01, 0x00, 0x00, 0x00 },\n //"layout-id", Buffer() { 0x03, 0x00, 0x00, 0x00 },\n "hda-gfx", Buffer() { "onboard-1" },\n "PinConfigurations", Buffer() { },\n })\n}\nend;  
×