From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mario Kleiner Subject: [PATCH 5/6] drm: Prevent vblank counter jumps with timestamp based update method. Date: Mon, 8 Feb 2016 02:13:28 +0100 Message-ID: <1454894009-15466-6-git-send-email-mario.kleiner.de@gmail.com> References: <1454894009-15466-1-git-send-email-mario.kleiner.de@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-f67.google.com (mail-wm0-f67.google.com [74.125.82.67]) by gabe.freedesktop.org (Postfix) with ESMTPS id 40FCC6E32B for ; Sun, 7 Feb 2016 17:14:52 -0800 (PST) Received: by mail-wm0-f67.google.com with SMTP id g62so13234771wme.2 for ; Sun, 07 Feb 2016 17:14:52 -0800 (PST) In-Reply-To: <1454894009-15466-1-git-send-email-mario.kleiner.de@gmail.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: dri-devel@lists.freedesktop.org Cc: daniel.vetter@ffwll.ch, michel@daenzer.net, linux@bernd-steinhauser.de, stable@vger.kernel.org, alexander.deucher@amd.com, christian.koenig@amd.com, vbabka@suse.cz List-Id: dri-devel@lists.freedesktop.org VGhlIGNoYW5nZXMgdG8gZHJtX3VwZGF0ZV92YmxhbmtfY291bnQoKSBpbiBMaW51eCA0LjQgYWRk ZWQgYQptZXRob2QgdG8gZW11bGF0ZSBhIGhhcmR3YXJlIHZibGFuayBjb3VudGVyIGJ5IHVzZSBv ZiBoaWdoCnByZWNpc2lvbiB2YmxhbmsgdGltZXN0YW1wcyBpZiBhIGttcyBkcml2ZXIgc3VwcG9y dHMgdGhvc2UsCmJ1dCBkb2Vzbid0IHN1cHBwb3J0IGh3IHZibGFuayBjb3VudGVycy4KClRoYXQg bWV0aG9kIGFzc3VtZXMgdGhhdCB0aGUgb2xkIHRpbWVzdGFtcCBmcm9tIGEgcHJldmlvdXMKaW52 b2NhdGlvbiBpcyB2YWxpZCwgYnV0IHRoYXQgaXMgbm90IGFsd2F5cyB0aGUgY2FzZS4gRS5nLiwK aWYgZHJtX3Jlc2V0X3ZibGFua190aW1lc3RhbXAoKSBnZXRzIGNhbGxlZCBkdXJpbmcgZHJtX3Zi bGFua19vbigpCm9yIGRybV91cGRhdGVfdmJsYW5rX2NvdW50KCkgZ2V0cyBjYWxsZWQgb3V0c2lk ZSB2YmxhbmsgaXJxIGFuZAp0aGUgaGlnaCBwcmVjaXNpb24gdGltZXN0YW1waW5nIGNhbid0IGRl bGl2ZXIgYSBwcmVjaXNlIHRpbWVzdGFtcCwKaWUuIGRybV9nZXRfbGFzdF92Ymx0aW1lc3RhbXAo KSBkZWxpdmVycyBhIHJldHVybiB2YWx1ZSBvZiBmYWxzZSwKdGhlbiB0aG9zZSBmdW5jdGlvbnMg d2lsbCBpbml0aWFsaXplIHRoZSBvbGQgdGltZXN0YW1wIHRvIHplcm8KdG8gbWFyayBpdCBhcyBp bnZhbGlkLgoKQSBmb2xsb3dpbmcgY2FsbCB0byBkcm1fdXBkYXRlX3ZibGFua19jb3VudCgpIHdv dWxkIHRoZW4gY2FsY3VsYXRlCmVsYXBzZWQgdGltZSB3aXRoIHZibGFuayBpcnFzIG9mZiBhcyBj dXJyZW50IHZibGFuayB0aW1lc3RhbXAgbWludXMKdGhlIHplcm8gb2xkIHRpbWVzdGFtcCBhbmQg Y29tcHV0ZSBhIHNvZnR3YXJlIHZibGFuayBjb3VudGVyIGluY3JlbWVudAp0aGF0IGNvcnJlc3Bv bmRzIHRvIHN5c3RlbSB1cHRpbWUsIGNhdXNpbmcgYSBsYXJnZSBmb3J3YXJkIGp1bXAgb2YgdGhl CnNvZnR3YXJlIHZibGFuayBjb3VudGVyLiBUaGF0IGp1bXAgaW4gdHVybiBjYW4gY2F1c2UgdG9v IGxvbmcgd2FpdHMKaW4gZHJtV2FpdFZibGFuayBhbmQgdmVyeSBsb25nIGRlbGF5cyBpbiBkZWxp dmVyeSBvZiB2YmxhbmsgZXZlbnRzLApyZXN1bHRpbmcgaW4gaGFuZ3Mgb2YgdXNlcnNwYWNlIGNs aWVudHMuCgpUaGlzIHByb2JsZW0gY2FuIGJlIG9ic2VydmVkIG9uIG5vdXZlYXUta21zIGR1cmlu ZyBtYWNoaW5lCnN1c3BlbmQtPnJlc3VtZSBjeWNsZXMsIHdoZXJlIGRybV92Ymxhbmtfb2ZmIGlz IGNhbGxlZCBkdXJpbmcKc3VzcGVuZCwgZHJtX3ZibGFua19vbiBpcyBjYWxsZWQgZHVyaW5nIHJl c3VtZSBhbmQgdGhlIGZpcnN0CnF1ZXJpZXMgdG8gZHJtX2dldF9sYXN0X3ZibHRpbWVzdGFtcCgp IGRvbid0IGRlbGl2ZXIgaGlnaApwcmVjaXNpb24gdGltZXN0YW1wcywgcmVzdWx0aW5nIGluIGEg bGFyZ2UgaGFybWZ1bCBjb3VudGVyIGp1bXAuCgpGaXggdGhpcyBieSBjaGVja2luZyBpZiB0aGUg b2xkIHRpbWVzdGFtcCB1c2VkIGZvciB0aGlzIGNhbGN1bGF0aW9ucwppcyB6ZXJvID09IGludmFs aWQuIElmIHNvLCBwZXJmb3JtIGEgY291bnRlciBpbmNyZW1lbnQgb2YgKzEgdG8KcHJldmVudCBs YXJnZSBjb3VudGVyIGp1bXBzIGFuZCByZWluaXRpYWxpemUgdGhlIHRpbWVzdGFtcHMgdG8Kc2Fu ZSB2YWx1ZXMuCgpTaWduZWQtb2ZmLWJ5OiBNYXJpbyBLbGVpbmVyIDxtYXJpby5rbGVpbmVyLmRl QGdtYWlsLmNvbT4KQ2M6IDxzdGFibGVAdmdlci5rZXJuZWwub3JnPiAjIDQuNCsKQ2M6IG1pY2hl bEBkYWVuemVyLm5ldApDYzogdmJhYmthQHN1c2UuY3oKQ2M6IHZpbGxlLnN5cmphbGFAbGludXgu aW50ZWwuY29tCkNjOiBkYW5pZWwudmV0dGVyQGZmd2xsLmNoCkNjOiBkcmktZGV2ZWxAbGlzdHMu ZnJlZWRlc2t0b3Aub3JnCkNjOiBhbGV4YW5kZXIuZGV1Y2hlckBhbWQuY29tCkNjOiBjaHJpc3Rp YW4ua29lbmlnQGFtZC5jb20KLS0tCiBkcml2ZXJzL2dwdS9kcm0vZHJtX2lycS5jIHwgNyArKysr KysrCiAxIGZpbGUgY2hhbmdlZCwgNyBpbnNlcnRpb25zKCspCgpkaWZmIC0tZ2l0IGEvZHJpdmVy cy9ncHUvZHJtL2RybV9pcnEuYyBiL2RyaXZlcnMvZ3B1L2RybS9kcm1faXJxLmMKaW5kZXggZmIx N2M0NS4uODhiZGYxOSAxMDA2NDQKLS0tIGEvZHJpdmVycy9ncHUvZHJtL2RybV9pcnEuYworKysg Yi9kcml2ZXJzL2dwdS9kcm0vZHJtX2lycS5jCkBAIC0yMTYsNiArMjE2LDEzIEBAIHN0YXRpYyB2 b2lkIGRybV91cGRhdGVfdmJsYW5rX2NvdW50KHN0cnVjdCBkcm1fZGV2aWNlICpkZXYsIHVuc2ln bmVkIGludCBwaXBlLAogCQkJRFJNX0RFQlVHX1ZCTCgiY3J0YyAldTogUmVkdW5kYW50IHZibGly cSBpZ25vcmVkLiIKIAkJCQkgICAgICAiIGRpZmZfbnMgPSAlbGxkLCBmcmFtZWR1cl9ucyA9ICVk KVxuIiwKIAkJCQkgICAgICBwaXBlLCAobG9uZyBsb25nKSBkaWZmX25zLCBmcmFtZWR1cl9ucyk7 CisKKwkJLyogTm8gdmFsaWQgdF9vbGQgdG8gY2FsY3VsYXRlIGRpZmY/IEJ1bXAgKzEgdG8gZm9y Y2UgcmVpbml0LiAqLworCQlpZiAodF9vbGQtPnR2X3NlYyA9PSAwICYmIHRfb2xkLT50dl91c2Vj ID09IDApIHsKKwkJCURSTV9ERUJVR19WQkwoImNydGMgJXU6IE5vIGJhc2VsaW5lIHRzLiBCdW1w ICsxLlxuIiwKKwkJCQkgICAgICBwaXBlKTsKKwkJCWRpZmYgPSAxOworCQl9CiAJfSBlbHNlIHsK IAkJLyogc29tZSBraW5kIG9mIGRlZmF1bHQgZm9yIGRyaXZlcnMgdy9vIGFjY3VyYXRlIHZibCB0 aW1lc3RhbXBpbmcgKi8KIAkJZGlmZiA9IChmbGFncyAmIERSTV9DQUxMRURfRlJPTV9WQkxJUlEp ICE9IDA7Ci0tIAoxLjkuMQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KZHJpLWRldmVsIG1haWxpbmcgbGlzdApkcmktZGV2ZWxAbGlzdHMuZnJlZWRlc2t0 b3Aub3JnCmh0dHBzOi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vZHJp LWRldmVsCg==