MySQL Doesn’t Always Suck; This Time it’s AMD
timetobleed.com
timetobleed.com
I'd rather have MySQL refuse to start in a known-bad configuration than crash during runtime. Maybe I would have to buy new hardware; most likely I'd just have to patch the kernel.
Remember, MySQL is a database. For many of its applications, it is important that it doesn't crash.
Beyond just not crashing, any good database will already have a LOT of code dedicated to verifying data consistency. The best thing MySQL can do in that situation is loudly warn about running on known buggy hardware and then continue checking that its data hasn't been corrupted.
So correct me if I'm wrong but then the solution would be to either hack their own version of mutex_lock or change the call. Actually, both involve changing the call since you'd have to call your new in-house mutex_lock.
That is really not reasonable either. I would expect that they'd have to do it anyway, since MySQL is that mission critical, but the Proper solution following that is to make MySQL dependent on a version of glibc that has a mutex_lock that is patched against the damned Opteron, and issue an immediate patch release.
Your processor is buggy if it's an Opteron family 15, models 32-63 inclusive.