From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tvrtko Ursulin Subject: [PATCH 2/4] lib/scatterlist: Avoid potential scatterlist entry overflow Date: Wed, 11 Jan 2017 09:00:36 +0000 Message-ID: <1484125238-2539-2-git-send-email-tvrtko.ursulin@linux.intel.com> References: <1484125238-2539-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-x242.google.com (mail-wm0-x242.google.com [IPv6:2a00:1450:400c:c09::242]) by gabe.freedesktop.org (Postfix) with ESMTPS id 1D4636E825 for ; Wed, 11 Jan 2017 09:00:49 +0000 (UTC) Received: by mail-wm0-x242.google.com with SMTP id c85so35194134wmi.1 for ; Wed, 11 Jan 2017 01:00:49 -0800 (PST) In-Reply-To: <1484125238-2539-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 RnJvbTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGluQGludGVsLmNvbT4KClNpbmNlIHRo ZSBzY2F0dGVybGlzdCBsZW5ndGggZmllbGQgaXMgYW4gdW5zaWduZWQgaW50LCBtYWtlCnN1cmUg dGhhdCBzZ19hbGxvY190YWJsZV9mcm9tX3BhZ2VzIGRvZXMgbm90IG92ZXJmbG93IGl0IHdoaWxl CmNvYWxsZXNjaW5nIHBhZ2VzIHRvIGEgc2luZ2xlIGVudHJ5LgoKdjI6IERyb3AgcmVmZXJlbmNl IHRvIGZ1dHVyZSB1c2UuIFVzZSBVSU5UX01BWC4KdjM6IG1heF9zZWdtZW50IG11c3QgYmUgcGFn ZSBhbGlnbmVkLgoKU2lnbmVkLW9mZi1ieTogVHZydGtvIFVyc3VsaW4gPHR2cnRrby51cnN1bGlu QGludGVsLmNvbT4KQ2M6IE1hc2FoaXJvIFlhbWFkYSA8eWFtYWRhLm1hc2FoaXJvQHNvY2lvbmV4 dC5jb20+CkNjOiBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnClJldmlld2VkLWJ5OiBDaHJp cyBXaWxzb24gPGNocmlzQGNocmlzLXdpbHNvbi5jby51az4gKHYyKQotLS0KIGxpYi9zY2F0dGVy bGlzdC5jIHwgMjUgKysrKysrKysrKysrKysrKysrKy0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDE5 IGluc2VydGlvbnMoKyksIDYgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvbGliL3NjYXR0ZXJs aXN0LmMgYi9saWIvc2NhdHRlcmxpc3QuYwppbmRleCBlMDVlN2ZjOTg4OTIuLjRmYzU0ODAxY2Qy OSAxMDA2NDQKLS0tIGEvbGliL3NjYXR0ZXJsaXN0LmMKKysrIGIvbGliL3NjYXR0ZXJsaXN0LmMK QEAgLTM5NCw3ICszOTQsOCBAQCBpbnQgc2dfYWxsb2NfdGFibGVfZnJvbV9wYWdlcyhzdHJ1Y3Qg c2dfdGFibGUgKnNndCwKIAl1bnNpZ25lZCBpbnQgb2Zmc2V0LCB1bnNpZ25lZCBsb25nIHNpemUs CiAJZ2ZwX3QgZ2ZwX21hc2spCiB7Ci0JdW5zaWduZWQgaW50IGNodW5rczsKKwljb25zdCB1bnNp Z25lZCBpbnQgbWF4X3NlZ21lbnQgPSByb3VuZGRvd24oVUlOVF9NQVgsIFBBR0VfU0laRSk7CisJ dW5zaWduZWQgaW50IHNlZ19sZW4sIGNodW5rczsKIAl1bnNpZ25lZCBpbnQgaTsKIAl1bnNpZ25l ZCBpbnQgY3VyX3BhZ2U7CiAJaW50IHJldDsKQEAgLTQwMiw5ICs0MDMsMTYgQEAgaW50IHNnX2Fs bG9jX3RhYmxlX2Zyb21fcGFnZXMoc3RydWN0IHNnX3RhYmxlICpzZ3QsCiAKIAkvKiBjb21wdXRl IG51bWJlciBvZiBjb250aWd1b3VzIGNodW5rcyAqLwogCWNodW5rcyA9IDE7Ci0JZm9yIChpID0g MTsgaSA8IG5fcGFnZXM7ICsraSkKLQkJaWYgKHBhZ2VfdG9fcGZuKHBhZ2VzW2ldKSAhPSBwYWdl X3RvX3BmbihwYWdlc1tpIC0gMV0pICsgMSkKKwlzZWdfbGVuID0gUEFHRV9TSVpFOworCWZvciAo aSA9IDE7IGkgPCBuX3BhZ2VzOyArK2kpIHsKKwkJaWYgKHNlZ19sZW4gPj0gbWF4X3NlZ21lbnQg fHwKKwkJICAgIHBhZ2VfdG9fcGZuKHBhZ2VzW2ldKSAhPSBwYWdlX3RvX3BmbihwYWdlc1tpIC0g MV0pICsgMSkgewogCQkJKytjaHVua3M7CisJCQlzZWdfbGVuID0gUEFHRV9TSVpFOworCQl9IGVs c2UgeworCQkJc2VnX2xlbiArPSBQQUdFX1NJWkU7CisJCX0KKwl9CiAKIAlyZXQgPSBzZ19hbGxv Y190YWJsZShzZ3QsIGNodW5rcywgZ2ZwX21hc2spOwogCWlmICh1bmxpa2VseShyZXQpKQpAQCAt NDEzLDE3ICs0MjEsMjIgQEAgaW50IHNnX2FsbG9jX3RhYmxlX2Zyb21fcGFnZXMoc3RydWN0IHNn X3RhYmxlICpzZ3QsCiAJLyogbWVyZ2luZyBjaHVua3MgYW5kIHB1dHRpbmcgdGhlbSBpbnRvIHRo ZSBzY2F0dGVybGlzdCAqLwogCWN1cl9wYWdlID0gMDsKIAlmb3JfZWFjaF9zZyhzZ3QtPnNnbCwg cywgc2d0LT5vcmlnX25lbnRzLCBpKSB7Ci0JCXVuc2lnbmVkIGxvbmcgY2h1bmtfc2l6ZTsKKwkJ dW5zaWduZWQgaW50IGNodW5rX3NpemU7CiAJCXVuc2lnbmVkIGludCBqOwogCiAJCS8qIGxvb2sg Zm9yIHRoZSBlbmQgb2YgdGhlIGN1cnJlbnQgY2h1bmsgKi8KKwkJc2VnX2xlbiA9IFBBR0VfU0la RTsKIAkJZm9yIChqID0gY3VyX3BhZ2UgKyAxOyBqIDwgbl9wYWdlczsgKytqKQotCQkJaWYgKHBh Z2VfdG9fcGZuKHBhZ2VzW2pdKSAhPQorCQkJaWYgKHNlZ19sZW4gPj0gbWF4X3NlZ21lbnQgfHwK KwkJCSAgICBwYWdlX3RvX3BmbihwYWdlc1tqXSkgIT0KIAkJCSAgICBwYWdlX3RvX3BmbihwYWdl c1tqIC0gMV0pICsgMSkKIAkJCQlicmVhazsKKwkJCWVsc2UKKwkJCQlzZWdfbGVuICs9IFBBR0Vf U0laRTsKIAogCQljaHVua19zaXplID0gKChqIC0gY3VyX3BhZ2UpIDw8IFBBR0VfU0hJRlQpIC0g b2Zmc2V0OwotCQlzZ19zZXRfcGFnZShzLCBwYWdlc1tjdXJfcGFnZV0sIG1pbihzaXplLCBjaHVu a19zaXplKSwgb2Zmc2V0KTsKKwkJc2dfc2V0X3BhZ2UocywgcGFnZXNbY3VyX3BhZ2VdLAorCQkJ ICAgIG1pbl90KHVuc2lnbmVkIGxvbmcsIHNpemUsIGNodW5rX3NpemUpLCBvZmZzZXQpOwogCQlz aXplIC09IGNodW5rX3NpemU7CiAJCW9mZnNldCA9IDA7CiAJCWN1cl9wYWdlID0gajsKLS0gCjIu Ny40CgpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpJbnRl bC1nZnggbWFpbGluZyBsaXN0CkludGVsLWdmeEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cHM6 Ly9saXN0cy5mcmVlZGVza3RvcC5vcmcvbWFpbG1hbi9saXN0aW5mby9pbnRlbC1nZngK