From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andrew Cooper Subject: [PATCH] xen/mm: Fix page_list_* helpers to evaluate all their arguments Date: Sat, 5 Mar 2016 16:52:34 +0000 Message-ID: <1457196754-6299-1-git-send-email-andrew.cooper3@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Errors-To: xen-devel-bounces@lists.xen.org Sender: "Xen-devel" To: Xen-devel Cc: George Dunlap , Andrew Cooper , Doug Goldstein , Jan Beulich , Tim Deegan List-Id: xen-devel@lists.xenproject.org SWYgYW4gYXJjaGl0ZWN0dXJlIGRvZXMgbm90IHByb3ZpZGUgYSBjdXN0b20gcGFnZV9saXN0X2Vu dHJ5LCBkZWZhdWx0CnBhZ2VfbGlzdF8qIGhlbHBlcnMgYXJlIHByb3ZpZGVkLCB3cmFwcGluZyBs aXN0X2hlYWQgYXMgYW4gdW5kZXJseWluZyB0eXBlIGZvcgpwYWdlX2xpc3RfaGVhZC4KClRoZSB0 d28gZGVjbGFyYXRpb25zIG9mIHRoZSBwYWdlX2xpc3RfKiBoZWxwZXJzIGRpZmZlciBiZXR3ZWVu IGRlZmluZXMgYW5kCnN0YXRpYyBpbmxpbmUgZnVuY3Rpb25zLCB3aGVyZSB0aGUgZGVmaW5lcyBk aXNjYXJkIHNvbWUgb2YgdGhlaXIgcGFyYW1ldGVycy4KClRoaXMgY2F1c2VzIGEgY29tcGlsYXRp b24gZmFpbHVyZSBpZiBDT05GSUdfQklHTUVNIGFuZCBkZWJ1Zz1uIGluIHAybS1wb2QuYzoKCiAg cDJtLXBvZC5jOiBJbiBmdW5jdGlvbiDigJhwMm1fcG9kX2NhY2hlX2FkZOKAmToKICBwMm0tcG9k LmM6NzI6MjA6IGVycm9yOiB1bnVzZWQgdmFyaWFibGUg4oCYZOKAmSBbLVdlcnJvcj11bnVzZWQt dmFyaWFibGVdCiAgICAgICBzdHJ1Y3QgZG9tYWluICpkID0gcDJtLT5kb21haW47CiAgICAgICAg ICAgICAgICAgICAgICBeCiAgY2MxOiBhbGwgd2FybmluZ3MgYmVpbmcgdHJlYXRlZCBhcyBlcnJv cnMKCmJlY2F1c2UgdGhlIHVzZSBvZiBkIG91dHNpZGUgb2YgdGhlICFOREVCVUcgc2VjdGlvbiBk b2Vzbid0IGdldCBldmFsdWF0ZWQgYXMgYQpwYXJhbWV0ZXIgYnkgcGFnZV9saXN0X2RlbCgpLgoK Rml4IHRoaXMgYnkgdHVybmluZyBhbGwgI2RlZmluZXMgaW50byBzdGF0aWMgaW5saW5lIGZ1bmN0 aW9ucywgc28gYWxsCnBhcmFtZXRlcnMgYXJlIGV2YWx1YXRlZCBldmVuIGlmIHRoZXkgYXJlIG5v dCB1c2VkLgoKRG9pbmcgdGhpcyByZXZlYWxzIHRoYXQgY29uc3QtY29ycmVjdG5lc3Mgb2YgcGFn ZV9saXN0X3tuZXh0LHByZXZ9KCkgaXMKc3VzcGVjdCwgdGFraW5nIGEgY29uc3QgcG9pbnRlciBh bmQgcmV0dXJuaW5nIGEgbm9uLWNvbnN0IG9uZS4gIEl0IGlzIGxlZnQKZnVuY3Rpb25pbmcgYXMg aXQgZGlkIGJlZm9yZSwgd2l0aCBhbiBleHBsaWNpdCB0eXBlY2FzdCB0byByZW1vdmUgY29uc3Ru ZXNzLgoKV2hpbGUgZWRpdGluZyB0aGlzIGFyZWEsIGNvcnJlY3QgdGhlIHJldHVybiB0eXBlIG9m IHBhZ2VfbGlzdF9lbXB0eSBmcm9tIGludAp0byBib29sX3QuCgpSZXBvcnRlZC1ieTogRG91ZyBH b2xkc3RlaW4gPGNhcmRvZUBjYXJkb2UuY29tPgpTaWduZWQtb2ZmLWJ5OiBBbmRyZXcgQ29vcGVy IDxhbmRyZXcuY29vcGVyM0BjaXRyaXguY29tPgotLS0KQ0M6IEphbiBCZXVsaWNoIDxKQmV1bGlj aEBzdXNlLmNvbT4KQ0M6IFRpbSBEZWVnYW4gPHRpbUB4ZW4ub3JnPgpDQzogR2VvcmdlIER1bmxh cCA8Z2VvcmdlLmR1bmxhcEBldS5jaXRyaXguY29tPgotLS0KIHhlbi9pbmNsdWRlL3hlbi9tbS5o IHwgOTUgKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0t LQogMSBmaWxlIGNoYW5nZWQsIDc0IGluc2VydGlvbnMoKyksIDIxIGRlbGV0aW9ucygtKQoKZGlm ZiAtLWdpdCBhL3hlbi9pbmNsdWRlL3hlbi9tbS5oIGIveGVuL2luY2x1ZGUveGVuL21tLmgKaW5k ZXggYTc5NWRkNi4uMzhlMTJiNyAxMDA2NDQKLS0tIGEveGVuL2luY2x1ZGUveGVuL21tLmgKKysr IGIveGVuL2luY2x1ZGUveGVuL21tLmgKQEAgLTIyMCw3ICsyMjAsNyBAQCBzdHJ1Y3QgcGFnZV9s aXN0X2hlYWQKICMgZGVmaW5lIElOSVRfUEFHRV9MSVNUX0hFQUQoaGVhZCkgKChoZWFkKS0+dGFp bCA9IChoZWFkKS0+bmV4dCA9IE5VTEwpCiAjIGRlZmluZSBJTklUX1BBR0VfTElTVF9FTlRSWShl bnQpICgoZW50KS0+cHJldiA9IChlbnQpLT5uZXh0ID0gUEFHRV9MSVNUX05VTEwpCiAKLXN0YXRp YyBpbmxpbmUgaW50CitzdGF0aWMgaW5saW5lIGJvb2xfdAogcGFnZV9saXN0X2VtcHR5KGNvbnN0 IHN0cnVjdCBwYWdlX2xpc3RfaGVhZCAqaGVhZCkKIHsKICAgICByZXR1cm4gIWhlYWQtPm5leHQ7 CkBAIC0zOTIsMzEgKzM5Miw4NCBAQCBwYWdlX2xpc3Rfc3BsaWNlKHN0cnVjdCBwYWdlX2xpc3Rf aGVhZCAqbGlzdCwgc3RydWN0IHBhZ2VfbGlzdF9oZWFkICpoZWFkKQogIyBkZWZpbmUgUEFHRV9M SVNUX0hFQUQgICAgICAgICAgICAgICAgICBMSVNUX0hFQUQKICMgZGVmaW5lIElOSVRfUEFHRV9M SVNUX0hFQUQgICAgICAgICAgICAgSU5JVF9MSVNUX0hFQUQKICMgZGVmaW5lIElOSVRfUEFHRV9M SVNUX0VOVFJZICAgICAgICAgICAgSU5JVF9MSVNUX0hFQUQKLSMgZGVmaW5lIHBhZ2VfbGlzdF9l bXB0eSAgICAgICAgICAgICAgICAgbGlzdF9lbXB0eQotIyBkZWZpbmUgcGFnZV9saXN0X2ZpcnN0 KGhkKSAgICAgICAgICAgICBcCi0gICAgbGlzdF9maXJzdF9lbnRyeShoZCwgc3RydWN0IHBhZ2Vf aW5mbywgbGlzdCkKLSMgZGVmaW5lIHBhZ2VfbGlzdF9sYXN0KGhkKSAgICAgICAgICAgICAgXAot ICAgIGxpc3RfbGFzdF9lbnRyeShoZCwgc3RydWN0IHBhZ2VfaW5mbywgbGlzdCkKLSMgZGVmaW5l IHBhZ2VfbGlzdF9uZXh0KHBnLCBoZCkgICAgICAgICAgbGlzdF9uZXh0X2VudHJ5KHBnLCBsaXN0 KQotIyBkZWZpbmUgcGFnZV9saXN0X3ByZXYocGcsIGhkKSAgICAgICAgICBsaXN0X3ByZXZfZW50 cnkocGcsIGxpc3QpCi0jIGRlZmluZSBwYWdlX2xpc3RfYWRkKHBnLCBoZCkgICAgICAgICAgIGxp c3RfYWRkKCYocGcpLT5saXN0LCBoZCkKLSMgZGVmaW5lIHBhZ2VfbGlzdF9hZGRfdGFpbChwZywg aGQpICAgICAgbGlzdF9hZGRfdGFpbCgmKHBnKS0+bGlzdCwgaGQpCi0jIGRlZmluZSBwYWdlX2xp c3RfZGVsKHBnLCBoZCkgICAgICAgICAgIGxpc3RfZGVsKCYocGcpLT5saXN0KQotIyBkZWZpbmUg cGFnZV9saXN0X2RlbDIocGcsIGhkMSwgaGQyKSAgICBsaXN0X2RlbCgmKHBnKS0+bGlzdCkKLSMg ZGVmaW5lIHBhZ2VfbGlzdF9yZW1vdmVfaGVhZChoZCkgICAgICAgKCFwYWdlX2xpc3RfZW1wdHko aGQpID8gXAotICAgICh7IFwKLSAgICAgICAgc3RydWN0IHBhZ2VfaW5mbyAqX19wZyA9IHBhZ2Vf bGlzdF9maXJzdChoZCk7IFwKLSAgICAgICAgbGlzdF9kZWwoJl9fcGctPmxpc3QpOyBcCi0gICAg ICAgIF9fcGc7IFwKLSAgICB9KSA6IE5VTEwpCi0jIGRlZmluZSBwYWdlX2xpc3RfbW92ZShkc3Qs IHNyYykgICAgICAgICghbGlzdF9lbXB0eShzcmMpID8gXAotICAgIGxpc3RfcmVwbGFjZV9pbml0 KHNyYywgZHN0KSA6ICh2b2lkKTApCisKK3N0YXRpYyBpbmxpbmUgYm9vbF90CitwYWdlX2xpc3Rf ZW1wdHkoY29uc3Qgc3RydWN0IHBhZ2VfbGlzdF9oZWFkICpoZWFkKQoreworICAgIHJldHVybiBs aXN0X2VtcHR5KGhlYWQpOworfQorc3RhdGljIGlubGluZSBzdHJ1Y3QgcGFnZV9pbmZvICoKK3Bh Z2VfbGlzdF9maXJzdChjb25zdCBzdHJ1Y3QgcGFnZV9saXN0X2hlYWQgKmhlYWQpCit7CisgICAg cmV0dXJuIGxpc3RfZmlyc3RfZW50cnkoaGVhZCwgc3RydWN0IHBhZ2VfaW5mbywgbGlzdCk7Cit9 CitzdGF0aWMgaW5saW5lIHN0cnVjdCBwYWdlX2luZm8gKgorcGFnZV9saXN0X2xhc3QoY29uc3Qg c3RydWN0IHBhZ2VfbGlzdF9oZWFkICpoZWFkKQoreworICAgIHJldHVybiBsaXN0X2xhc3RfZW50 cnkoaGVhZCwgc3RydWN0IHBhZ2VfaW5mbywgbGlzdCk7Cit9CitzdGF0aWMgaW5saW5lIHN0cnVj dCBwYWdlX2luZm8gKgorcGFnZV9saXN0X25leHQoY29uc3Qgc3RydWN0IHBhZ2VfaW5mbyAqcGFn ZSwKKyAgICAgICAgICAgICAgIGNvbnN0IHN0cnVjdCBwYWdlX2xpc3RfaGVhZCAqaGVhZCkKK3sK KyAgICByZXR1cm4gbGlzdF9uZXh0X2VudHJ5KChzdHJ1Y3QgcGFnZV9pbmZvICopcGFnZSwgbGlz dCk7Cit9CitzdGF0aWMgaW5saW5lIHN0cnVjdCBwYWdlX2luZm8gKgorcGFnZV9saXN0X3ByZXYo Y29uc3Qgc3RydWN0IHBhZ2VfaW5mbyAqcGFnZSwKKyAgICAgICAgICAgICAgIGNvbnN0IHN0cnVj dCBwYWdlX2xpc3RfaGVhZCAqaGVhZCkKK3sKKyAgICByZXR1cm4gbGlzdF9wcmV2X2VudHJ5KChz dHJ1Y3QgcGFnZV9pbmZvICopcGFnZSwgbGlzdCk7Cit9CitzdGF0aWMgaW5saW5lIHZvaWQKK3Bh Z2VfbGlzdF9hZGQoc3RydWN0IHBhZ2VfaW5mbyAqcGFnZSwgc3RydWN0IHBhZ2VfbGlzdF9oZWFk ICpoZWFkKQoreworICAgIGxpc3RfYWRkKCZwYWdlLT5saXN0LCBoZWFkKTsKK30KK3N0YXRpYyBp bmxpbmUgdm9pZAorcGFnZV9saXN0X2FkZF90YWlsKHN0cnVjdCBwYWdlX2luZm8gKnBhZ2UsIHN0 cnVjdCBwYWdlX2xpc3RfaGVhZCAqaGVhZCkKK3sKKyAgICBsaXN0X2FkZF90YWlsKCZwYWdlLT5s aXN0LCBoZWFkKTsKK30KK3N0YXRpYyBpbmxpbmUgdm9pZAorcGFnZV9saXN0X2RlbChzdHJ1Y3Qg cGFnZV9pbmZvICpwYWdlLCBzdHJ1Y3QgcGFnZV9saXN0X2hlYWQgKmhlYWQpCit7CisgICAgbGlz dF9kZWwoJnBhZ2UtPmxpc3QpOworfQorc3RhdGljIGlubGluZSB2b2lkCitwYWdlX2xpc3RfZGVs MihzdHJ1Y3QgcGFnZV9pbmZvICpwYWdlLCBzdHJ1Y3QgcGFnZV9saXN0X2hlYWQgKmhlYWQxLAor ICAgICAgICAgICAgICAgc3RydWN0IHBhZ2VfbGlzdF9oZWFkICpoZWFkMikKK3sKKyAgICBsaXN0 X2RlbCgmcGFnZS0+bGlzdCk7Cit9CitzdGF0aWMgaW5saW5lIHN0cnVjdCBwYWdlX2luZm8gKgor cGFnZV9saXN0X3JlbW92ZV9oZWFkKHN0cnVjdCBwYWdlX2xpc3RfaGVhZCAqaGVhZCkKK3sKKyAg ICBzdHJ1Y3QgcGFnZV9pbmZvICpwZzsKKworICAgIGlmICggcGFnZV9saXN0X2VtcHR5KGhlYWQp ICkKKyAgICAgICAgcmV0dXJuIE5VTEw7CisKKyAgICBwZyA9IHBhZ2VfbGlzdF9maXJzdChoZWFk KTsKKyAgICBsaXN0X2RlbCgmcGctPmxpc3QpOworICAgIHJldHVybiBwZzsKK30KK3N0YXRpYyBp bmxpbmUgdm9pZAorcGFnZV9saXN0X21vdmUoc3RydWN0IHBhZ2VfbGlzdF9oZWFkICpkc3QsIHN0 cnVjdCBwYWdlX2xpc3RfaGVhZCAqc3JjKQoreworICAgIGlmICggIWxpc3RfZW1wdHkoc3JjKSAp CisgICAgICAgIGxpc3RfcmVwbGFjZV9pbml0KHNyYywgZHN0KTsKK30KK3N0YXRpYyBpbmxpbmUg dm9pZAorcGFnZV9saXN0X3NwbGljZShzdHJ1Y3QgcGFnZV9saXN0X2hlYWQgKmxpc3QsIHN0cnVj dCBwYWdlX2xpc3RfaGVhZCAqaGVhZCkKK3sKKyAgICBsaXN0X3NwbGljZShsaXN0LCBoZWFkKTsK K30KKwogIyBkZWZpbmUgcGFnZV9saXN0X2Zvcl9lYWNoKHBvcywgaGVhZCkgICBsaXN0X2Zvcl9l YWNoX2VudHJ5KHBvcywgaGVhZCwgbGlzdCkKICMgZGVmaW5lIHBhZ2VfbGlzdF9mb3JfZWFjaF9z YWZlKHBvcywgdG1wLCBoZWFkKSBcCiAgICAgbGlzdF9mb3JfZWFjaF9lbnRyeV9zYWZlKHBvcywg dG1wLCBoZWFkLCBsaXN0KQogIyBkZWZpbmUgcGFnZV9saXN0X2Zvcl9lYWNoX3NhZmVfcmV2ZXJz ZShwb3MsIHRtcCwgaGVhZCkgXAogICAgIGxpc3RfZm9yX2VhY2hfZW50cnlfc2FmZV9yZXZlcnNl KHBvcywgdG1wLCBoZWFkLCBsaXN0KQotIyBkZWZpbmUgcGFnZV9saXN0X3NwbGljZShsaXN0LCBo ZCkgICAgICAgIGxpc3Rfc3BsaWNlKGxpc3QsIGhkKQogI2VuZGlmCiAKIHN0YXRpYyBpbmxpbmUg dW5zaWduZWQgaW50IGdldF9vcmRlcl9mcm9tX2J5dGVzKHBhZGRyX3Qgc2l6ZSkKLS0gCjIuMS40 CgoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KWGVuLWRl dmVsIG1haWxpbmcgbGlzdApYZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwpodHRwOi8vbGlzdHMueGVu Lm9yZy94ZW4tZGV2ZWwK