From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH 3/4] lib/scatterlist: Introduce and export __sg_alloc_table_from_pages Date: Fri, 11 Nov 2016 08:50:19 +0000 Message-ID: <1478854220-3255-4-git-send-email-tvrtko.ursulin@linux.intel.com> References: <1478854220-3255-1-git-send-email-tvrtko.ursulin@linux.intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Received: from mail-wm0-x243.google.com (mail-wm0-x243.google.com [IPv6:2a00:1450:400c:c09::243]) by gabe.freedesktop.org (Postfix) with ESMTPS id D80A46E323 for ; Fri, 11 Nov 2016 08:50:44 +0000 (UTC) Received: by mail-wm0-x243.google.com with SMTP id m203so6248785wma.3 for ; Fri, 11 Nov 2016 00:50:44 -0800 (PST) In-Reply-To: <1478854220-3255-1-git-send-email-tvrtko.ursulin@linux.intel.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: intel-gfx-bounces@lists.freedesktop.org Sender: "Intel-gfx" To: Intel-gfx@lists.freedesktop.org Cc: Masahiro Yamada , linux-kernel@vger.kernel.org List-Id: intel-gfx@lists.freedesktop.org RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KCkRyaXZlcnMg bGlrZSBpOTE1IGJlbmVmaXQgZnJvbSBiZWluZyBhYmxlIHRvIGNvbnRyb2wgdGhlIG1heGl1bQpz aXplIG9mIHRoZSBzZyBjb2FsbGVzY2VkIHNlZ21lbnQgd2hpbGUgYnVpbGRpbmcgdGhlIHNjYXR0 ZXItCmdhdGhlciBsaXN0LgoKSW50cm9kdWNlIGFuZCBleHBvcnQgdGhlIF9fc2dfYWxsb2NfdGFi bGVfZnJvbV9wYWdlcyBmdW5jdGlvbgp3aGljaCB3aWxsIGFsbG93IGl0IHRoYXQgY29udHJvbC4K ClNpZ25lZC1vZmYtYnk6IFR2cnRrbyBVcnN1bGluIDx0dnJ0a28udXJzdWxpbkBpbnRlbC5jb20+ CkNjOiBNYXNhaGlybyBZYW1hZGEgPHlhbWFkYS5tYXNhaGlyb0Bzb2Npb25leHQuY29tPgpDYzog bGludXgta2VybmVsQHZnZXIua2VybmVsLm9yZwotLS0KIGluY2x1ZGUvbGludXgvc2NhdHRlcmxp c3QuaCB8IDExICsrKysrLS0tLQogbGliL3NjYXR0ZXJsaXN0LmMgICAgICAgICAgIHwgNTUgKysr KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKy0tLS0tLS0tLS0tCiAyIGZpbGVzIGNoYW5n ZWQsIDQ5IGluc2VydGlvbnMoKyksIDE3IGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2luY2x1 ZGUvbGludXgvc2NhdHRlcmxpc3QuaCBiL2luY2x1ZGUvbGludXgvc2NhdHRlcmxpc3QuaAppbmRl eCBjOTgxYmVlMWEzYWUuLjI5NTkxZGJiMjBmZCAxMDA2NDQKLS0tIGEvaW5jbHVkZS9saW51eC9z Y2F0dGVybGlzdC5oCisrKyBiL2luY2x1ZGUvbGludXgvc2NhdHRlcmxpc3QuaApAQCAtMjYxLDEw ICsyNjEsMTMgQEAgdm9pZCBzZ19mcmVlX3RhYmxlKHN0cnVjdCBzZ190YWJsZSAqKTsKIGludCBf X3NnX2FsbG9jX3RhYmxlKHN0cnVjdCBzZ190YWJsZSAqLCB1bnNpZ25lZCBpbnQsIHVuc2lnbmVk IGludCwKIAkJICAgICBzdHJ1Y3Qgc2NhdHRlcmxpc3QgKiwgZ2ZwX3QsIHNnX2FsbG9jX2ZuICop OwogaW50IHNnX2FsbG9jX3RhYmxlKHN0cnVjdCBzZ190YWJsZSAqLCB1bnNpZ25lZCBpbnQsIGdm cF90KTsKLWludCBzZ19hbGxvY190YWJsZV9mcm9tX3BhZ2VzKHN0cnVjdCBzZ190YWJsZSAqc2d0 LAotCXN0cnVjdCBwYWdlICoqcGFnZXMsIHVuc2lnbmVkIGludCBuX3BhZ2VzLAotCXVuc2lnbmVk IGludCBvZmZzZXQsIHVuc2lnbmVkIGxvbmcgc2l6ZSwKLQlnZnBfdCBnZnBfbWFzayk7CitpbnQg X19zZ19hbGxvY190YWJsZV9mcm9tX3BhZ2VzKHN0cnVjdCBzZ190YWJsZSAqc2d0LCBzdHJ1Y3Qg cGFnZSAqKnBhZ2VzLAorCQkJCXVuc2lnbmVkIGludCBuX3BhZ2VzLCB1bnNpZ25lZCBpbnQgb2Zm c2V0LAorCQkJCXVuc2lnbmVkIGxvbmcgc2l6ZSwgZ2ZwX3QgZ2ZwX21hc2ssCisJCQkJdW5zaWdu ZWQgaW50IG1heF9zZWdtZW50KTsKK2ludCBzZ19hbGxvY190YWJsZV9mcm9tX3BhZ2VzKHN0cnVj dCBzZ190YWJsZSAqc2d0LCBzdHJ1Y3QgcGFnZSAqKnBhZ2VzLAorCQkJICAgICAgdW5zaWduZWQg aW50IG5fcGFnZXMsIHVuc2lnbmVkIGludCBvZmZzZXQsCisJCQkgICAgICB1bnNpZ25lZCBsb25n IHNpemUsIGdmcF90IGdmcF9tYXNrKTsKIAogc2l6ZV90IHNnX2NvcHlfYnVmZmVyKHN0cnVjdCBz Y2F0dGVybGlzdCAqc2dsLCB1bnNpZ25lZCBpbnQgbmVudHMsIHZvaWQgKmJ1ZiwKIAkJICAgICAg c2l6ZV90IGJ1Zmxlbiwgb2ZmX3Qgc2tpcCwgYm9vbCB0b19idWZmZXIpOwpkaWZmIC0tZ2l0IGEv bGliL3NjYXR0ZXJsaXN0LmMgYi9saWIvc2NhdHRlcmxpc3QuYwppbmRleCBkZTE1ZjM2OWIzMTcu LmMwNTIxNDIwZjkzMSAxMDA2NDQKLS0tIGEvbGliL3NjYXR0ZXJsaXN0LmMKKysrIGIvbGliL3Nj YXR0ZXJsaXN0LmMKQEAgLTM3MCwxNCArMzcwLDE1IEBAIGludCBzZ19hbGxvY190YWJsZShzdHJ1 Y3Qgc2dfdGFibGUgKnRhYmxlLCB1bnNpZ25lZCBpbnQgbmVudHMsIGdmcF90IGdmcF9tYXNrKQog RVhQT1JUX1NZTUJPTChzZ19hbGxvY190YWJsZSk7CiAKIC8qKgotICogc2dfYWxsb2NfdGFibGVf ZnJvbV9wYWdlcyAtIEFsbG9jYXRlIGFuZCBpbml0aWFsaXplIGFuIHNnIHRhYmxlIGZyb20KLSAq CQkJICAgICAgIGFuIGFycmF5IG9mIHBhZ2VzCi0gKiBAc2d0OglUaGUgc2cgdGFibGUgaGVhZGVy IHRvIHVzZQotICogQHBhZ2VzOglQb2ludGVyIHRvIGFuIGFycmF5IG9mIHBhZ2UgcG9pbnRlcnMK LSAqIEBuX3BhZ2VzOglOdW1iZXIgb2YgcGFnZXMgaW4gdGhlIHBhZ2VzIGFycmF5Ci0gKiBAb2Zm c2V0OiAgICAgT2Zmc2V0IGZyb20gc3RhcnQgb2YgdGhlIGZpcnN0IHBhZ2UgdG8gdGhlIHN0YXJ0 IG9mIGEgYnVmZmVyCi0gKiBAc2l6ZTogICAgICAgTnVtYmVyIG9mIHZhbGlkIGJ5dGVzIGluIHRo ZSBidWZmZXIgKGFmdGVyIG9mZnNldCkKLSAqIEBnZnBfbWFzazoJR0ZQIGFsbG9jYXRpb24gbWFz aworICogX19zZ19hbGxvY190YWJsZV9mcm9tX3BhZ2VzIC0gQWxsb2NhdGUgYW5kIGluaXRpYWxp emUgYW4gc2cgdGFibGUgZnJvbQorICoJCQkgICAgICAgICBhbiBhcnJheSBvZiBwYWdlcworICog QHNndDoJIFRoZSBzZyB0YWJsZSBoZWFkZXIgdG8gdXNlCisgKiBAcGFnZXM6CSBQb2ludGVyIHRv IGFuIGFycmF5IG9mIHBhZ2UgcG9pbnRlcnMKKyAqIEBuX3BhZ2VzOgkgTnVtYmVyIG9mIHBhZ2Vz IGluIHRoZSBwYWdlcyBhcnJheQorICogQG9mZnNldDogICAgICBPZmZzZXQgZnJvbSBzdGFydCBv ZiB0aGUgZmlyc3QgcGFnZSB0byB0aGUgc3RhcnQgb2YgYSBidWZmZXIKKyAqIEBzaXplOiAgICAg ICAgTnVtYmVyIG9mIHZhbGlkIGJ5dGVzIGluIHRoZSBidWZmZXIgKGFmdGVyIG9mZnNldCkKKyAq IEBnZnBfbWFzazoJIEdGUCBhbGxvY2F0aW9uIG1hc2sKKyAqIEBtYXhfc2VnbWVudDogTWF4aW11 bSBzaXplIG9mIGEgc2luZ2xlIHNjYXR0ZXJsaXN0IG5vZGUgaW4gYnl0ZXMKICAqCiAgKiAgRGVz Y3JpcHRpb246CiAgKiAgICBBbGxvY2F0ZSBhbmQgaW5pdGlhbGl6ZSBhbiBzZyB0YWJsZSBmcm9t IGEgbGlzdCBvZiBwYWdlcy4gQ29udGlndW91cwpAQCAtMzg5LDEyICszOTAsMTEgQEAgRVhQT1JU X1NZTUJPTChzZ19hbGxvY190YWJsZSk7CiAgKiBSZXR1cm5zOgogICogICAwIG9uIHN1Y2Nlc3Ms IG5lZ2F0aXZlIGVycm9yIG9uIGZhaWx1cmUKICAqLwotaW50IHNnX2FsbG9jX3RhYmxlX2Zyb21f cGFnZXMoc3RydWN0IHNnX3RhYmxlICpzZ3QsCi0Jc3RydWN0IHBhZ2UgKipwYWdlcywgdW5zaWdu ZWQgaW50IG5fcGFnZXMsCi0JdW5zaWduZWQgaW50IG9mZnNldCwgdW5zaWduZWQgbG9uZyBzaXpl LAotCWdmcF90IGdmcF9tYXNrKQoraW50IF9fc2dfYWxsb2NfdGFibGVfZnJvbV9wYWdlcyhzdHJ1 Y3Qgc2dfdGFibGUgKnNndCwgc3RydWN0IHBhZ2UgKipwYWdlcywKKwkJCQl1bnNpZ25lZCBpbnQg bl9wYWdlcywgdW5zaWduZWQgaW50IG9mZnNldCwKKwkJCQl1bnNpZ25lZCBsb25nIHNpemUsIGdm cF90IGdmcF9tYXNrLAorCQkJCXVuc2lnbmVkIGludCBtYXhfc2VnbWVudCkKIHsKLQljb25zdCB1 bnNpZ25lZCBpbnQgbWF4X3NlZ21lbnQgPSBVSU5UX01BWDsKIAl1bnNpZ25lZCBpbnQgc2VnX2xl biwgY2h1bmtzOwogCXVuc2lnbmVkIGludCBpOwogCXVuc2lnbmVkIGludCBjdXJfcGFnZTsKQEAg LTQ0NCw2ICs0NDQsMzUgQEAgaW50IHNnX2FsbG9jX3RhYmxlX2Zyb21fcGFnZXMoc3RydWN0IHNn X3RhYmxlICpzZ3QsCiAKIAlyZXR1cm4gMDsKIH0KK0VYUE9SVF9TWU1CT0woX19zZ19hbGxvY190 YWJsZV9mcm9tX3BhZ2VzKTsKKworLyoqCisgKiBzZ19hbGxvY190YWJsZV9mcm9tX3BhZ2VzIC0g QWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYW4gc2cgdGFibGUgZnJvbQorICoJCQkgICAgICAgYW4g YXJyYXkgb2YgcGFnZXMKKyAqIEBzZ3Q6CSBUaGUgc2cgdGFibGUgaGVhZGVyIHRvIHVzZQorICog QHBhZ2VzOgkgUG9pbnRlciB0byBhbiBhcnJheSBvZiBwYWdlIHBvaW50ZXJzCisgKiBAbl9wYWdl czoJIE51bWJlciBvZiBwYWdlcyBpbiB0aGUgcGFnZXMgYXJyYXkKKyAqIEBvZmZzZXQ6ICAgICAg T2Zmc2V0IGZyb20gc3RhcnQgb2YgdGhlIGZpcnN0IHBhZ2UgdG8gdGhlIHN0YXJ0IG9mIGEgYnVm ZmVyCisgKiBAc2l6ZTogICAgICAgIE51bWJlciBvZiB2YWxpZCBieXRlcyBpbiB0aGUgYnVmZmVy IChhZnRlciBvZmZzZXQpCisgKiBAZ2ZwX21hc2s6CSBHRlAgYWxsb2NhdGlvbiBtYXNrCisgKgor ICogIERlc2NyaXB0aW9uOgorICogICAgQWxsb2NhdGUgYW5kIGluaXRpYWxpemUgYW4gc2cgdGFi bGUgZnJvbSBhIGxpc3Qgb2YgcGFnZXMuIENvbnRpZ3VvdXMKKyAqICAgIHJhbmdlcyBvZiB0aGUg cGFnZXMgYXJlIHNxdWFzaGVkIGludG8gYSBzaW5nbGUgc2NhdHRlcmxpc3Qgbm9kZS4gQSB1c2Vy CisgKiAgICBtYXkgcHJvdmlkZSBhbiBvZmZzZXQgYXQgYSBzdGFydCBhbmQgYSBzaXplIG9mIHZh bGlkIGRhdGEgaW4gYSBidWZmZXIKKyAqICAgIHNwZWNpZmllZCBieSB0aGUgcGFnZSBhcnJheS4g VGhlIHJldHVybmVkIHNnIHRhYmxlIGlzIHJlbGVhc2VkIGJ5CisgKiAgICBzZ19mcmVlX3RhYmxl LgorICoKKyAqIFJldHVybnM6CisgKiAgIDAgb24gc3VjY2VzcywgbmVnYXRpdmUgZXJyb3Igb24g ZmFpbHVyZQorICovCitpbnQgc2dfYWxsb2NfdGFibGVfZnJvbV9wYWdlcyhzdHJ1Y3Qgc2dfdGFi bGUgKnNndCwgc3RydWN0IHBhZ2UgKipwYWdlcywKKwkJCSAgICAgIHVuc2lnbmVkIGludCBuX3Bh Z2VzLCB1bnNpZ25lZCBpbnQgb2Zmc2V0LAorCQkJICAgICAgdW5zaWduZWQgbG9uZyBzaXplLCBn ZnBfdCBnZnBfbWFzaykKK3sKKwlyZXR1cm4gX19zZ19hbGxvY190YWJsZV9mcm9tX3BhZ2VzKHNn dCwgcGFnZXMsIG5fcGFnZXMsIG9mZnNldCwKKwkJCQkJICAgc2l6ZSwgZ2ZwX21hc2ssIFVJTlRf TUFYKTsKK30KIEVYUE9SVF9TWU1CT0woc2dfYWxsb2NfdGFibGVfZnJvbV9wYWdlcyk7CiAKIHZv aWQgX19zZ19wYWdlX2l0ZXJfc3RhcnQoc3RydWN0IHNnX3BhZ2VfaXRlciAqcGl0ZXIsCi0tIAoy LjcuNAoKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KSW50 ZWwtZ2Z4IG1haWxpbmcgbGlzdApJbnRlbC1nZnhAbGlzdHMuZnJlZWRlc2t0b3Aub3JnCmh0dHBz Oi8vbGlzdHMuZnJlZWRlc2t0b3Aub3JnL21haWxtYW4vbGlzdGluZm8vaW50ZWwtZ2Z4Cg==