rvictl not working on big sur and ios 14 beta 3

This thread has been locked by a moderator.

Apple Recommended

  • Yay!

  • It doesn't work with Xcode 13.1. I use BigSur 11.6.1 and iOS 15.1.

    Actually it works intermittently when we restart phone or System, Not sure what fixes the problem and it comes back if we disconnect the phone. No clear work around yet.

  • having the same a similar issue on Intel with Xcode 13.1, Big Sur 11.6.1 and iOS 15.1. The rviN device lasts for 20 seconds until the idle timer fires. I've managed on a couple of occasions to get the idle timer to stop (not sure how) and at this point the rviN device persists. Sorry for the formatting below:

    default 16:14:18.296385+0000 rpmuxd USBMuxListenerCreateFiltered:898 Created 0x7ff25cf049a0 default 16:14:18.296705+0000 rpmuxd Transactions moved from 1->0, starting idle timer default 16:14:18.296811+0000 rpmuxd USBMuxHandleDictionary:1437 Adding event 0x7ff25cd11ae0 to changelist. default 16:14:18.296988+0000 rpmuxd USBMuxConnectByPort:584 Connecting to port 32498 (f2, 7e) default 16:14:18.312444+0000 rpmuxd USBMuxConnectByPort:584 Connecting to port 32498 (f2, 7e) default 16:14:18.317523+0000 rpmuxd USBMuxConnectByPort:584 Connecting to port 32498 (f2, 7e) default 16:14:18.394612+0000 rpmuxd USBMuxConnectByPort:584 Connecting to port 32498 (f2, 7e) default 16:14:18.398216+0000 rpmuxd USBMuxConnectByPort:584 Connecting to port 32498 (f2, 7e) default 16:14:18.436430+0000 rpmuxd USBMuxConnectByPort:584 Connecting to port 14787 (c3, 39) default 16:14:18.439652+0000 rpmuxd USBMuxConnectByPort:584 Connecting to port 32498 (f2, 7e) default 16:14:18.444839+0000 rpmuxd USBMuxConnectByPort:584 Connecting to port 32498 (f2, 7e) default 16:14:38.507258+0000 rpmuxd Idle timer fired, exiting.

    I've also tried this on Monterey 12.0.1 with exactly the same results.

Replies

Hi I meet same issue with getting the FAILED error. Updated to latest Xcode 12.3 (12C33) and macOS 11.1 (20C69) and iOS 14.3 (18C66):

sudo rvictl -s 00008101-<REDACTED>

Starting device 00008101-<REDACTED> [FAILED]

Same happens with and without sudo..
Does anyone get the solution?
Seems to work after running sudo launchctl load -w /Library/Apple/System/Library/LaunchDaemons/com.apple.rpmuxd.plist, although the response to this command was:

/Library/Apple/System/Library/LaunchDaemons/com.apple.rpmuxd.plist: service already loaded

The next time I ran rvictl -s UUID:

Starting device UUID [SUCCEEDED] with interface rvi0


I have tried all of the solutions in this thread, but I am still getting a failure when I try to start a device with rvictl on an M1 Mac mini running Big Sur 11.2.3 and Xcode 12.4. Any help would be appreciated!
By the way, if anyone is trying this on a Mac M1 (apple silicon) and rvictl says FAILED, its because you need to enable mac system extensions - https://support.apple.com/guide/mac-help/change-startup-disk-security-settings-a-mac-mchl768f7291/mac - basically say "reduced security" and check all the freaking boxes that say enable kernel extensions and all that. And after you bootup, you have to again go to system--->security&preferences and there will be an "allow" button you have to click there which will again make you reboot.

I wasted freaking a day on this crap and finally after lot of browsing I figured thats the reason. I enabled system extensions and its working fine
  • THIS WORKED!!! THANK YOU!

  • YES, in Intel x86 architecture, you only should set csrutil disable in recovery mode, BUT for M1, you should also continue check allow in system preference security&preferences and automatic reboot your macbook.

  • I'm on MacBook Pro 16 2021 with M1 Pro and macOS 12.1. The second step after changing the security setting is essential: And after you bootup, you have to again go to system--->security&preferences and there will be an "allow" button you have to click there which will again make you reboot.

    Now rvictl -s <udid> returns: Starting device <udid> [SUCCEEDED] with interface rvi0

Add a Comment

basically say "reduced security"

Correct.

check all the freaking boxes that say enable kernel extensions

Not quite. Of the two checkboxes, you only need to check “Allow user management of kernel extensions from identified developers”.

And yes, I agree, this is seriously suboptimal. I had a chat with the RVI folks about this situation and I’m sad to report that this is the only way to get RVI working on Apple silicon. We have a bug on file about this (r. 78015664) but, as per usual, I can’t comment as to when we’ll see any improvements.

Share and Enjoy

Quinn “The Eskimo!” @ Developer Technical Support @ Apple
let myEmail = "eskimo" + "1" + "@" + "apple.com"
  • Hello eskimo,

    I am facing the exact same issue when i try to run 'rvictl' command to capture network traffic [ 2.2 GHz 6-Core Intel Core i7]. I assume the solution what you have mentioned is for Apple silicon ( Mac M1).

    Xcode Version 13.0 beta 3 (13A5192j) macOS BigSur version 11.5.2 (20G95)

Add a Comment

And yes, I agree, this is seriously suboptimal. 

@eskimo, my frustration was not about having to enable the kernel extension - that took me < 5 mins and thats perfectly acceptable to me. My frustration was that rvictl FAILEd as a google search did not lead to any help page or anything, what it led to was this thread with potpourri of random suggestions. I am not kidding when I said I wasted a WHOLE DAY (at least) on this - I even thought that its probably that my ipad (attached to my mac mini) is too old and hence I drove one hour up and down to an apple store and got a new one, only to see that had the same issue. Then I kept at google searches till some kind soul somewhere had hinted about having to enable kernel extensions.

So my point was that along with rvictl FAILEd, if there was one more line of message that said "please enable kernel extensions", that would have made my experience with apple development far more smoother
  • I have enabled kernel extensions and reduce security ,but rvictl still failed

Add a Comment

I have enabled kernel extensions and reduce security ,but rvictl still failed

Same problem here. Running on M1, Xcode 12.5, iOS 12.0 Beta (21A5248p).

Now I don't know if it has to do with me being on the new beta build of iOS or not.

The error I get in /var/log/system.log

Jun 18 11:47:39 Nickis-MBP rpmuxd[12518]: com.apple.rpmuxd:rpmuxd_start_kernelctl:234 Child process /sbin/kextload[12519] exited with status 29
Jun 18 11:47:39 Nickis-MBP rpmuxd[12518]: com.apple.rpmuxd:rpmuxd_start_kernelctl:242 retry loading kext from non ROSP location
Jun 18 11:47:39 Nickis-MBP rpmuxd[12518]: com.apple.rpmuxd:rpmuxd_start_kernelctl:234 Child process /sbin/kextload[12521] exited with status 2
Jun 18 11:47:39 Nickis-MBP rpmuxd[12518]: com.apple.rpmuxd:rpmuxd_start_kernelctl:236 retry loading kext failed, aborting
Jun 18 11:47:39 Nickis-MBP rpmuxd[12518]: com.apple.rpmuxd:rpmuxd_start_packet_capture:734 Unable to create kernel control communication

I tried everything that is mentioned up till now, but sadly with no good result.

Another issue is that

rvictl -L   or rvictl -l

returns

Could not get list of devices

Fortunately: ifconfig -l gives a list but rvictl fails to connect.

Doesn't work for me either. Always receiving

Starting device 00008030-<redacted> [FAILED]

macOS 11.4

Xcode 12.5, also tried with the rvictl bundled in Xcode 13 beta 2

MacBook Pro 15-inch 2018

Restarting the MacBook / iPhone didn't help. Would be great if rvictl could give a hint why it is failing. Wasted hours on this topic.

Digging deeper, I also see the messages in the system-log like NickiOtte regarding failing loading a kext by rpmuxd.

Trying to load it manually gives this:

/L/A/u/bin $ sudo kextload /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext
Password:
Executing: /usr/bin/kmutil load -p /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext
Error Domain=KMErrorDomain Code=29 "Authenticating extension failed: Kext com.apple.nke.rvi v2.1.0 in executable kext bundle com.apple.nke.rvi at /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext:

Authenticating extension failed: Bad code signature" UserInfo={NSLocalizedDescription=Authenticating extension failed: Kext com.apple.nke.rvi v2.1.0 in executable kext bundle com.apple.nke.rvi at /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext:

Authenticating extension failed: Bad code signature}

So, the kernel-extension needs an update or anything like this? @eskimo Or may have this been caused by an faulty upgrade, and there is an updated version of the kernel extension that is only installed on a clean install? (No clean install on this system since I started using it, always upgrading)

  • I am also facing same issue. Tried kextload and also other solutions mentioned in this thread. Does anyone have solution yet? I am running Big Sur 11.5 and iOS 14.7/ 15 Beta 3

Add a Comment

remember to open the new extension(setting->Security and privacy) and reboot, it works for me

Post not yet marked as solved Up vote reply of gzh Down vote reply of gzh
  • In the General-tab of Security and privacy? There is nothing I could approve - or do I have to look somewhere else? Also, this wouldn't explain the Bad code signature, would it? Do you also have version 2.1.0 of the extension and are you on a Intel or M1-mac?

Add a Comment

This's post has solution

https://developer.apple.com/forums/thread/655329?answerId=674594022#674594022

I'm on Monterey 12.0, on an Intel Mac, with extension v2.1.0, and I have the same kextload 'code signature' error.

bash-3.2# kextload /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext Executing: /usr/bin/kmutil load -p /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext Error Domain=KMErrorDomain Code=29 "Authenticating extension failed: Kext com.apple.nke.rvi v2.1.0 in executable kext bundle com.apple.nke.rvi at /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext:

Authenticating extension failed: Bad code signature" UserInfo={NSLocalizedDescription=Authenticating extension failed: Kext com.apple.nke.rvi v2.1.0 in executable kext bundle com.apple.nke.rvi at /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext:

Authenticating extension failed: Bad code signature} bash-3.2#

I finally managed to make it work on Intel Mac
That's dirty, but it works : you need to disable SPI.
So in recovery mode, open terminal and type : csrutil disable
Reboot, then try to load the extension manually : sudo kmutil load -p /Library/Apple/System/Library/Extensions/RemoteVirtualInterface.kext
That should popup something that redirect to System Settings where you need to agree on using an extension from à mighty developper called "Apple Inc."
Then reboot.
Then reloading manually the extension will be ok, and rvictl -s UUID also !

Yes, that is dirty, but until this extension signing is solved, I'm afraid I have no other choice ...

  • Thank you, it solved my problem Intel Mac Bigsur 11.4

  • Thank you , it solved my problem Intel MacOS Big Sur 11.4

Add a Comment