[Hardy] SRU: Fix boot panic on Acer Aspire One (v2)
stefan.bader at canonical.com
Fri Jul 17 10:24:20 BST 2009
Ozan Çağlayan wrote:
> Stefan Bader wrote:
>> Stefan Bader wrote:
>>> SRU Justification:
>>> Impact: Certain kernel versions cause a kernel panic on the Acer Aspire
>>> One when the kernel changes its data to read-only pages. The underlying
>>> problem is very timing sensitive (adding printks for debugging makes the
>>> problem much less likely to occur).
>>> Fix: As far as we understand, there might be another thread being
>>> running (with a very speculative maybe related to freeing init memory)
>>> which gets badly confused by the global_flush_tlb() (could also be
>>> affected by the fact that changing the page attributes splits a large
>>> kernel page). To prevent that we force all other CPUs to run the stop
>>> work function, which basically acts like a big sync. The performance
>>> impact is minimal as this is done only once on boot. The change is
>>> quirked to only happen on a Acer Aspire One.
>>> Testcase: Booting testkernel on the Acer Aspire One and for comparison
>>> on a Dell Inspiron 1521. Quirk gets activated and boot succeeds on the
>>> Acer while the Dell goes through the same code as before.
>> Applied, thanks
> As another distro's maintainer, I should say that we're having the exact
> same bug reports about Acer Aspire One for our current release which
> uses 22.214.171.124 and the previous one which was using 126.96.36.199. I'll grab
> this patch and let them try with a patched 188.8.131.52.
> As the bug is somehow racy and unpredictably reproducable, I just wanted
> to drop a note for future reference!
> Anyway, thanks for the patch,
> Ozan Caglayan
Hi Ozan, thanks for the feedback. I must say however, that I personally never
saw this sort of thing happen on any kernel after 2.6.24. And I guess I went
through 2.6.27, 2.6.28, 2.6.30 and 2.6.31. So it would be interesting to hear
back from you of your users experience and whether maybe 2.6.31 might help.
Also is your kernel configured to change the kernel data pages to read-only?
When all other means of communication fail, try words!
More information about the kernel-team