From: Karol Herbst Subject: [RFC PATCH 08/29] clk: We should pass the pstate id around not the index in the list Date: Fri, 15 Sep 2017 19:11:08 +0200 Message-ID: <20170915171129.5009-9-karolherbst@gmail.com> References: <20170915171129.5009-1-karolherbst@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20170915171129.5009-1-karolherbst-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: nouveau-bounces-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org Sender: "Nouveau" To: nouveau-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org List-Id: nouveau.vger.kernel.org VGhpcyBtYWtlcyB0aGUgY29kZSBlYXNpZXIsIGJlY2F1c2Ugd2UgY2FuIGNvbXBhcmUgdGhlIGlk IHdpdGgKcHN0YXRlLT5wc3RhdGUgYW5kIHNhdmVzIHVzIGZyb20gdGhlIHRyb3VibGUgb2YgaXRl cmF0aW5nIG92ZXIgdGhlIHBzdGF0ZXMKdG8gbWF0Y2ggdGhlIGluZGV4LgoKdjI6IHJld29yZCBj b21taXQgbWVzc2FnZQoKU2lnbmVkLW9mZi1ieTogS2Fyb2wgSGVyYnN0IDxrYXJvbGhlcmJzdEBn bWFpbC5jb20+ClJldmlld2VkLWJ5OiBNYXJ0aW4gUGVyZXMgPG1hcnRpbi5wZXJlc0BmcmVlLmZy PgotLS0KIGRybS9ub3V2ZWF1L25vdXZlYXVfZGVidWdmcy5jICAgICAgfCAgNiArLS0KIGRybS9u b3V2ZWF1L252a20vc3ViZGV2L2Nsay9iYXNlLmMgfCA3OCArKysrKysrKysrKysrKysrKysrLS0t LS0tLS0tLS0tLS0tLS0tLQogMiBmaWxlcyBjaGFuZ2VkLCA0MSBpbnNlcnRpb25zKCspLCA0MyBk ZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9kcm0vbm91dmVhdS9ub3V2ZWF1X2RlYnVnZnMuYyBi L2RybS9ub3V2ZWF1L25vdXZlYXVfZGVidWdmcy5jCmluZGV4IDk2M2E0ZGJhLi4yNzI4MWM0ZSAx MDA2NDQKLS0tIGEvZHJtL25vdXZlYXUvbm91dmVhdV9kZWJ1Z2ZzLmMKKysrIGIvZHJtL25vdXZl YXUvbm91dmVhdV9kZWJ1Z2ZzLmMKQEAgLTk2LDExICs5NiwxMSBAQCBub3V2ZWF1X2RlYnVnZnNf cHN0YXRlX2dldChzdHJ1Y3Qgc2VxX2ZpbGUgKm0sIHZvaWQgKmRhdGEpCiAJCX0gd2hpbGUgKGF0 dHIuaW5kZXgpOwogCiAJCWlmIChzdGF0ZSA+PSAwKSB7Ci0JCQlpZiAoaW5mby51c3RhdGVfYWMg PT0gc3RhdGUpCisJCQlpZiAoaW5mby51c3RhdGVfYWMgPT0gYXR0ci5zdGF0ZSkKIAkJCQlzZXFf cHJpbnRmKG0sICIgQUMiKTsKLQkJCWlmIChpbmZvLnVzdGF0ZV9kYyA9PSBzdGF0ZSkKKwkJCWlm IChpbmZvLnVzdGF0ZV9kYyA9PSBhdHRyLnN0YXRlKQogCQkJCXNlcV9wcmludGYobSwgIiBEQyIp OwotCQkJaWYgKGluZm8ucHN0YXRlID09IHN0YXRlKQorCQkJaWYgKGluZm8ucHN0YXRlID09IGF0 dHIuc3RhdGUpCiAJCQkJc2VxX3ByaW50ZihtLCAiICoiKTsKIAkJfSBlbHNlIHsKIAkJCWlmIChp bmZvLnVzdGF0ZV9hYyA8IC0xKQpkaWZmIC0tZ2l0IGEvZHJtL25vdXZlYXUvbnZrbS9zdWJkZXYv Y2xrL2Jhc2UuYyBiL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9iYXNlLmMKaW5kZXggZDM3 YzEzYjcuLjFkNzFiZjA5IDEwMDY0NAotLS0gYS9kcm0vbm91dmVhdS9udmttL3N1YmRldi9jbGsv YmFzZS5jCisrKyBiL2RybS9ub3V2ZWF1L252a20vc3ViZGV2L2Nsay9iYXNlLmMKQEAgLTI3Miwy MyArMjcyLDI2IEBAIG52a21fY3N0YXRlX25ldyhzdHJ1Y3QgbnZrbV9jbGsgKmNsaywgaW50IGlk eCwgc3RydWN0IG52a21fcHN0YXRlICpwc3RhdGUpCiAgKiBQLVN0YXRlcwogICoqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqLwogc3RhdGljIGludAotbnZrbV9wc3RhdGVfcHJvZyhzdHJ1Y3QgbnZrbV9jbGsg KmNsaywgaW50IHBzdGF0ZWkpCitudmttX3BzdGF0ZV9wcm9nKHN0cnVjdCBudmttX2NsayAqY2xr LCBpbnQgcHN0YXRlaWQpCiB7CiAJc3RydWN0IG52a21fc3ViZGV2ICpzdWJkZXYgPSAmY2xrLT5z dWJkZXY7CiAJc3RydWN0IG52a21fZmIgKmZiID0gc3ViZGV2LT5kZXZpY2UtPmZiOwogCXN0cnVj dCBudmttX3BjaSAqcGNpID0gc3ViZGV2LT5kZXZpY2UtPnBjaTsKIAlzdHJ1Y3QgbnZrbV9wc3Rh dGUgKnBzdGF0ZTsKLQlpbnQgcmV0LCBpZHggPSAwOworCWludCByZXQ7CiAKLQlpZiAocHN0YXRl aSA9PSBOVktNX0NMS19QU1RBVEVfREVGQVVMVCkKKwlpZiAocHN0YXRlaWQgPT0gTlZLTV9DTEtf UFNUQVRFX0RFRkFVTFQpCiAJCXJldHVybiAwOwogCiAJbGlzdF9mb3JfZWFjaF9lbnRyeShwc3Rh dGUsICZjbGstPnN0YXRlcywgaGVhZCkgewotCQlpZiAoaWR4KysgPT0gcHN0YXRlaSkKKwkJaWYg KHBzdGF0ZS0+cHN0YXRlID09IHBzdGF0ZWlkKQogCQkJYnJlYWs7CiAJfQogCi0JbnZrbV9kZWJ1 ZyhzdWJkZXYsICJzZXR0aW5nIHBlcmZvcm1hbmNlIHN0YXRlICVkXG4iLCBwc3RhdGVpKTsKKwlp ZiAoIXBzdGF0ZSkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwludmttX2RlYnVnKHN1YmRldiwgInNl dHRpbmcgcGVyZm9ybWFuY2Ugc3RhdGUgJXhcbiIsIHBzdGF0ZWlkKTsKIAljbGstPnBzdGF0ZSA9 IHBzdGF0ZTsKIAogCW52a21fcGNpZV9zZXRfbGluayhwY2ksIHBzdGF0ZS0+cGNpZV9zcGVlZCwg cHN0YXRlLT5wY2llX3dpZHRoKTsKQEAgLTMyOSw3ICszMzIsNiBAQCBudmttX2Nsa191cGRhdGVf d29yayhzdHJ1Y3Qgd29ya19zdHJ1Y3QgKndvcmspCiAJcHN0YXRlID0gY2xrLT5wd3JzcmMgPyBj bGstPnVzdGF0ZV9hYyA6IGNsay0+dXN0YXRlX2RjOwogCWlmIChjbGstPnN0YXRlX25yICYmIHBz dGF0ZSAhPSAtMSkgewogCQlwc3RhdGUgPSAocHN0YXRlIDwgMCkgPyBjbGstPmFzdGF0ZSA6IHBz dGF0ZTsKLQkJcHN0YXRlID0gbWluKHBzdGF0ZSwgY2xrLT5zdGF0ZV9uciAtIDEpOwogCX0gZWxz ZSB7CiAJCXBzdGF0ZSA9IE5WS01fQ0xLX1BTVEFURV9ERUZBVUxUOwogCX0KQEAgLTQ5MCwzMyAr NDkyLDEwIEBAIG52a21fcHN0YXRlX25ldyhzdHJ1Y3QgbnZrbV9jbGsgKmNsaywgaW50IGlkeCkK IC8qKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioKICAqIEFkanVzdG1lbnQgdHJpZ2dlcnMKICAqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKi8KLXN0YXRpYyBpbnQKLW52a21fY2xrX3VzdGF0ZV91cGRhdGUoc3RydWN0 IG52a21fY2xrICpjbGssIGludCByZXEpCi17Ci0Jc3RydWN0IG52a21fcHN0YXRlICpwc3RhdGU7 Ci0JaW50IGkgPSAwOwotCi0JaWYgKCFjbGstPmFsbG93X3JlY2xvY2spCi0JCXJldHVybiAtRU5P U1lTOwotCi0JaWYgKHJlcSAhPSAtMSAmJiByZXEgIT0gLTIpIHsKLQkJbGlzdF9mb3JfZWFjaF9l bnRyeShwc3RhdGUsICZjbGstPnN0YXRlcywgaGVhZCkgewotCQkJaWYgKHBzdGF0ZS0+cHN0YXRl ID09IHJlcSkKLQkJCQlicmVhazsKLQkJCWkrKzsKLQkJfQotCi0JCWlmIChwc3RhdGUtPnBzdGF0 ZSAhPSByZXEpCi0JCQlyZXR1cm4gLUVJTlZBTDsKLQkJcmVxID0gaTsKLQl9Ci0KLQlyZXR1cm4g cmVxICsgMjsKLX0KLQogc3RhdGljIGludAogbnZrbV9jbGtfbnN0YXRlKHN0cnVjdCBudmttX2Ns ayAqY2xrLCBjb25zdCBjaGFyICptb2RlLCBpbnQgYXJnbGVuKQogeworCXN0cnVjdCBudmttX3Bz dGF0ZSAqcHN0YXRlOwogCWludCByZXQgPSAxOwogCiAJaWYgKGNsay0+YWxsb3dfcmVjbG9jayAm JiAhc3RybmNhc2VjbXB6KG1vZGUsICJhdXRvIiwgYXJnbGVuKSkKQEAgLTUyOCwyNyArNTA3LDQ2 IEBAIG52a21fY2xrX25zdGF0ZShzdHJ1Y3QgbnZrbV9jbGsgKmNsaywgY29uc3QgY2hhciAqbW9k ZSwgaW50IGFyZ2xlbikKIAogCQkoKGNoYXIgKiltb2RlKVthcmdsZW5dID0gJ1wwJzsKIAkJaWYg KCFrc3RydG9sKG1vZGUsIDAsICZ2KSkgewotCQkJcmV0ID0gbnZrbV9jbGtfdXN0YXRlX3VwZGF0 ZShjbGssIHYpOworCQkJcmV0ID0gdjsKIAkJCWlmIChyZXQgPCAwKQogCQkJCXJldCA9IDE7CiAJ CX0KIAkJKChjaGFyICopbW9kZSlbYXJnbGVuXSA9IHNhdmU7CiAJfQogCi0JcmV0dXJuIHJldCAt IDI7CisJaWYgKHJldCA8IDApCisJCXJldHVybiByZXQ7CisKKwlsaXN0X2Zvcl9lYWNoX2VudHJ5 KHBzdGF0ZSwgJmNsay0+c3RhdGVzLCBoZWFkKSB7CisJCWlmIChwc3RhdGUtPnBzdGF0ZSA9PSBy ZXQpCisJCQlyZXR1cm4gcmV0OworCX0KKwlyZXR1cm4gLUVJTlZBTDsKIH0KIAogaW50CiBudmtt X2Nsa191c3RhdGUoc3RydWN0IG52a21fY2xrICpjbGssIGludCByZXEsIGludCBwd3IpCiB7Ci0J aW50IHJldCA9IG52a21fY2xrX3VzdGF0ZV91cGRhdGUoY2xrLCByZXEpOwotCWlmIChyZXQgPj0g MCkgewotCQlpZiAocmV0IC09IDIsIHB3cikgY2xrLT51c3RhdGVfYWMgPSByZXQ7Ci0JCWVsc2UJ CSAgIGNsay0+dXN0YXRlX2RjID0gcmV0OwotCQljbGstPmV4cF9jc3RhdGVpZCA9IE5WS01fQ0xL X0NTVEFURV9ISUdIRVNUOwotCQlyZXR1cm4gbnZrbV9jbGtfdXBkYXRlKGNsaywgdHJ1ZSk7CisJ c3RydWN0IG52a21fcHN0YXRlICpwc3RhdGU7CisJYm9vbCB2YWxpZCA9IGZhbHNlOworCisJbGlz dF9mb3JfZWFjaF9lbnRyeShwc3RhdGUsICZjbGstPnN0YXRlcywgaGVhZCkgeworCQlpZiAocHN0 YXRlLT5wc3RhdGUgPT0gcmVxKSB7CisJCQl2YWxpZCA9IHRydWU7CisJCQlicmVhazsKKwkJfQog CX0KLQlyZXR1cm4gcmV0OworCisJaWYgKCF2YWxpZCkKKwkJcmV0dXJuIC1FSU5WQUw7CisKKwlp ZiAocHdyKQorCQljbGstPnVzdGF0ZV9hYyA9IHJlcTsKKwllbHNlCisJCWNsay0+dXN0YXRlX2Rj ID0gcmVxOworCisJY2xrLT5leHBfY3N0YXRlaWQgPSBOVktNX0NMS19DU1RBVEVfSElHSEVTVDsK KwlyZXR1cm4gbnZrbV9jbGtfdXBkYXRlKGNsaywgdHJ1ZSk7CiB9CiAKIGludApAQCAtNjI3LDcg KzYyNSw3IEBAIG52a21fY2xrX2luaXQoc3RydWN0IG52a21fc3ViZGV2ICpzdWJkZXYpCiAJaWYg KGNsay0+ZnVuYy0+aW5pdCkKIAkJcmV0dXJuIGNsay0+ZnVuYy0+aW5pdChjbGspOwogCi0JY2xr LT5hc3RhdGUgPSBjbGstPnN0YXRlX25yIC0gMTsKKwljbGstPmFzdGF0ZSA9IE5WS01fQ0xLX1BT VEFURV9ERUZBVUxUOwogCWNsay0+cHN0YXRlID0gTlVMTDsKIAljbGstPmV4cF9jc3RhdGVpZCA9 IE5WS01fQ0xLX0NTVEFURV9ERUZBVUxUOwogCWNsay0+Y3N0YXRlID0gTlVMTDsKLS0gCjIuMTQu MQoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KTm91dmVh dSBtYWlsaW5nIGxpc3QKTm91dmVhdUBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6Ly9saXN0 cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9ub3V2ZWF1Cg==