From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751642AbaHDPJO (ORCPT ); Mon, 4 Aug 2014 11:09:14 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:39281 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1750908AbaHDPJN (ORCPT ); Mon, 4 Aug 2014 11:09:13 -0400 Message-ID: <53DFA210.2020603@canonical.com> Date: Mon, 04 Aug 2014 17:09:04 +0200 From: Maarten Lankhorst User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.5.0 MIME-Version: 1.0 To: =?UTF-8?B?Q2hyaXN0aWFuIEvDtm5pZw==?= , airlied@linux.ie CC: thellstrom@vmware.com, nouveau@lists.freedesktop.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, bskeggs@redhat.com, alexander.deucher@amd.com Subject: Re: [PATCH 09/19] drm/radeon: handle lockup in delayed work, v2 References: <20140731153245.15061.63023.stgit@patser> <20140731153342.15061.54264.stgit@patser> <53DBC1EC.1010001@amd.com> <53DBD269.80807@canonical.com> <53DF462B.2060102@amd.com> <53DF4A7D.3040505@canonical.com> <53DF7516.2010408@amd.com> <53DF8BF2.4000309@canonical.com> <53DF9AC4.3010700@amd.com> <53DF9B58.8000403@canonical.com> <53DF9C88.6060107@amd.com> <53DF9F89.60202@canonical.com> <53DFA0EB.5040302@amd.com> In-Reply-To: <53DFA0EB.5040302@amd.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org op 04-08-14 17:04, Christian König schreef: > Am 04.08.2014 um 16:58 schrieb Maarten Lankhorst: >> op 04-08-14 16:45, Christian König schreef: >>> Am 04.08.2014 um 16:40 schrieb Maarten Lankhorst: >>>> op 04-08-14 16:37, Christian König schreef: >>>>>> It'a pain to deal with gpu reset. >>>>> Yeah, well that's nothing new. >>>>> >>>>>> I've now tried other solutions but that would mean reverting to the old style during gpu lockup recovery, and only running the delayed work when !lockup. >>>>>> But this meant that the timeout was useless to add. I think the cleanest is keeping the v2 patch, because potentially any waiting code can be called during lockup recovery. >>>>> The lockup code itself should never call any waiting code and V2 doesn't seem to handle a couple of cases correctly either. >>>>> >>>>> How about moving the fence waiting out of the reset code? >>>> What cases did I miss then? >>>> >>>> I'm curious how you want to move the fence waiting out of reset, when there are so many places that could potentially wait, like radeon_ib_get can call radeon_sa_bo_new which can do a wait, or radeon_ring_alloc that can wait on radeon_fence_wait_next, etc. >>> The IB test itself doesn't needs to be protected by the exclusive lock. Only everything between radeon_save_bios_scratch_regs and radeon_ring_restore. >> I'm not sure about that, what do you want to do if the ring tests fail? Do you have to retake the exclusive lock? > > Just set need_reset again and return -EAGAIN, that should have mostly the same effect as what we are doing right now. Yeah, except for the locking the ttm delayed workqueue, but that bool should be easy to save/restore. I think this could work. ~Maarten From mboxrd@z Thu Jan 1 00:00:00 1970 From: Maarten Lankhorst Subject: Re: [PATCH 09/19] drm/radeon: handle lockup in delayed work, v2 Date: Mon, 04 Aug 2014 17:09:04 +0200 Message-ID: <53DFA210.2020603@canonical.com> References: <20140731153245.15061.63023.stgit@patser> <20140731153342.15061.54264.stgit@patser> <53DBC1EC.1010001@amd.com> <53DBD269.80807@canonical.com> <53DF462B.2060102@amd.com> <53DF4A7D.3040505@canonical.com> <53DF7516.2010408@amd.com> <53DF8BF2.4000309@canonical.com> <53DF9AC4.3010700@amd.com> <53DF9B58.8000403@canonical.com> <53DF9C88.6060107@amd.com> <53DF9F89.60202@canonical.com> <53DFA0EB.5040302@amd.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <53DFA0EB.5040302@amd.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: =?UTF-8?B?Q2hyaXN0aWFuIEvDtm5pZw==?= , airlied@linux.ie Cc: thellstrom@vmware.com, nouveau@lists.freedesktop.org, linux-kernel@vger.kernel.org, dri-devel@lists.freedesktop.org, bskeggs@redhat.com, alexander.deucher@amd.com List-Id: nouveau.vger.kernel.org b3AgMDQtMDgtMTQgMTc6MDQsIENocmlzdGlhbiBLw7ZuaWcgc2NocmVlZjoKPiBBbSAwNC4wOC4y MDE0IHVtIDE2OjU4IHNjaHJpZWIgTWFhcnRlbiBMYW5raG9yc3Q6Cj4+IG9wIDA0LTA4LTE0IDE2 OjQ1LCBDaHJpc3RpYW4gS8O2bmlnIHNjaHJlZWY6Cj4+PiBBbSAwNC4wOC4yMDE0IHVtIDE2OjQw IHNjaHJpZWIgTWFhcnRlbiBMYW5raG9yc3Q6Cj4+Pj4gb3AgMDQtMDgtMTQgMTY6MzcsIENocmlz dGlhbiBLw7ZuaWcgc2NocmVlZjoKPj4+Pj4+IEl0J2EgcGFpbiB0byBkZWFsIHdpdGggZ3B1IHJl c2V0Lgo+Pj4+PiBZZWFoLCB3ZWxsIHRoYXQncyBub3RoaW5nIG5ldy4KPj4+Pj4KPj4+Pj4+IEkn dmUgbm93IHRyaWVkIG90aGVyIHNvbHV0aW9ucyBidXQgdGhhdCB3b3VsZCBtZWFuIHJldmVydGlu ZyB0byB0aGUgb2xkIHN0eWxlIGR1cmluZyBncHUgbG9ja3VwIHJlY292ZXJ5LCBhbmQgb25seSBy dW5uaW5nIHRoZSBkZWxheWVkIHdvcmsgd2hlbiAhbG9ja3VwLgo+Pj4+Pj4gQnV0IHRoaXMgbWVh bnQgdGhhdCB0aGUgdGltZW91dCB3YXMgdXNlbGVzcyB0byBhZGQuIEkgdGhpbmsgdGhlIGNsZWFu ZXN0IGlzIGtlZXBpbmcgdGhlIHYyIHBhdGNoLCBiZWNhdXNlIHBvdGVudGlhbGx5IGFueSB3YWl0 aW5nIGNvZGUgY2FuIGJlIGNhbGxlZCBkdXJpbmcgbG9ja3VwIHJlY292ZXJ5Lgo+Pj4+PiBUaGUg bG9ja3VwIGNvZGUgaXRzZWxmIHNob3VsZCBuZXZlciBjYWxsIGFueSB3YWl0aW5nIGNvZGUgYW5k IFYyIGRvZXNuJ3Qgc2VlbSB0byBoYW5kbGUgYSBjb3VwbGUgb2YgY2FzZXMgY29ycmVjdGx5IGVp dGhlci4KPj4+Pj4KPj4+Pj4gSG93IGFib3V0IG1vdmluZyB0aGUgZmVuY2Ugd2FpdGluZyBvdXQg b2YgdGhlIHJlc2V0IGNvZGU/Cj4+Pj4gV2hhdCBjYXNlcyBkaWQgSSBtaXNzIHRoZW4/Cj4+Pj4K Pj4+PiBJJ20gY3VyaW91cyBob3cgeW91IHdhbnQgdG8gbW92ZSB0aGUgZmVuY2Ugd2FpdGluZyBv dXQgb2YgcmVzZXQsIHdoZW4gdGhlcmUgYXJlIHNvIG1hbnkgcGxhY2VzIHRoYXQgY291bGQgcG90 ZW50aWFsbHkgd2FpdCwgbGlrZSByYWRlb25faWJfZ2V0IGNhbiBjYWxsIHJhZGVvbl9zYV9ib19u ZXcgd2hpY2ggY2FuIGRvIGEgd2FpdCwgb3IgcmFkZW9uX3JpbmdfYWxsb2MgdGhhdCBjYW4gd2Fp dCBvbiByYWRlb25fZmVuY2Vfd2FpdF9uZXh0LCBldGMuCj4+PiBUaGUgSUIgdGVzdCBpdHNlbGYg ZG9lc24ndCBuZWVkcyB0byBiZSBwcm90ZWN0ZWQgYnkgdGhlIGV4Y2x1c2l2ZSBsb2NrLiBPbmx5 IGV2ZXJ5dGhpbmcgYmV0d2VlbiByYWRlb25fc2F2ZV9iaW9zX3NjcmF0Y2hfcmVncyBhbmQgcmFk ZW9uX3JpbmdfcmVzdG9yZS4KPj4gSSdtIG5vdCBzdXJlIGFib3V0IHRoYXQsIHdoYXQgZG8geW91 IHdhbnQgdG8gZG8gaWYgdGhlIHJpbmcgdGVzdHMgZmFpbD8gRG8geW91IGhhdmUgdG8gcmV0YWtl IHRoZSBleGNsdXNpdmUgbG9jaz8KPgo+IEp1c3Qgc2V0IG5lZWRfcmVzZXQgYWdhaW4gYW5kIHJl dHVybiAtRUFHQUlOLCB0aGF0IHNob3VsZCBoYXZlIG1vc3RseSB0aGUgc2FtZSBlZmZlY3QgYXMg d2hhdCB3ZSBhcmUgZG9pbmcgcmlnaHQgbm93LgpZZWFoLCBleGNlcHQgZm9yIHRoZSBsb2NraW5n IHRoZSB0dG0gZGVsYXllZCB3b3JrcXVldWUsIGJ1dCB0aGF0IGJvb2wgc2hvdWxkIGJlIGVhc3kg dG8gc2F2ZS9yZXN0b3JlLgpJIHRoaW5rIHRoaXMgY291bGQgd29yay4KCn5NYWFydGVuCgpfX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwgbWFp bGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3RzLmZy ZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=