On Wed, Oct 09, 2013 at 10:29:39AM +0200, Henrik Rydberg wrote: > From 18fa0f55b764ad0fe5fc49f81bae281e5110ed56 Mon Sep 17 00:00:00 2001 > From: Henrik Rydberg <rydberg@xxxxxxxxxxx> > Date: Wed, 2 Oct 2013 19:15:03 +0200 > Subject: [PATCH] hwmon: (applesmc) Always read until end of data > > The crash reported and investigated in commit 5f4513 turned out to be > caused by a change to the read interface on newer (2012) SMCs. > > Tests by Chris show that simply reading the data valid line is enough > for the problem to go away. Additional tests show that the newer SMCs > no longer wait for the number of requested bytes, but start sending > data right away. Apparently the number of bytes to read is no longer > specified as before, but instead found out by reading until end of > data. Failure to read until end of data confuses the state machine, > which eventually causes the crash. > > As a remedy, assuming bit0 is the read valid line, make sure there is > nothing more to read before leaving the read function. > > Tested to resolve the original problem, and runtested on MBA3,1, > MBP4,1, MBP8,2, MBP10,1, MBP10,2. The patch seems to have no effect on > machines before 2012. > > Tested-by: Chris Murphy <chris@xxxxxxxxx> > Signed-off-by: Henrik Rydberg <rydberg@xxxxxxxxxxx> Applied. I'll do my usual sanity testing and send it to Linus either tomorrow or Friday. Thanks, Guenter _______________________________________________ lm-sensors mailing list lm-sensors@xxxxxxxxxxxxxx http://lists.lm-sensors.org/mailman/listinfo/lm-sensors