Jump to content

New Driver for Realtek RTL8111


Mieze
1,593 posts in this topic

Recommended Posts

16 hours ago, Henry2010 said:

Thanks. It's alright. Have planned to upgrade to Big Sur in the future.

In case you've got problems with network connection in the installer, you might want to use "ifconfig" in Terminal with the installer in order to set the medium manually.

 

Mieze

  • Thanks 1
Link to comment
Share on other sites

Hi Mieze,

 

Thanks for your work, it works most of the time.

I have

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

  Name:	ethernet
  Type:	Ethernet Controller
  Bus:	PCI
  Vendor ID:	0x10ec
  Device ID:	0x8168
  Subsystem Vendor ID:	0x1458
  Subsystem ID:	0xe000
  Revision ID:	0x0006
  Link Width:	x1
  BSD name:	en0

faced a Kernel panic today

panic(cpu 2 caller 0xffffff8007c469aa): Kernel trap at 0xffffff7f8a257dbf, type 14=page fault, registers:
CR0: 0x000000008001003b, CR2: 0xffffff802092b900, CR3: 0x0000000010d48000, CR4: 0x00000000001626e0
RAX: 0x0000000000000000, RBX: 0xffffff92240bbe00, RCX: 0xffffff802be11000, RDX: 0xffffff802092b900
RSP: 0xffffff92240bbc60, RBP: 0xffffff92240bbd10, RSI: 0xffffff802092b900, RDI: 0x0000000000001900
R8:  0x0000000000000000, R9:  0x0000000000989680, R10: 0xffffff80085f5900, R11: 0xffffff80085f5280
R12: 0xffffff92240bbf38, R13: 0x0000000000000000, R14: 0xffffff802be11000, R15: 0x0000000000000000
RFL: 0x0000000000010246, RIP: 0xffffff7f8a257dbf, CS:  0x0000000000000008, SS:  0x0000000000000000
Fault CR2: 0xffffff802092b900, Error code: 0x0000000000000000, Fault CPU: 0x2, PL: 0, VF: 1

Backtrace (CPU 2), Frame : Return Address
0xffffff92240bb6c0 : 0xffffff8007b1a65d mach_kernel : _handle_debugger_trap + 0x49d
0xffffff92240bb710 : 0xffffff8007c54a75 mach_kernel : _kdp_i386_trap + 0x155
0xffffff92240bb750 : 0xffffff8007c465fe mach_kernel : _kernel_trap + 0x4ee
0xffffff92240bb7a0 : 0xffffff8007ac0a40 mach_kernel : _return_from_trap + 0xe0
0xffffff92240bb7c0 : 0xffffff8007b19d27 mach_kernel : _DebuggerTrapWithState + 0x17
0xffffff92240bb8c0 : 0xffffff8007b1a117 mach_kernel : _panic_trap_to_debugger + 0x227
0xffffff92240bb910 : 0xffffff80082c1abc mach_kernel : _panic + 0x54
0xffffff92240bb980 : 0xffffff8007c469aa mach_kernel : _sync_iss_to_iks + 0x2aa
0xffffff92240bbb00 : 0xffffff8007c466a8 mach_kernel : _kernel_trap + 0x598
0xffffff92240bbb50 : 0xffffff8007ac0a40 mach_kernel : _return_from_trap + 0xe0
0xffffff92240bbb70 : 0xffffff7f8a257dbf com.insanelymac.RealtekRTL8111 : __ZN7RTL811111rxInterruptEP18IONetworkInterfacejP11IOMbufQueuePv + 0x4f
0xffffff92240bbd10 : 0xffffff7f8a259625 com.insanelymac.RealtekRTL8111 : __ZN7RTL811116pollInputPacketsEP18IONetworkInterfacejP11IOMbufQueuePv + 0x45
0xffffff92240bbd60 : 0xffffff7f88cca5ce com.apple.iokit.IONetworkingFamily : __ZN19IONetworkController20executeCommandActionEP8OSObjectPvS2_S2_S2_ + 0x38
0xffffff92240bbd90 : 0xffffff800822ea28 mach_kernel : __ZN13IOCommandGate9runActionEPFiP8OSObjectPvS2_S2_S2_ES2_S2_S2_S2_ + 0x138
0xffffff92240bbdf0 : 0xffffff7f88cca638 com.apple.iokit.IONetworkingFamily : __ZN19IONetworkController14executeCommandEP8OSObjectPFiPvS2_S2_S2_S2_ES2_S2_S2_S2_S2_ + 0x52
0xffffff92240bbe40 : 0xffffff7f88cce81f com.apple.iokit.IONetworkingFamily : __ZN18IONetworkInterface19if_input_poll_gatedEP7__ifnetjjPP6__mbufS4_PjS5_ + 0x7f
0xffffff92240bbec0 : 0xffffff8008175ad6 mach_kernel : _netif_rxpoll_compat_thread_func + 0x316
0xffffff92240bbfa0 : 0xffffff8007ac013e mach_kernel : _call_continuation + 0x2e
      Kernel Extensions in backtrace:
         com.apple.iokit.IONetworkingFamily(3.4)[2FA065D5-72F7-3BE5-855C-E45B01AEFBD4]@0xffffff7f88cc0000->0xffffff7f88ceffff
         com.insanelymac.RealtekRTL8111(2.3d10)[E773B5D9-8D55-31F5-B1F3-436A4CD37AD4]@0xffffff7f8a1f9000->0xffffff7f8a26efff
            dependency: com.apple.iokit.IONetworkingFamily(3.4)[2FA065D5-72F7-3BE5-855C-E45B01AEFBD4]@0xffffff7f88cc0000
            dependency: com.apple.iokit.IOPCIFamily(2.9)[DF219CC1-366A-31FC-B8ED-17C584BA2549]@0xffffff7f88701000

BSD process name corresponding to current thread: kernel_task
Boot args: keepsyms=1 debug=0x100 alcid=1 igfxonln=1 igfxagdc=0

Mac OS version:
19G2021

Kernel version:
Darwin Kernel Version 19.6.0: Thu Jun 18 20:49:00 PDT 2020; root:xnu-6153.141.1~1/RELEASE_X86_64
Kernel UUID: 1D3A0F3D-D908-397B-BD16-8F48C0823A2E
Kernel slide:     0x0000000007800000
Kernel text base: 0xffffff8007a00000
__HIB  text base: 0xffffff8007900000
System model name: iMac15,1 (Mac-42FD25EABCABB274)
System shutdown begun: NO
Panic diags file available: YES (0x0)

System uptime in nanoseconds: 228610387486919

If there is something you want to look at.

 

Thanks

Link to comment
Share on other sites

My office PC shows unplugged on 2.3.0 release. 2.2.0 and 2.3.0 beta5 works well; I only have the three kext for testing.

Below is detail with 2.2.0: 

 

Realtek RTL8168G/8111G PCI Express Gigabit Ethernet

  Name: ethernet

  Type: Ethernet Controller

  Bus: PCI

  Vendor ID 0x10ec

  Device ID 0x8168

  Subsystem vendor ID 0x17aa

  Subsystem ID 0x3102

  Revision ID 0x000c

  Link Width: x1

  BSD name en0

 

Another PC which mainboard is MSI B450M mortar max also uses 8111H works well on 2.3.0 release( I forgot record its detail ), so seems just this sub spec has problem.

 

UPDATE: just found somebody's b10 build on pcbeta forum, already have same problem.

UPDATE: upgraded 2.4, problem still. thanks @nmano manually setup works, but only for 100BaseT.

Edited by palxex
Link to comment
Share on other sites

On 8/28/2020 at 1:00 PM, shantur said:

Hi Mieze,

 

Thanks for your work, it works most of the time.

I have


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

  Name:	ethernet
  Type:	Ethernet Controller
  Bus:	PCI
  Vendor ID:	0x10ec
  Device ID:	0x8168
  Subsystem Vendor ID:	0x1458
  Subsystem ID:	0xe000
  Revision ID:	0x0006
  Link Width:	x1
  BSD name:	en0

faced a Kernel panic today


panic(cpu 2 caller 0xffffff8007c469aa): Kernel trap at 0xffffff7f8a257dbf, type 14=page fault, registers:
CR0: 0x000000008001003b, CR2: 0xffffff802092b900, CR3: 0x0000000010d48000, CR4: 0x00000000001626e0
RAX: 0x0000000000000000, RBX: 0xffffff92240bbe00, RCX: 0xffffff802be11000, RDX: 0xffffff802092b900
RSP: 0xffffff92240bbc60, RBP: 0xffffff92240bbd10, RSI: 0xffffff802092b900, RDI: 0x0000000000001900
R8:  0x0000000000000000, R9:  0x0000000000989680, R10: 0xffffff80085f5900, R11: 0xffffff80085f5280
R12: 0xffffff92240bbf38, R13: 0x0000000000000000, R14: 0xffffff802be11000, R15: 0x0000000000000000
RFL: 0x0000000000010246, RIP: 0xffffff7f8a257dbf, CS:  0x0000000000000008, SS:  0x0000000000000000
Fault CR2: 0xffffff802092b900, Error code: 0x0000000000000000, Fault CPU: 0x2, PL: 0, VF: 1

Backtrace (CPU 2), Frame : Return Address
0xffffff92240bb6c0 : 0xffffff8007b1a65d mach_kernel : _handle_debugger_trap + 0x49d
0xffffff92240bb710 : 0xffffff8007c54a75 mach_kernel : _kdp_i386_trap + 0x155
0xffffff92240bb750 : 0xffffff8007c465fe mach_kernel : _kernel_trap + 0x4ee
0xffffff92240bb7a0 : 0xffffff8007ac0a40 mach_kernel : _return_from_trap + 0xe0
0xffffff92240bb7c0 : 0xffffff8007b19d27 mach_kernel : _DebuggerTrapWithState + 0x17
0xffffff92240bb8c0 : 0xffffff8007b1a117 mach_kernel : _panic_trap_to_debugger + 0x227
0xffffff92240bb910 : 0xffffff80082c1abc mach_kernel : _panic + 0x54
0xffffff92240bb980 : 0xffffff8007c469aa mach_kernel : _sync_iss_to_iks + 0x2aa
0xffffff92240bbb00 : 0xffffff8007c466a8 mach_kernel : _kernel_trap + 0x598
0xffffff92240bbb50 : 0xffffff8007ac0a40 mach_kernel : _return_from_trap + 0xe0
0xffffff92240bbb70 : 0xffffff7f8a257dbf com.insanelymac.RealtekRTL8111 : __ZN7RTL811111rxInterruptEP18IONetworkInterfacejP11IOMbufQueuePv + 0x4f
0xffffff92240bbd10 : 0xffffff7f8a259625 com.insanelymac.RealtekRTL8111 : __ZN7RTL811116pollInputPacketsEP18IONetworkInterfacejP11IOMbufQueuePv + 0x45
0xffffff92240bbd60 : 0xffffff7f88cca5ce com.apple.iokit.IONetworkingFamily : __ZN19IONetworkController20executeCommandActionEP8OSObjectPvS2_S2_S2_ + 0x38
0xffffff92240bbd90 : 0xffffff800822ea28 mach_kernel : __ZN13IOCommandGate9runActionEPFiP8OSObjectPvS2_S2_S2_ES2_S2_S2_S2_ + 0x138
0xffffff92240bbdf0 : 0xffffff7f88cca638 com.apple.iokit.IONetworkingFamily : __ZN19IONetworkController14executeCommandEP8OSObjectPFiPvS2_S2_S2_S2_ES2_S2_S2_S2_S2_ + 0x52
0xffffff92240bbe40 : 0xffffff7f88cce81f com.apple.iokit.IONetworkingFamily : __ZN18IONetworkInterface19if_input_poll_gatedEP7__ifnetjjPP6__mbufS4_PjS5_ + 0x7f
0xffffff92240bbec0 : 0xffffff8008175ad6 mach_kernel : _netif_rxpoll_compat_thread_func + 0x316
0xffffff92240bbfa0 : 0xffffff8007ac013e mach_kernel : _call_continuation + 0x2e
      Kernel Extensions in backtrace:
         com.apple.iokit.IONetworkingFamily(3.4)[2FA065D5-72F7-3BE5-855C-E45B01AEFBD4]@0xffffff7f88cc0000->0xffffff7f88ceffff
         com.insanelymac.RealtekRTL8111(2.3d10)[E773B5D9-8D55-31F5-B1F3-436A4CD37AD4]@0xffffff7f8a1f9000->0xffffff7f8a26efff
            dependency: com.apple.iokit.IONetworkingFamily(3.4)[2FA065D5-72F7-3BE5-855C-E45B01AEFBD4]@0xffffff7f88cc0000
            dependency: com.apple.iokit.IOPCIFamily(2.9)[DF219CC1-366A-31FC-B8ED-17C584BA2549]@0xffffff7f88701000

BSD process name corresponding to current thread: kernel_task
Boot args: keepsyms=1 debug=0x100 alcid=1 igfxonln=1 igfxagdc=0

Mac OS version:
19G2021

Kernel version:
Darwin Kernel Version 19.6.0: Thu Jun 18 20:49:00 PDT 2020; root:xnu-6153.141.1~1/RELEASE_X86_64
Kernel UUID: 1D3A0F3D-D908-397B-BD16-8F48C0823A2E
Kernel slide:     0x0000000007800000
Kernel text base: 0xffffff8007a00000
__HIB  text base: 0xffffff8007900000
System model name: iMac15,1 (Mac-42FD25EABCABB274)
System shutdown begun: NO
Panic diags file available: YES (0x0)

System uptime in nanoseconds: 228610387486919

If there is something you want to look at.

 

Thanks

 

Just had another one,

It mostly happens while machine is trying to sleep or waking up.

Link to comment
Share on other sites

Thanks @Mieze

I install RealtekRTL8111.kext in 10.15.6 Its say cable unplugged.

Now worked.

Network

Configure IPv4-Using DHCP

 

Advanced->Hardware

Configure-Manually

Speed-100baseTX

Duplex-full-duplex

MTU-Standard (1500)

Screen Shot 2020-09-10 at 3.13.00 AM.png

Edited by nmano
  • Like 2
Link to comment
Share on other sites

On 9/10/2020 at 4:07 PM, nmano said:

Thanks @Mieze

I install RealtekRTL8111.kext in 10.15.6 Its say cable unplugged.

Now worked.

Network

Configure IPv4-Using DHCP

 

Advanced->Hardware

Configure-Manually

Speed-100baseTX

Duplex-full-duplex

MTU-Standard (1500)

Screen Shot 2020-09-10 at 3.13.00 AM.png

Thanks bro works perfectly by your method..

  • Haha 1
Link to comment
Share on other sites

  • 2 weeks later...
On 9/10/2020 at 1:22 PM, nmano said:

Thanks @Mieze

I install RealtekRTL8111.kext in 10.15.6 Its say cable unplugged.

Now worked.

Network

Configure IPv4-Using DHCP

 

Advanced->Hardware

Configure-Manually

Speed-100baseTX

Duplex-full-duplex

MTU-Standard (1500)

Screen Shot 2020-09-10 at 3.13.00 AM.png

I have the same, says that the cable unplugged.

Edited by AslashA
Link to comment
Share on other sites

  • 2 weeks later...

As some users with RTL8111H reported problems with 2.3.0, I ordered an RTL8111H from China which arrived this morning. I put it into my machine, installed the driver and it's working perfectly under 10.15.7. Auto-configuration also worked flawlessly and gave me a gigabit connection as expected.

 

There is nothing wrong with the driver, it's working as expected. In case you've got issues, please fix your system or your hardware but it's definitely not the driver which is responsible for your problem.

2020-10-07 12:02:36.684939+0200 0x103      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: EEE support enabled.
2020-10-07 12:02:36.684943+0200 0x103      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: RxPoll support enabled.
2020-10-07 12:02:36.684945+0200 0x103      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: TCP/IPv4 segmentation offload enabled.
2020-10-07 12:02:36.684949+0200 0x103      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: TCP/IPv6 segmentation offload enabled.
2020-10-07 12:02:36.684952+0200 0x103      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: TCP/IPv6 checksum offload enabled.
2020-10-07 12:02:36.684955+0200 0x103      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: Version 2.3.0 using interrupt mitigate value 0x5f51. Please don't support tonymacx86.com!
2020-10-07 12:02:36.685047+0200 0x103      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: Disable PCIe ASPM.
2020-10-07 12:02:36.705324+0200 0x103      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: RTL8168H/8111H: (Chipset 29), 00:e0:72:61:59:92
2020-10-07 12:02:52.044798+0200 0x13b      Default     0x0                  0      0    kernel: (RealtekRTL8111) [RealtekRTL8111]: Link up on en4, 1-Gigabit, Full-duplex, No flow-control

Mieze :cat:

Link to comment
Share on other sites

22 hours ago, xXiGeniusXx said:

Updated to OpenCore 0.6.2 and newer kexts also changed my SMBIOS to a newer iMac so that I can install Big Sur, now my Ethernet is not working neither in Catalina nor Big Sur!

I have to manually configure it in the System Preferences as @nmano mentioned above!

 

Kernel log is attached.

Terminal_Output.txt

 

Replaced the kext with Rehab-Man's fork from here with absolutely no other changes and it's been working flawlessly! This is clearly a driver issue despite developer's insisting on otherwise.

 

To anyone having issues with this, download and install Rehab-Man's RehabMan-Realtek-Network-v2-2017-0322.zip before posting here see if it fixes your issues.

 

Regards.

Link to comment
Share on other sites

23 minutes ago, xXiGeniusXx said:

This is clearly a driver issue despite developer's insisting on otherwise.

Wow, what a genius! As you are so brillant to have evidence for a driver issue, I'm waiting for your patch to fix it.

 

Mieze :hysterical:

  • Like 1
Link to comment
Share on other sites

25 minutes ago, Mieze said:

Wow, what a genius! As you are so brillant to have evidence for a driver issue, I'm waiting for your patch to fix it.

 

Mieze :hysterical:

 

The very fact that an older forked version is working flawlessly is a clear evidence, but from what I've seen so far your attitude is the bigger issue here so I suggest you work on that instead of your faulty driver! And I won't be fixing your driver, thankfully Rehab-Man has done an amazing job. :)

Edited by xXiGeniusXx
Link to comment
Share on other sites

What on earth is wrong with people lately? They started a quarrel in Clover thread, now here?

Whoever doesn't like the work done FOR FREE and NO OBLIGATION, either go buy an Apple original hardware or find alternatives (or fix Mieze's driver LOL :lol: I wish I could) and leave this thread clean with space for original questions from people that have a problem, without being provocative, please.

The authors have the right to do and reply as they wish, within decency boundaries (I am not defending anyone) and hopefully they're thoughtful and kind enough to comment back on equally decent comments and questions.

Kindly refrain from polluting the thread that is otherwise of interest to many many others... Thank you. I apologise for this interruption... I am no admin or mod. Good night.

 

P.S. For what's worth, I also faced for some crazy reason a "disconnected" LAN problem (like @nmano ) in Mojave with another LAN driver and after studying and searching, I decided to reset the macOS preferences by renaming/moving the folder /Library/Preferences/SystemConfiguration/ and immediately reboot the hackintosh. This helped me, so please anyone, keep this tip in mind next time you had an issue (after checking BIOS settings or anything that could have affected the same version of the driver that worked fine... including considering the OS Security Fixes released every few months...)

  • Like 1
Link to comment
Share on other sites

@MacKonsti The discussion yesterday here in this thread was the follow-up of another discussion over at GitHub. Although I try to give my best in order to support my drivers, it's a hobby and there are other things in my life which have a higher priority.

 

Therefore I really get upset when certain users think that I owe them full service.

 

Mieze :cat:

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

I'm quite sure that clearing system caches (with OC you have to disable SIP temporarily to do this) and/or deleting the network configuration will solve most people's problems.

 

Besides that, you'll always have to consider hardware issues like a loose connector, broken cable, dust...

 

Mieze :cat:

  • Like 1
Link to comment
Share on other sites

I just wanted to share with you some news. I the past I refused to implement jumbo frame support because older versions of the RTL8111 don't support checksum offload with jumbo frames but I always had doubts if this also applies to newer versions of the NIC.

 

Well, as there is no documentation, the only way to find out is to try and this is what I did with my new RTL8111H this evening. Most of the code for jumbo frame support already existed because it was written for LucyRTL8125Ethernet, so that it only took me 2 hours to make jumbo frame support together with checksum offload working on the RTL8111 (Chipset 29).

 

A quick test with iperf worked but as expected there isn't much gain. With MTU 2000 I noticed a small gain but with higher values, performance decreased. Anyway, there is still a lot of testing and coding to be done...

 

Mieze :cat:

 

Link to comment
Share on other sites

As announced yesterday I implemented jumbo frame support and here is version 2.4.0d4 to try it on your own. I tested on my RTL8111H (chipset 29) and on an older RTL8111E-VL (chipset 16), which I used as a reference for development in the past. That's why I enabled jumbo frames up to 9000 bytes for chipset 16 and above because I assume that it's fully supported in these NICs.

 

Please keep in mind that this is a development version which has undergone only minimal testing. I'm quite confident that it will work as expected but it is experimental code which still might need some work in order to reach production quality.

 

Source code will be published later this weekend on GitHub.

 

Good luck testing and have fun!!!

 

Mieze :cat:

 

 

RealtekRTL8111-V2.4.0d4.zip

Edited by Mieze
  • Like 2
  • Thanks 2
Link to comment
Share on other sites

I discovered a small bug in 2.3.0d3 and will publish version 2.4.0d4 in a few moments. In case I'll get a few more positive results, I'll also post a release version here in this thread during the weekend.

 

Mieze :cat:

  • Like 1
  • Thanks 1
Link to comment
Share on other sites

Version 2.4.0d4 didn’t work for me. Built from source on Mojave with Xcode 11.3.1 target deployment 10.14, BaseSDK macOS 10.14, Xcode 11-compatible(received 18 warnings). Kext doesn’t seems to load. Also I’m taking into consideration there might be something wrong with hardware, firmware, etc(which I’m not aware of). Attaching kernel log.

Kernel_log.rtf

Link to comment
Share on other sites

×
×
  • Create New...