Ubuntu Wily / VMWare graphics boot regression
Sinclair Yeh
syeh at vmware.com
Wed Feb 24 23:27:45 UTC 2016
Hi,
I was able to reproduce this last night after updating 15.10, and I
didn't know what the cause was until your mail.
Let me try a 4.2 kernel with lockdep check enabled and see if I can
spot anything.
Thomas' in a different time zone, so he may also pick this up in
his morning.
Sinclair
On Wed, Feb 24, 2016 at 02:42:10PM -0800, Kamal Mostafa wrote:
> Hi Thomas, Sinclair, and my team-
>
> Here's a weird one. It appears that this Linux commit which was
> recently applied to Ubuntu Wily 15.10 (via 4.2-stable):
>
> [mainline] 025af18 drm/ttm: Fixed a read/write lock imbalance
>
> is the trigger for this rather major Ubuntu/VMWare graphics boot
> regression:
>
> https://bugs.launchpad.net/ubuntu/wily/+source/linux/+bug/1548587
> Ubuntu 15.10 VMWare guest won't show UI after upgrading to 4.2.0-30
>
> (In Comment #33 I produced a test kernel with that commit reverted
> which was confirmed as fixing the regression).
>
>
> But the thing is...
>
> 025af18 (attached) just looks so *obviously* valid, in that the thing
> it fixes looks like it was obviously wrong. I was reluctant to even
> try reverting it, and was surprised when multiple testers confirmed
> that it fixed the problem.
>
> Furthermore, backports of 025af18 have been deployed in many other
> stable kernels (and of course, mainline) but the reported boot problem
> ** only seems to occur with v4.2-based kernels **. The problem does
> occur with 4.2-stable (including the 025af18 backport), but does _not_
> occur with a 4.4 kernel (which always contained 025af18). That commit
> been shipping in pre-4.2 Ubuntu Trusty and Vivid for at cycle or two
> with no reports of problems there either.
>
> So despite the indication that 025af18 is the troublemaker for 4.2-
> stable based kernels, I'm not very happy with the idea of just
> reverting it from 4.2-stable or from Wily without a better
> understanding of why.
>
> Any thoughts on this topic will be much appreciated.
>
> -Kamal
> From 025af189fb44250206dd8a32fa4a682392af3301 Mon Sep 17 00:00:00 2001
> From: Thomas Hellstrom <thellstrom at vmware.com>
> Date: Fri, 20 Nov 2015 11:43:50 -0800
> Subject: drm/ttm: Fixed a read/write lock imbalance
>
> In ttm_write_lock(), the uninterruptible path should call
> __ttm_write_lock() not __ttm_read_lock(). This fixes a vmwgfx hang
> on F23 start up.
>
> syeh: Extracted this from one of Thomas' internal patches.
>
> Cc: <stable at vger.kernel.org>
> Signed-off-by: Thomas Hellstrom <thellstrom at vmware.com>
> Reviewed-by: Sinclair Yeh <syeh at vmware.com>
> ---
> drivers/gpu/drm/ttm/ttm_lock.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/ttm/ttm_lock.c b/drivers/gpu/drm/ttm/ttm_lock.c
> index 6a95454..f154fb1 100644
> --- a/drivers/gpu/drm/ttm/ttm_lock.c
> +++ b/drivers/gpu/drm/ttm/ttm_lock.c
> @@ -180,7 +180,7 @@ int ttm_write_lock(struct ttm_lock *lock, bool interruptible)
> spin_unlock(&lock->lock);
> }
> } else
> - wait_event(lock->queue, __ttm_read_lock(lock));
> + wait_event(lock->queue, __ttm_write_lock(lock));
>
> return ret;
> }
> --
> 2.7.0
>
More information about the kernel-team
mailing list