From mboxrd@z Thu Jan 1 00:00:00 1970 From: Roger Pau Monne Subject: [PATCH 1/2] xen-blkback: implement safe iterator for the list of persistent grants Date: Tue, 4 Dec 2012 15:21:52 +0100 Message-ID: <1354630913-17287-1-git-send-email-roger.pau@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: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: linux-kernel@vger.kernel.org Cc: Konrad Rzeszutek Wilk , xen-devel@lists.xen.org, Roger Pau Monne List-Id: xen-devel@lists.xenproject.org Q2hhbmdlIGZvcmVhY2hfZ3JhbnQgaXRlcmF0b3IgdG8gYSBzYWZlIHZlcnNpb24sIHRoYXQgYWxs b3dzIGZyZWVpbmcKdGhlIGVsZW1lbnQgd2hpbGUgaXRlcmF0aW5nLiBBbHNvIG1vdmUgdGhlIGZy ZWUgY29kZSBpbgpmcmVlX3BlcnNpc3RlbnRfZ250cyB0byBwcmV2ZW50IGZyZWVpbmcgdGhlIGVs ZW1lbnQgYmVmb3JlIHRoZSByYl9uZXh0CmNhbGwuCgpSZXBvcnRlZC1ieTogRGFuIENhcnBlbnRl ciA8ZGFuLmNhcnBlbnRlckBvcmFjbGUuY29tPgpTaWduZWQtb2ZmLWJ5OiBSb2dlciBQYXUgTW9u bsOpIDxyb2dlci5wYXVAY2l0cml4LmNvbT4KQ2M6IEtvbnJhZCBSemVzenV0ZWsgV2lsayA8a29u cmFkQGtlcm5lbC5vcmc+CkNjOiB4ZW4tZGV2ZWxAbGlzdHMueGVuLm9yZwotLS0KIGRyaXZlcnMv YmxvY2sveGVuLWJsa2JhY2svYmxrYmFjay5jIHwgICAxOCArKysrKysrKysrKy0tLS0tLS0KIDEg ZmlsZXMgY2hhbmdlZCwgMTEgaW5zZXJ0aW9ucygrKSwgNyBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9kcml2ZXJzL2Jsb2NrL3hlbi1ibGtiYWNrL2Jsa2JhY2suYyBiL2RyaXZlcnMvYmxvY2sv eGVuLWJsa2JhY2svYmxrYmFjay5jCmluZGV4IDc0Mzc0ZmIuLjVhYzg0MWYgMTAwNjQ0Ci0tLSBh L2RyaXZlcnMvYmxvY2sveGVuLWJsa2JhY2svYmxrYmFjay5jCisrKyBiL2RyaXZlcnMvYmxvY2sv eGVuLWJsa2JhY2svYmxrYmFjay5jCkBAIC0xNjEsMTAgKzE2MSwxMiBAQCBzdGF0aWMgaW50IGRp c3BhdGNoX3J3X2Jsb2NrX2lvKHN0cnVjdCB4ZW5fYmxraWYgKmJsa2lmLAogc3RhdGljIHZvaWQg bWFrZV9yZXNwb25zZShzdHJ1Y3QgeGVuX2Jsa2lmICpibGtpZiwgdTY0IGlkLAogCQkJICB1bnNp Z25lZCBzaG9ydCBvcCwgaW50IHN0KTsKIAotI2RlZmluZSBmb3JlYWNoX2dyYW50KHBvcywgcmJ0 cmVlLCBub2RlKSBcCi0JZm9yICgocG9zKSA9IGNvbnRhaW5lcl9vZihyYl9maXJzdCgocmJ0cmVl KSksIHR5cGVvZigqKHBvcykpLCBub2RlKTsgXAorI2RlZmluZSBmb3JlYWNoX2dyYW50X3NhZmUo cG9zLCBuLCByYnRyZWUsIG5vZGUpIFwKKwlmb3IgKChwb3MpID0gY29udGFpbmVyX29mKHJiX2Zp cnN0KChyYnRyZWUpKSwgdHlwZW9mKCoocG9zKSksIG5vZGUpLCBcCisJICAgICAobikgPSByYl9u ZXh0KCYocG9zKS0+bm9kZSk7IFwKIAkgICAgICYocG9zKS0+bm9kZSAhPSBOVUxMOyBcCi0JICAg ICAocG9zKSA9IGNvbnRhaW5lcl9vZihyYl9uZXh0KCYocG9zKS0+bm9kZSksIHR5cGVvZigqKHBv cykpLCBub2RlKSkKKwkgICAgIChwb3MpID0gY29udGFpbmVyX29mKG4sIHR5cGVvZigqKHBvcykp LCBub2RlKSwgXAorCSAgICAgKG4pID0gKCYocG9zKS0+bm9kZSAhPSBOVUxMKSA/IHJiX25leHQo Jihwb3MpLT5ub2RlKSA6IE5VTEwpCiAKIAogc3RhdGljIHZvaWQgYWRkX3BlcnNpc3RlbnRfZ250 KHN0cnVjdCByYl9yb290ICpyb290LApAQCAtMjE3LDEwICsyMTksMTEgQEAgc3RhdGljIHZvaWQg ZnJlZV9wZXJzaXN0ZW50X2dudHMoc3RydWN0IHJiX3Jvb3QgKnJvb3QsIHVuc2lnbmVkIGludCBu dW0pCiAJc3RydWN0IGdudHRhYl91bm1hcF9ncmFudF9yZWYgdW5tYXBbQkxLSUZfTUFYX1NFR01F TlRTX1BFUl9SRVFVRVNUXTsKIAlzdHJ1Y3QgcGFnZSAqcGFnZXNbQkxLSUZfTUFYX1NFR01FTlRT X1BFUl9SRVFVRVNUXTsKIAlzdHJ1Y3QgcGVyc2lzdGVudF9nbnQgKnBlcnNpc3RlbnRfZ250Owor CXN0cnVjdCByYl9ub2RlICpuOwogCWludCByZXQgPSAwOwogCWludCBzZWdzX3RvX3VubWFwID0g MDsKIAotCWZvcmVhY2hfZ3JhbnQocGVyc2lzdGVudF9nbnQsIHJvb3QsIG5vZGUpIHsKKwlmb3Jl YWNoX2dyYW50X3NhZmUocGVyc2lzdGVudF9nbnQsIG4sIHJvb3QsIG5vZGUpIHsKIAkJQlVHX09O KHBlcnNpc3RlbnRfZ250LT5oYW5kbGUgPT0KIAkJCUJMS0JBQ0tfSU5WQUxJRF9IQU5ETEUpOwog CQlnbnR0YWJfc2V0X3VubWFwX29wKCZ1bm1hcFtzZWdzX3RvX3VubWFwXSwKQEAgLTIzMCw5ICsy MzMsNiBAQCBzdGF0aWMgdm9pZCBmcmVlX3BlcnNpc3RlbnRfZ250cyhzdHJ1Y3QgcmJfcm9vdCAq cm9vdCwgdW5zaWduZWQgaW50IG51bSkKIAkJCXBlcnNpc3RlbnRfZ250LT5oYW5kbGUpOwogCiAJ CXBhZ2VzW3NlZ3NfdG9fdW5tYXBdID0gcGVyc2lzdGVudF9nbnQtPnBhZ2U7Ci0JCXJiX2VyYXNl KCZwZXJzaXN0ZW50X2dudC0+bm9kZSwgcm9vdCk7Ci0JCWtmcmVlKHBlcnNpc3RlbnRfZ250KTsK LQkJbnVtLS07CiAKIAkJaWYgKCsrc2Vnc190b191bm1hcCA9PSBCTEtJRl9NQVhfU0VHTUVOVFNf UEVSX1JFUVVFU1QgfHwKIAkJCSFyYl9uZXh0KCZwZXJzaXN0ZW50X2dudC0+bm9kZSkpIHsKQEAg LTI0MSw2ICsyNDEsMTAgQEAgc3RhdGljIHZvaWQgZnJlZV9wZXJzaXN0ZW50X2dudHMoc3RydWN0 IHJiX3Jvb3QgKnJvb3QsIHVuc2lnbmVkIGludCBudW0pCiAJCQlCVUdfT04ocmV0KTsKIAkJCXNl Z3NfdG9fdW5tYXAgPSAwOwogCQl9CisKKwkJcmJfZXJhc2UoJnBlcnNpc3RlbnRfZ250LT5ub2Rl LCByb290KTsKKwkJa2ZyZWUocGVyc2lzdGVudF9nbnQpOworCQludW0tLTsKIAl9CiAJQlVHX09O KG51bSAhPSAwKTsKIH0KLS0gCjEuNy43LjUgKEFwcGxlIEdpdC0yNikKCgpfX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpYZW4tZGV2ZWwgbWFpbGluZyBsaXN0 Clhlbi1kZXZlbEBsaXN0cy54ZW4ub3JnCmh0dHA6Ly9saXN0cy54ZW4ub3JnL3hlbi1kZXZlbAo=