Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753668AbbG3OM4 (ORCPT ); Thu, 30 Jul 2015 10:12:56 -0400 Received: from mail-ob0-f194.google.com ([209.85.214.194]:34489 "EHLO mail-ob0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753237AbbG3OMy (ORCPT ); Thu, 30 Jul 2015 10:12:54 -0400 MIME-Version: 1.0 In-Reply-To: <1438252085-4773-1-git-send-email-pure.logic@nexus-software.ie> References: <1438252085-4773-1-git-send-email-pure.logic@nexus-software.ie> Date: Thu, 30 Jul 2015 10:12:53 -0400 X-Google-Sender-Auth: Gb19eyhtpU0zMjQCPULy54z9qTU Message-ID: Subject: Re: [PATCH] drm/nouveau/gem: tolerate a buffer specified multiple times From: Ilia Mirkin To: "Bryan O'Donoghue" Cc: David Airlie , Ben Skeggs , Maarten Lankhorst , "dri-devel@lists.freedesktop.org" , "linux-kernel@vger.kernel.org" Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3072 Lines: 71 Is this happening with libdrm 2.4.60? If so, that's a known (user-side) issue and should be fixed by using any version but that one. On Thu, Jul 30, 2015 at 6:28 AM, Bryan O'Donoghue wrote: > Ubuntu is shipping Chrome Version 44.0.2403.125 (64-bit). With this version > of the browser and current tip-of-tree 86ea07ca846a I get the following > error message followed by a lock-up of X. > > nouveau E[chrome[2737]] multiple instances of buffer 33 on validation list > nouveau E[chrome[2737]] validate_init > nouveau E[chrome[2737]] validate: -22 > nouveau E[chrome[2737]] multiple instances of buffer 18 on validation list > nouveau E[chrome[2737]] validate_init > nouveau E[chrome[2737]] validate: -22 > nouveau E[ PFIFO][0000:01:00.0] PFIFO: read fault at > 0x0003e21000 [PAGE_NOT_PRESENT] from (unknown enum > 0x00000000)/GPC0/(unknown enum 0x0000000f) on channel 0x007f80c000 > [unknown] > > This patch suggests a fix for this with the kernel simply tolerating an > application such as chrome requesting the same buffer more than once. > > With the version of chrome given above, you can elicit this behaviour by > clicking on the bookmarks drop down. This will open another window on-top > of the current window. Minus the fix included here, this will lead to hard > lockup of all windows on the desktop. > > Chrome Version 44.0.2403.125 (64-bit) > Linux 4.2.0-rc4+ 86ea07ca846a > > People are suggesting running chrome with -disable-gpu however it is > possible to run Chrome in it's default mode, so long as we tolerate the > above behaviour. > > http://tinyurl.com/orvbzf3 > > Signed-off-by: Bryan O'Donoghue > --- > drivers/gpu/drm/nouveau/nouveau_gem.c | 4 +--- > 1 file changed, 1 insertion(+), 3 deletions(-) > > diff --git a/drivers/gpu/drm/nouveau/nouveau_gem.c b/drivers/gpu/drm/nouveau/nouveau_gem.c > index af1ee51..a9694faad 100644 > --- a/drivers/gpu/drm/nouveau/nouveau_gem.c > +++ b/drivers/gpu/drm/nouveau/nouveau_gem.c > @@ -401,9 +401,7 @@ retry: > if (nvbo->reserved_by && nvbo->reserved_by == file_priv) { > NV_PRINTK(error, cli, "multiple instances of buffer %d on " > "validation list\n", b->handle); > - drm_gem_object_unreference_unlocked(gem); > - ret = -EINVAL; > - break; > + continue; > } > > ret = ttm_bo_reserve(&nvbo->bo, true, false, true, &op->ticket); > -- > 1.9.1 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html > Please read the FAQ at http://www.tux.org/lkml/ -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/