Archive for May 2, 2012

Wednesday, May 2, 2012

Kernel Panics and OmniFocus Syncing

I’ve encountered a raft of kernel panics recently (eight in the past two weeks). The backtrace is always related to com.apple.NVDAResman, which seems to be the driver for my MacBook Pro’s NVIDIA GeForce graphics card. Strangely, this has only happened with Mac OS X 10.7.3, but the panics did not begin until two months after updating to 10.7.3. Perhaps there was another update to those drivers that I don’t remember.

Aside from being annoying, the kernel panics indirectly caused a more serious problem: I repeatedly left the house with stale OmniFocus data synced to my iPhone. I’ve used OmniFocus for years, and nothing like this had ever happened, so I had gotten to the point where I didn’t think much about syncing, assuming it would just work. Furthermore, when I tried to manually initiate a sync from the iPhone, the progress indicator would just spin and spin.

I looked in the Console log and found many entries like this:

4/26/12 5:12:03.161 PM Firewall: Deny  connecting from fe80:5::62c5:47ff:fe37:29aa:58959 to port 49212 proto=6
4/26/12 5:12:06.868 PM Firewall: Deny  connecting from 192.168.1.105:58960 to port 49212 proto=6

The iPhone had found my Mac, but the firewall was preventing it from connecting.

I don’t understand why this happens, because I verified in the “Security & Privacy” preferences pane that httpd (the Apache Web server, which OmniFocus uses when set to sync via Bonjour) was set to “Allow incoming connections.” The problem only occurs when Lion’s auto-restore feature has automatically relaunched OmniFocus (e.g. after a kernel panic). In that situation, the firewall will continue to block connections for days.

I’m not sure whether this is due to a bug in the OS or whether OmniFocus should be doing something differently on auto-restore. However, there is a workaround: if I manually quit and relaunch OmniFocus on the Mac, the firewall suddenly opens up and allows the iPhone to connect.

The other thing I’ve learned from these panics is that two of my favorite applications, NetNewsWire and Hibari, save certain state only when they quit cleanly. After the panic, old news items appear as unread, and the Twitter timeline is scrolled to the wrong place.