Jump to content

New Driver for Realtek RTL8111


Mieze
1,592 posts in this topic

Recommended Posts

 

Just tested with your version of driver and I got the same issue.

When experiencing performance issues, there are a few facts you should know:

  1. When there is a performance asymmetry between write and read speed (read is much faster than write), this is usually a problem with TSO. You might want to disable TSO on the Mac or fix the configuration of the station on the other end (increase the TCP buffer size or the number of RSS queues). Another reason for TSO related problems could be packet loss or high latency values (in particular when using Wifi).
  2. With gigabit connections the interrupt mitigate value might also be a reason for performance problems. Try to set it to 24401 (=0x5f51) and see if it helps.
  3. Try to disable EEE as compatibility issues between the NIC and the switch might degrade network performance too.

Mieze

 

I'm not a coder or anything but not afraid of a few terminal commands. Could you tell me how to do this? Google isn’t helping me :-(

Link to comment
Share on other sites

I'm not a coder or anything but not afraid of a few terminal commands. Could you tell me how to do this? Google isn’t helping me :-(

 

See post number 1 of this thread. TSO, interrupt mitigate and EEE can be changed in the driver's Info.plist. Don't forget to recreate the kernel cache after changing values.

 

Mieze

Link to comment
Share on other sites

Okay. I disabled EEE, TS04, TS06, and set the mitigate vale to 24401 but no luck. I still get slow write speeds and now the read speed slowed to 76.

 

I ran kext utility and deleted the en0 instance after I installed.

 

I did the same using RehabMan's kext.

Link to comment
Share on other sites

Okay. I disabled EEE, TS04, TS06, and set the mitigate vale to 24401 but no luck. I still get slow write speeds and now the read speed slowed to 76.

 

I ran kext utility and deleted the en0 instance after I installed.

 

I did the same using RehabMan's kext.

Outta curiosity, did you try the driver provided by realtek?

Link to comment
Share on other sites

Okay. I disabled EEE, TS04, TS06, and set the mitigate vale to 24401 but no luck. I still get slow write speeds and now the read speed slowed to 76.

 

I ran kext utility and deleted the en0 instance after I installed.

 

I did the same using RehabMan's kext.

 

Tell me more about the machine on the other end. Which OS and NIC has it?

 

Mieze

Link to comment
Share on other sites

Tell me more about the machine on the other end. Which OS and NIC has it?

 

Mieze

 

I've done some more testing. I've used three versions of the driver: Mieze, RehabMan, and Lnx2Mac. All three do pretty much the same thing. Slow write speeds, great read speeds.

 

I've tested the speeds to a desktop PC and a HP dv1130us laptop. Speeds between the two Windows machines (both running Windows 7 Home) are perfect. About 80 write, 90 read. More oddly, if I initiate LAN Speed Test from either Windows machine to the Mac, speeds are 80-90. (Wired connection to the desktop and wireless to the HP laptop.) Oddly, I get 11 Mbs/sec write speeds testing from the Mac to the wireless (N) connection on the laptop.

 

Mieze, the NIC on the PC is  Realtek 8111E. It is on the MSI 760GMA-P34-FX motherboard.

 

My process BTW is to 1) delete the kext from the Clover kext folder.

2) Copy the new one to that folder

3) Run Kext Utilty

4) Delete en0 from Network

5) Reboot

6) Add en0 back

 

Other than this odd issue, all three drivers seem to work fine, i.e. using Internet, watching videos, etc. I haven't necessary seen odd slow downs-I donlt think. that is why I started down this testing road and found the issue I did :)

 

Thank you for all your help and guidance everyone. Your hard work is very much appreciated.

Link to comment
Share on other sites

@dr hurt - thanks for the link to the realtek site.  surprise! that (old) driver seems to be stable for me under 10.10.2 on my H61-USB3 system.   all the other versions (slice, hhak, mieze, rehabman) will hang after 10-15 minutes on Yosemite. Note: all these others do work just fine under Mavericks 10.9.5 though. Anyway,  and I am running this box on a 100base-T network (off my wireless extender) ...  so i don't need TSO or anything "fancy".  I did buy an alternative  USB3 to GigE port that is working on yosemite too. but its good to have the native port as well.

 

I had a similar experience with my laptop where all the newer 2.5 and 3.x versions for the Intel E1000e card hang after a short while.  But an older version (less featured) is the only one that is stable... 

Link to comment
Share on other sites

@dr hurt - thanks for the link to the realtek site.  surprise! that (old) driver seems to be stable for me under 10.10.2 on my H61-USB3 system.   all the other versions (slice, hhak, mieze, rehabman) will hang after 10-15 minutes on Yosemite. Note: all these others do work just fine under Mavericks 10.9.5 though. Anyway,  and I am running this box on a 100base-T network (off my wireless extender) ...  so i don't need TSO or anything "fancy".  I did buy an alternative  USB3 to GigE port that is working on yosemite too. but its good to have the native port as well.

 

I had a similar experience with my laptop where all the newer 2.5 and 3.x versions for the Intel E1000e card hang after a short while.  But an older version (less featured) is the only one that is stable... 

 

Please stop blaming all these innocent drivers because you are on a completely wrong track. The drivers work fine, but Yosemite's network stack is broken and the cause of all those troubles. It happens even with Apple provided driver's. Although reinstalling the driver sometimes seems to fix the problem, there is only one 100% working solution to get rid of this issue: get back to Mavericks.

 

Mieze

I've done some more testing. I've used three versions of the driver: Mieze, RehabMan, and Lnx2Mac. All three do pretty much the same thing. Slow write speeds, great read speeds.

 

I've tested the speeds to a desktop PC and a HP dv1130us laptop. Speeds between the two Windows machines (both running Windows 7 Home) are perfect. About 80 write, 90 read. More oddly, if I initiate LAN Speed Test from either Windows machine to the Mac, speeds are 80-90. (Wired connection to the desktop and wireless to the HP laptop.) Oddly, I get 11 Mbs/sec write speeds testing from the Mac to the wireless (N) connection on the laptop.

 

Mieze, the NIC on the PC is  Realtek 8111E. It is on the MSI 760GMA-P34-FX motherboard.

 

On the Win7 machine check the network connections settings. I don't have access to a Windows machine at the moment, but there should be some RSS related options, for example the number of queues. You might try to increase the number of RSS queues in order to make the NIC more responsive. Although I haven't tested this with a Realtek NIC on Windows 7, it helped to resolve performance issues with Intel NICs.

 

Mieze

  • Like 1
Link to comment
Share on other sites

I did not mean to disrespect or blame anyone. I was merely reporting my observation because it kinnda surprised me.

 

I really appreciate your work on this driver and the excellent driver for the rtl8100 series.

Link to comment
Share on other sites

I did not mean to disrespect or blame anyone. I was merely reporting my observation because it kinnda surprised me.

 

I really appreciate your work on this driver and the excellent driver for the rtl8100 series.

 

 

I didn't interpret it as disrespect for anyone or anything, it was just a metaphor, a joke, in order to express that you are on the wrong track. Technically speaking a driver neither can be guilty nor innocent.

 

:cat:

  • Like 1
Link to comment
Share on other sites

On the Win7 machine check the network connections settings. I don't have access to a Windows machine at the moment, but there should be some RSS related options, for example the number of queues. You might try to increase the number of RSS queues in order to make the NIC more responsive. Although I haven't tested this with a Realtek NIC on Windows 7, it helped to resolve performance issues with Intel NICs.

 

Mieze

 

Not entirely sure what I am looking for here. If i go to Device Manager>Realtek PCIe GBE Family Controller>Advanced> I see an option labeled Receive Side Scaling which is Enabled. Receive Buffers value is 512. Transmit Buffers value is 128.

 

Not sure I understand concerning responsivesness. Checking speeds to and from two PCs is fast, as is PC to Mac. It is only on the Mac side that the write speeds to a PC is slow.

Link to comment
Share on other sites

I just recieved a brand new retina MBP for setup from a friend and it has the exact same disconnection problems and slowness that I had with my hackintosh.

 

After a two minute research I saw that there are many genuine mac-users having issues with Yosemite (btw. Why isn't it spoken the same way than Vegemite?!) ... Yes and the complete Mac community has no answer on how to fix it. I got better results on the MBP after setting 8.8.8.8 as a fixed DNS in the system, because Console.app was complaining about problems.

 

Anyway, thanks to the flexibility and creative coders of the hackintosh scene, it seems that hacks have less issues than real macs atm — what makes Insanelymac and it's members hmm... kind of better support-people than Apple itself. Well, eat this! Tim Cook :D

 

@Dr. Hurt:

Thanks for pointing me on the original 10.7. driver from the Realtek site :) It is definitely much faster on SMB, but has no WOL or AFP working on my hack. It also gives my machine a funny number like iMAC827464892 or something :) So it is fast (what is good for Streaming videos and VNC) but it has other issues.

 

Anyway, I'm feeling lucky with letting the connection issues behind me. Perhaps we should recommend the genuine Macintosh community the workaround with the beta IONetworkingfamily .kext.

 

Another workaround would (wild guess) maybe be to open a sudo terminal window and just ping an adress and let it do this to keep the interface busy. ?

  • Like 3
Link to comment
Share on other sites

i was about to sign off for 3 months, so that i can finish some App that i was working on.

but i do need to add my 2 cents.

 

I have the following PC,

Gateway notebook ID49D04h, with first gen HD graphic, 

GA-EP43 using ATI6450, 5450, 8600gts, now GT630

AMD-MA785 with P-II x940, on 7600GS, 8600GT, now 8600GTS

Acer UEFI pc with GT630, i7 4770

 

i had been using Mieze Kext for few month (or more than 1 year, do not remember, i m an old man)

 

My observation (using both OEM Realtek Kext and MIEZE kext) are as the following:

 

 

- if you have a new pc, chance are rt. ver G,  only mieze kext will work. (search this forum, will proof this point)

- Realtek do works better on older machine vs old meize's  kext,  but not better than the current version.

- On AMD 10.9+ mieze's kext work's better than Realtek,

- On old intel machine, no difference.

- on 10.10 beta and public beta,  you will have kp when using Transmission with realtek kext,

 

new on 10.10.1,  ONLY MIEZE 's kext will work on Rtl Ver G and without kp while running transmission.


If you do kp, while using Mieze's  kext with transmission.

 

qBittorrent, is a replacement for that.

 

qBittorrent will crash, but no kp.

  • Like 1
Link to comment
Share on other sites

  • 3 weeks later...

Mieze,  please continue with you good work and disregard any noise from here, onward.

 

Appear to me, there are lot and a lot of story tellers, here.

 

I will check, "like this", five times myself.

Link to comment
Share on other sites

FYI ... Andy Vandijck's revised driver is working well for me on Yosemite. I have an RTL-8168E.

 

Realtek RTL8168E-VL/8111E-VL PCI Express Gigabit Ethernet:

 

  Name: ethernet

  Type: Ethernet

  Bus: PCI

  Slot: Ethernet

  Vendor ID: 0x10ec

  Device ID: 0x8168

  Subsystem Vendor ID: 0x1458

  Subsystem ID: 0xe000

  Revision ID: 0x0006

  Link Width: x1

  BSD name: en0

  Kext name: RealtekRTL8111.kext

  Location: /System/Library/Extensions/RealtekRTL8111.kext

  Version: 1.3.5

Link to comment
Share on other sites

Mieze,  please continue with you good work and disregard any noise from here, onward.

 

Appear to me, there are lot and a lot of story tellers, here.

 

I will check, "like this", five times myself.

 

I'm aware of Realtek's latest Linux driver sources but for the time being I see no reason to update the driver because it is working well with all supported OS X versions and NICs being available:

  • EEE is already supported.
  • Version 1.2.3 of my driver includes support for the RTL8111EP.
  • There are no hackintoshable mainboards with RTL8111H available, at least here in Germany.
  • As DASH is a management technology like Intel's AMT, there is really no need for it, because Hackintoshs are normally used at home and not in big companies where hundreds of machines have to be maintained. By the way, the BIOS of most mainboards doesn't support DASH, the only ones I know are some MSI boards with DASH in their name, so that it makes no sense to add it to the driver.

Mieze  :cat:

Link to comment
Share on other sites

FYI ... Andy Vandijck's revised driver is working well for me on Yosemite. I have an RTL-8168E.

 

I checked his code and I really can't recommend it because he doesn't know what he is doing. In fact there is almost no improvement but messing with the MAC address will break LACP support.

 

Mieze

  • Like 3
Link to comment
Share on other sites

Mieze,

 

Could you please add support for the RTL8110 Gigabit Ethernet (8167-10ec)?

 

I added the device I'd to the info.plist of your kext but ended up with the following error:

kernel[0]: Ethernet [RealtekRTL8111]: region #2 not an MMIO resource, aborting.

PS. The driver provided by realtek has the device id and loads, but the ethernet is stuck with a self assigned ip and cannot connect to internet. Manually assigning IP says connected but doesn't work.

 

PS. 2 Windows too appears to be using the same 8168 driver for it so I think the chipsets are close enough to be supported by this driver.

Link to comment
Share on other sites

Mieze,

 

Could you please add support for the RTL8110 Gigabit Ethernet (8167-10ec)?

 

I added the device I'd to the info.plist of your kext but ended up with the following error:

 

PS. The driver provided by realtek has the device id and loads, but the ethernet is stuck with a self assigned ip and cannot connect to internet. Manually assigning IP says connected but doesn't work.

 

PS. 2 Windows too appears to be using the same 8168 driver for it so I think the chipsets are close enough to be supported by this driver.

 

No, sorry this isn't possible as the underlying Linux driver only supports PCIe devices and the RTL8110 is a PCI device. Besides that writing an OS X driver for a PCI NIC is completely different, as those 32bit devices can't do DMA operations with 64 bit addresses.

 

Mieze

  • Like 1
Link to comment
Share on other sites

No, sorry this isn't possible as the underlying Linux driver only supports PCIe devices and the RTL8110 is a PCI device. Besides that writing an OS X driver for a PCI NIC is completely different, as those 32bit devices can't do DMA operations with 64 bit addresses.

 

Mieze

 

Ouch!!

Well, I contacted Realtek to see if they can update their PowerPC PCI ethernet driver to support recent Intel Macs. I wonder if they would actually listen (or if its technically possible). I'll keep you updated.

 

I suppose that this means that even an RTL8111 ethernet card connected via PCI won't work with your driver?!

Link to comment
Share on other sites

I suppose that this means that even an RTL8111 ethernet card connected via PCI won't work with your driver?!

 

Exactly, because the 32 bit PCI bus can't do 64 bit addressing but you'll have a hard time to find such a card for economical reasons. With regard to the logical structure PCIe is based on PCI, but the electrical implementation is completely different which makes it impossible to connect a PCIe device to a PCI bus and vice versa. You'll have to put a PCIe-to-PCI-Bridge in-between making it impossible to manufacture cheap add-in cards.

 

Mieze  :cat:

Link to comment
Share on other sites

Mieze,

 

Could you please add support for the RTL8110 Gigabit Ethernet (8167-10ec)?

 

I added the device I'd to the info.plist of your kext but ended up with the following error:

 

PS. The driver provided by realtek has the device id and loads, but the ethernet is stuck with a self assigned ip and cannot connect to internet. Manually assigning IP says connected but doesn't work.

 

PS. 2 Windows too appears to be using the same 8168 driver for it so I think the chipsets are close enough to be supported by this driver.

This card is supported by existing driver (8169) on my computer. 

Screen Shot 2015-01-26 at 10.18.12.png

Link to comment
Share on other sites

×
×
  • Create New...