Monday, November 15, 2021

Mouse Pointer Memory Leak

Howard Oakley (Hacker News, MacRumors):

Soon after the release of macOS 12.0.1, reports appeared that some apps, notably Firefox, could suffer large and progressive memory leaks until they took 70 GB or more of app memory, and the Mac simply ran out. At first this appeared confined to certain apps, including Firefox, Microsoft Word, and even Safari.

[…]

The cause has now been isolated to a single group of settings in one preference pane, Accessibility. All Macs which appear to suffer this leak are using custom pointer controls in the Pointer tab of the Display, specifically a larger than normal Pointer size and custom outline and fill colours. The latter two items are one of the new features in Monterey, and have proved popular with users.

[…]

Apps which feature many and frequent changes in pointer type, such as browsers, therefore leak memory more quickly than those that change the pointer type less often. However, every app with an interface in which the pointer can change type will leak until this bug is fixed in Monterey.

I’m also seeing reports of this happening on Big Sur.

Update (2021-11-15): Steve Troughton-Smith:

This is crazy. You can literally wiggle the mouse cursor over the sidebar divider in Finder and watch its memory usage go up by a couple MB every time the cursor changes

Update (2021-11-16): Josh Centers:

On 9to5Mac, Ben Lovejoy argues that the custom pointers aren’t the sole cause of memory leaks, although he says resetting the pointer is worth trying. However, Howard Oakley points out that this leak is associated with any pointer change—such as from the arrow to the text insertion bar—so any app with frequent pointer changes, like a Web browser, will suffer from this issue.

See also: Hacker News, Reddit.

Update (2021-11-23): Kyle Howells:

Just a casual 124GB of ram being used by Control Centre, no big deal.... No memory leak here. Everything completely under control.

Gregory McFadden:

So glad I got 64GB of memory on my new Mac so I can use 26GB of it for control center... Wait... what.

Howard Oakley:

I can now describe a total of four [memory leaks], three of which I can reproduce here, and one which I can’t. This article summarises them, and how to avoid becoming victim to them.

Update (2021-11-29): Saagar Jha:

FYI: the situation with the widely reported “macOS memory leaks” is not as simple as the cursor leak that Mozilla found. I trust that their analysis is accurate, but it isn’t the whole answer: the true situation is more complicated than “don’t use custom cursors”.

Update (2021-12-17): Robin Kunde:

Haven’t seen this mentioned much, but 12.1 fixed the mouse pointer related memory leaks for me.

Previously:

4 Comments RSS · Twitter

Wonder if this is the same memory leak plaguing Control Center for some.

Ah, but this is nothing a little multi-gigabyte patch update can't fix. 😛

"go up by a couple MB"

How big are these fricken mouse cursors? Do they really allocate megabytes of data for every change?

Kirk McElhearn

Just to add another data point, I'm not seeing this, and I've had my cursor set to a larger size for many years.

Leave a Comment