Comment 17 for bug 1258655

Revision history for this message
Seth Forshee (sforshee) wrote : Re: [Bug 1258655] Re: Abort when blanking/unblanking screen; exception thrown from mir::graphics::android::HWCCommonDevice::mode(MirPowerMode)

On Fri, Dec 20, 2013 at 01:59:20AM -0000, Daniel van Vugt wrote:
> Forgive my silly question, but:
> Why can't we just be more fault-tolerant and avoid the offending throw from Mir? Log a warning at most, but don't intentionally crash on it.

+1. However ...

> Would that result in an interaction with powerd rendering the system
> unusable? Or would it be sufficient to allow some recovery/retries?

On mako I fear that the driver has bugs that may still result in
unrecoverable problems. This is based on having found unity8 threads
stuck in uninterruptible sleep when in this state due to being blocked
on some mutex within the dispaly driver. We could try to fix this in the
driver, but we may encounter similar problems with other android
kernels, so I think we need to find some way to make powerd synchronize
wrt the kernel early suspend processing.

So I think we should do both: make Mir do something sane when the ioctl
returns an error, and add a workaround to powerd to avoid this race.