Recently I joined the Mac OS Beta program; not because I have oodles of time to burn, or want to be on the bleeding edge, but rather as a last effort to continue to use Mac as one of my operating systems before completely ditching the platform.
In 2019 Apple release the Catalina operating system with some major under the hood changes. First, it went 100% 64 bit, not 32 bit applications will run period, and any 64 bit applications that had some 32 bit libraries will crash. Second, drivers like your video card use with Catalina are required to use the DriverKit framework. DriverKit runs in the user space and not the Kernel like previous operating system before Catalina allowed. Before Catalina, if you used two monitors and a video card that was older not using Driverkit, and that drivers had an error, your OS would crash and your Mac would reboot. Catalina, the OS is not even letting those drivers run now. So you would either need to upgrade the driver, or replace the video card. Sounds good right?
This leads into why I wrote this article. Since Catalina, two out of three of my Mac computers started crashing, a lot, like every 10 minutes. One is a 2013 iMac, the other is 2018 Mac Book Pro. The third mac is too old for Catalina. The 2013 was the worst, and both had problems upgrading. Both would crash upgrading even from a clean install. Eventually I was able to get them both to take.
After searching blog after blog and realizing this was a global issue, I came to the belief this was definitely on Apples radar; not because I heard something, but because I speculated that Apple would not ignore the many reported issues. But also felt strongly they would not admit publicly that there is an issue, but rather fix it, quietly and quickly. And make the problem just go away; no Press. I do not blame Apple and understand, just do not like it. I believed the best way to get my issue resolved was to get the latest code so joined the beta program. When their is a fix, I will have it first. Almost first.
- macOS 10.15 Catalina: The Ars Technica review by Island Time
- Big Changes under the Hood in MacOS 10.15 Catalina by Plugable Sam Morgan
Joining the Apple macOS Developer Beta program is simple.
Source: https://developer.apple.com/support/install-beta/
- Download the configuration profile from the download page
- Open the macOS Developer Beta Access Utility and follow the instructions
- Once installation is complete, you’ll be presented with the macOS Beta in the Mac App Store. click the Download button to install the beta.
- When a new macOS beta becomes available, you will receive a notification and can install it in the Software Update section of System Preferences.
Once I had beta 10.15.2 installed on my iMac, my problems of frequent kernel panics got better. I should note that by the time I got on the beta program, 10.15.1 was out which fixed my Mac Book Pro. The iMac crashed less but still could not get 30 minutes out of the iMac. Also note the following things helped which I noted on the following thread. https://discussions.apple.com/thread/250717203?answerId=251578985022&page=1
- Check > Settings >> Energy Saver >> Prevent computer from sleeping automatically
- Uncheck > Settings >> Energy Saver >> Put hard disks to sleep when possible
- If you have two monitors, unplug them. Use built in display only
- Make sure screen savor turns on rather soon, like 5 minutes.
On the beta program, when I had a crash I reported the crash to Apple via the beta feedback tool. Man crashes were when the system from the users perspective was idle(Systems are never idle). So when you get back to your mac, and it had rebooted due to a kernel panic, and the crash screen tells you their was a kernel panic, and ask what you were doing. Many times I would have to enter “Mac was idle”. I even had a crash as I was sending a crash report to Apple. So the problem wasn’t fixed by any means on version 10.15.2.
When 10.15.3 beta came out, the iMac finally stopped crashing. Of course I still had to use the special power settings, but was able to turn my second monitor back on which was really nice. I did also get a response form Apple on one of 10.15.2 bug reports. On Jan 6th they asked for a Core Dump from a 10.15.2 crash a couple weeks prior. I could probably do this, but would take a few hours as I would have to setup the core dump server then roll back to 10.15.2, wait for a crash, and send the dump. But since it Appears Apple had already address the issue in 10.15.3 I think it would be a moot point and more importantly waste an Apple developers time combing through a debug to realize they already address this particular issue.
How to Do a Core Dump on a Mac
Note: If you have another Mac, you can try to set up the second Mac as a server. Any Mac will work as a coredump server; you just need a gigabyte or so of free space per coredump). Important: The kernel dump client can only be configured to transmit on a hard-wired Ethernet port, either built-in or over Thunderbolt. There is no support for transmitting core dumps across the AirPort interface, USB Ethernet, or across third-party Ethernet interfaces. This is an issue for early MacBook Air models which have no built-in Ethernet or Thunderbolt interfaces.
On the server (non-panicking) machine run the following commands
- Launch Terminal from /Applications/Utilities.
- Copy and paste:
sudo mkdir /PanicDumps
- Press return and authenticate.
- Copy and paste:
sudo chown root:wheel /PanicDumps
- Press return.
- Copy and paste:
sudo chmod 1777 /PanicDumps
- Press return.
- Copy and paste:
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.kdumpd.plist
- Press return.
To verify that the core dump server is active
- Copy and paste:
sudo launchctl list | grep kdump
- Press return.
- This should return:
– 0 com.apple.kdumpd
On the client (panicking) machine run the following commands
- Locate the IP address of the core dump server.
- Launch Terminal from /Applications/Utilities.
- Copy and paste:
suo nvram boot-args=”debug=0xd44 _panicd_ip=10.0.40.2 kdp_match_name=en7”
Notes:
- Where 10.0.40.2 is replaced by the IP address of the server and en7 is replaced by the name of the client’s Ethernet interface.
- You can use this command to show all of the network interfaces on the system:
ifconfig -a
- Copy and paste:
sudo reboot
Well, that’s my Catalina Story. I hope the article was able to help you. I do love many things about the macOS, but this upgrade even though had to happen, will go down as a messy one. Kinda like getting rid of the floppy disk. Right move, but painful when it happened. And of course the CD Rom, DVD, Old style USB… One thing you cannot say is Apple is afraid of change even it if is painful. I guess that is what you call Discipline. Allowing short term pain for long term gain. I just wish it wasn’t so painful.
Jay