From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jan Kara Subject: Re: [PATCH 2/9] mm: Provide new get_vaddr_frames() helper Date: Mon, 11 May 2015 16:00:19 +0200 Message-ID: <20150511140019.GD25034@quack.suse.cz> References: <1430897296-5469-1-git-send-email-jack@suse.cz> <1430897296-5469-3-git-send-email-jack@suse.cz> <20150508144922.GO2462@suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Return-path: Content-Disposition: inline In-Reply-To: <20150508144922.GO2462@suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dri-devel-bounces@lists.freedesktop.org Sender: "dri-devel" To: Mel Gorman Cc: linux-samsung-soc@vger.kernel.org, Jan Kara , Pawel Osciak , Mauro Carvalho Chehab , dri-devel@lists.freedesktop.org, linux-mm@kvack.org, Marek Szyprowski , linux-media@vger.kernel.org List-Id: linux-samsung-soc@vger.kernel.org T24gRnJpIDA4LTA1LTE1IDE1OjQ5OjIyLCBNZWwgR29ybWFuIHdyb3RlOgo+IE9uIFdlZCwgTWF5 IDA2LCAyMDE1IGF0IDA5OjI4OjA5QU0gKzAyMDAsIEphbiBLYXJhIHdyb3RlOgo+ID4gUHJvdmlk ZSBuZXcgZnVuY3Rpb24gZ2V0X3ZhZGRyX2ZyYW1lcygpLiAgVGhpcyBmdW5jdGlvbiBtYXBzIHZp cnR1YWwKPiA+IGFkZHJlc3NlcyBmcm9tIGdpdmVuIHN0YXJ0IGFuZCBmaWxscyBnaXZlbiBhcnJh eSB3aXRoIHBhZ2UgZnJhbWUgbnVtYmVycyBvZgo+ID4gdGhlIGNvcnJlc3BvbmRpbmcgcGFnZXMu IElmIGdpdmVuIHN0YXJ0IGJlbG9uZ3MgdG8gYSBub3JtYWwgdm1hLCB0aGUgZnVuY3Rpb24KPiA+ IGdyYWJzIHJlZmVyZW5jZSB0byBlYWNoIG9mIHRoZSBwYWdlcyB0byBwaW4gdGhlbSBpbiBtZW1v cnkuIElmIHN0YXJ0Cj4gPiBiZWxvbmdzIHRvIFZNX0lPIHwgVk1fUEZOTUFQIHZtYSwgd2UgZG9u J3QgdG91Y2ggcGFnZSBzdHJ1Y3R1cmVzLiBDYWxsZXIKPiA+IG11c3QgbWFrZSBzdXJlIHBmbnMg YXJlbid0IHJldXNlZCBmb3IgYW55dGhpbmcgZWxzZSB3aGlsZSBoZSBpcyB1c2luZwo+ID4gdGhl bS4KPiA+IAo+ID4gVGhpcyBmdW5jdGlvbiBpcyBjcmVhdGVkIGZvciB2YXJpb3VzIGRyaXZlcnMg dG8gc2ltcGxpZnkgaGFuZGxpbmcgb2YKPiA+IHRoZWlyIGJ1ZmZlcnMuCj4gPiAKPiA+IFNpZ25l ZC1vZmYtYnk6IEphbiBLYXJhIDxqYWNrQHN1c2UuY3o+Cj4gCj4gVHJpdmlhbCBjb21tZW50cyBv bmx5OwouLi4KPiA+IEBAIC05MzYsNiArOTM3LDIxOSBAQCBpbnQgX19tbV9wb3B1bGF0ZSh1bnNp Z25lZCBsb25nIHN0YXJ0LCB1bnNpZ25lZCBsb25nIGxlbiwgaW50IGlnbm9yZV9lcnJvcnMpCj4g PiAgCXJldHVybiByZXQ7CS8qIDAgb3IgbmVnYXRpdmUgZXJyb3IgY29kZSAqLwo+ID4gIH0KPiA+ ICAKPiA+ICsvKgo+ID4gKyAqIGdldF92YWRkcl9mcmFtZXMoKSAtIG1hcCB2aXJ0dWFsIGFkZHJl c3NlcyB0byBwZm5zCj4gPiArICogQHN0YXJ0OglzdGFydGluZyB1c2VyIGFkZHJlc3MKPiA+ICsg KiBAbnJfZnJhbWVzOgludW1iZXIgb2YgcGFnZXMgLyBwZm5zIGZyb20gc3RhcnQgdG8gbWFwCj4g PiArICogQHdyaXRlOgl3aGV0aGVyIHBhZ2VzIHdpbGwgYmUgd3JpdHRlbiB0byBieSB0aGUgY2Fs bGVyCj4gPiArICogQGZvcmNlOgl3aGV0aGVyIHRvIGZvcmNlIHdyaXRlIGFjY2VzcyBldmVuIGlm IHVzZXIgbWFwcGluZyBpcwo+ID4gKyAqCQlyZWFkb25seS4gVGhpcyB3aWxsIHJlc3VsdCBpbiB0 aGUgcGFnZSBiZWluZyBDT1dlZCBldmVuCj4gPiArICoJCWluIE1BUF9TSEFSRUQgbWFwcGluZ3Mu IFlvdSBkbyBub3Qgd2FudCB0aGlzLgo+IAo+IElmIHRoZXkgZG9uJ3Qgd2FudCBpdCwgd2h5IGRv ZXMgaXQgZXhpc3Q/CiAgVGhpcyB3YXMgY29waWVkIGZyb20gZ2V0X3VzZXJfcGFnZXMoKS4gVGhl IG9yaWdpbmFsIGNvbW1lbnQgY2hhbmdlZCBpbgp0aGUgbWVhbiB0aW1lIHNvIEkndmUgdXBkYXRl ZCB0aGlzIG9uZSBzb21ld2hhdCBhbmQgcmVmZXJlbmNlZCBjb21tZW50IGF0CmdldF91c2VyX3Bh Z2VzKCkgZm9yIGRldGFpbHMuCgo+ID4gKyAqIEB2ZWM6CXN0cnVjdHVyZSB3aGljaCByZWNlaXZl cyBwYWdlcyAvIHBmbnMgb2YgdGhlIGFkZHJlc3NlcyBtYXBwZWQuCj4gPiArICoJCUl0IHNob3Vs ZCBoYXZlIHNwYWNlIGZvciBhdCBsZWFzdCBucl9mcmFtZXMgZW50cmllcy4KPiA+ICsgKgo+ID4g KyAqIFRoaXMgZnVuY3Rpb24gbWFwcyB2aXJ0dWFsIGFkZHJlc3NlcyBmcm9tIEBzdGFydCBhbmQg ZmlsbHMgQHZlYyBzdHJ1Y3R1cmUKPiA+ICsgKiB3aXRoIHBhZ2UgZnJhbWUgbnVtYmVycyBvciBw YWdlIHBvaW50ZXJzIHRvIGNvcnJlc3BvbmRpbmcgcGFnZXMgKGNob2ljZQo+ID4gKyAqIGRlcGVu ZHMgb24gdGhlIHR5cGUgb2YgdGhlIHZtYSB1bmRlcmx5aW5nIHRoZSB2aXJ0dWFsIGFkZHJlc3Mp LiBJZiBAc3RhcnQKPiA+ICsgKiBiZWxvbmdzIHRvIGEgbm9ybWFsIHZtYSwgdGhlIGZ1bmN0aW9u IGdyYWJzIHJlZmVyZW5jZSB0byBlYWNoIG9mIHRoZSBwYWdlcwo+ID4gKyAqIHRvIHBpbiB0aGVt IGluIG1lbW9yeS4gSWYgQHN0YXJ0IGJlbG9uZ3MgdG8gVk1fSU8gfCBWTV9QRk5NQVAgdm1hLCB3 ZSBkb24ndAo+ID4gKyAqIHRvdWNoIHBhZ2Ugc3RydWN0dXJlcyBhbmQgdGhlIGNhbGxlciBtdXN0 IG1ha2Ugc3VyZSBwZm5zIGFyZW4ndCByZXVzZWQgZm9yCj4gPiArICogYW55dGhpbmcgZWxzZSB3 aGlsZSBoZSBpcyB1c2luZyB0aGVtLgo+ID4gKyAqCj4gPiArICogVGhlIGZ1bmN0aW9uIHJldHVy bnMgbnVtYmVyIG9mIHBhZ2VzIG1hcHBlZCB3aGljaCBtYXkgYmUgbGVzcyB0aGFuCj4gPiArICog QG5yX2ZyYW1lcy4gSW4gcGFydGljdWxhciB3ZSBzdG9wIG1hcHBpbmcgaWYgdGhlcmUgYXJlIG1v cmUgdm1hcyBvZgo+ID4gKyAqIGRpZmZlcmVudCB0eXBlIHVuZGVybHlpbmcgdGhlIHNwZWNpZmll ZCByYW5nZSBvZiB2aXJ0dWFsIGFkZHJlc3Nlcy4KPiA+ICsgKgo+ID4gKyAqIFRoaXMgZnVuY3Rp b24gdGFrZXMgY2FyZSBvZiBncmFiYmluZyBtbWFwX3NlbSBhcyBuZWNlc3NhcnkuCj4gPiArICov Cj4gPiAraW50IGdldF92YWRkcl9mcmFtZXModW5zaWduZWQgbG9uZyBzdGFydCwgdW5zaWduZWQg aW50IG5yX2ZyYW1lcywKPiA+ICsJCSAgICAgYm9vbCB3cml0ZSwgYm9vbCBmb3JjZSwgc3RydWN0 IGZyYW1lX3ZlY3RvciAqdmVjKQo+ID4gK3sKPiA+ICsJc3RydWN0IG1tX3N0cnVjdCAqbW0gPSBj dXJyZW50LT5tbTsKPiA+ICsJc3RydWN0IHZtX2FyZWFfc3RydWN0ICp2bWE7Cj4gPiArCWludCBy ZXQgPSAwOwo+ID4gKwlpbnQgZXJyOwo+ID4gKwlpbnQgbG9ja2VkID0gMTsKPiA+ICsKPiAKPiBi b29sIGxvY2tlZC4KICBJdCBjYW5ub3QgYmUgYm9vbC4gSXQgaXMgcGFzc2VkIHRvIGdldF91c2Vy X3BhZ2VzX2xvY2tlZCgpIHdoaWNoIGV4cGVjdHMKaW50ICouCgo+ID4gKwlpZiAobnJfZnJhbWVz ID09IDApCj4gPiArCQlyZXR1cm4gMDsKPiA+ICsKPiA+ICsJaWYgKFdBUk5fT05fT05DRShucl9m cmFtZXMgPiB2ZWMtPm5yX2FsbG9jYXRlZCkpCj4gPiArCQlucl9mcmFtZXMgPSB2ZWMtPm5yX2Fs bG9jYXRlZDsKPiA+ICsKPiA+ICsJZG93bl9yZWFkKCZtbS0+bW1hcF9zZW0pOwo+ID4gKwl2bWEg PSBmaW5kX3ZtYV9pbnRlcnNlY3Rpb24obW0sIHN0YXJ0LCBzdGFydCArIDEpOwo+ID4gKwlpZiAo IXZtYSkgewo+ID4gKwkJcmV0ID0gLUVGQVVMVDsKPiA+ICsJCWdvdG8gb3V0Owo+ID4gKwl9Cj4g PiArCWlmICghKHZtYS0+dm1fZmxhZ3MgJiAoVk1fSU8gfCBWTV9QRk5NQVApKSkgewo+ID4gKwkJ dmVjLT5nb3RfcmVmID0gMTsKPiA+ICsJCXZlYy0+aXNfcGZucyA9IDA7Cj4gCj4gVGhleSdyZSBi b29scyBhbmQgd2hpbGUgY29ycmVjdCwgaXQgbG9va3Mgd2VpcmQuIFRoZXJlIGFyZSBhIGZldwo+ IGluc3RhbmNlcyBvZiB0aGlzIGJ1dCBJIHdvbid0IGNvbW1lbnQgb24gaXQgYWdhaW4uCiAgVGhh bmtzLiBGaXhlZC4KCj4gPiArCQlyZXQgPSBnZXRfdXNlcl9wYWdlc19sb2NrZWQoY3VycmVudCwg bW0sIHN0YXJ0LCBucl9mcmFtZXMsCj4gPiArCQkJd3JpdGUsIGZvcmNlLCAoc3RydWN0IHBhZ2Ug KiopKHZlYy0+cHRycyksICZsb2NrZWQpOwo+ID4gKwkJZ290byBvdXQ7Cj4gPiArCX0KPiA+ICsK PiA+ICsJdmVjLT5nb3RfcmVmID0gMDsKPiA+ICsJdmVjLT5pc19wZm5zID0gMTsKPiA+ICsJZG8g ewo+ID4gKwkJdW5zaWduZWQgbG9uZyAqbnVtcyA9IGZyYW1lX3ZlY3Rvcl9wZm5zKHZlYyk7Cj4g PiArCj4gPiArCQl3aGlsZSAocmV0IDwgbnJfZnJhbWVzICYmIHN0YXJ0ICsgUEFHRV9TSVpFIDw9 IHZtYS0+dm1fZW5kKSB7Cj4gPiArCQkJZXJyID0gZm9sbG93X3Bmbih2bWEsIHN0YXJ0LCAmbnVt c1tyZXRdKTsKPiA+ICsJCQlpZiAoZXJyKSB7Cj4gPiArCQkJCWlmIChyZXQgPT0gMCkKPiA+ICsJ CQkJCXJldCA9IGVycjsKPiA+ICsJCQkJZ290byBvdXQ7Cj4gPiArCQkJfQo+ID4gKwkJCXN0YXJ0 ICs9IFBBR0VfU0laRTsKPiA+ICsJCQlyZXQrKzsKPiA+ICsJCX0KPiA+ICsJCS8qCj4gPiArCQkg KiBXZSBzdG9wIGlmIHdlIGhhdmUgZW5vdWdoIHBhZ2VzIG9yIGlmIFZNQSBkb2Vzbid0IGNvbXBs ZXRlbHkKPiA+ICsJCSAqIGNvdmVyIHRoZSB0YWlsIHBhZ2UuCj4gPiArCQkgKi8KPiA+ICsJCWlm IChyZXQgPj0gbnJfZnJhbWVzIHx8IHN0YXJ0IDwgdm1hLT52bV9lbmQpCj4gPiArCQkJYnJlYWs7 Cj4gPiArCQl2bWEgPSBmaW5kX3ZtYV9pbnRlcnNlY3Rpb24obW0sIHN0YXJ0LCBzdGFydCArIDEp Owo+ID4gKwl9IHdoaWxlICh2bWEgJiYgdm1hLT52bV9mbGFncyAmIChWTV9JTyB8IFZNX1BGTk1B UCkpOwo+ID4gK291dDoKPiA+ICsJaWYgKGxvY2tlZCkKPiA+ICsJCXVwX3JlYWQoJm1tLT5tbWFw X3NlbSk7Cj4gPiArCWlmICghcmV0KQo+ID4gKwkJcmV0ID0gLUVGQVVMVDsKPiA+ICsJaWYgKHJl dCA+IDApCj4gPiArCQl2ZWMtPm5yX2ZyYW1lcyA9IHJldDsKPiA+ICsJcmV0dXJuIHJldDsKPiA+ ICt9Cj4gPiArRVhQT1JUX1NZTUJPTChnZXRfdmFkZHJfZnJhbWVzKTsKPiA+ICsKPiA+ICsvKioK PiA+ICsgKiBwdXRfdmFkZHJfZnJhbWVzKCkgLSBkcm9wIHJlZmVyZW5jZXMgdG8gcGFnZXMgaWYg Z2V0X3ZhZGRyX2ZyYW1lcygpIGFjcXVpcmVkCj4gPiArICoJCQl0aGVtCj4gPiArICogQHZlYzoJ ZnJhbWUgdmVjdG9yIHRvIHB1dAo+ID4gKyAqCj4gPiArICogRHJvcCByZWZlcmVuY2VzIHRvIHBh Z2VzIGlmIGdldF92YWRkcl9mcmFtZXMoKSBhY3F1aXJlZCB0aGVtLiBXZSBhbHNvCj4gPiArICog aW52YWxpZGF0ZSB0aGUgZnJhbWUgdmVjdG9yIHNvIHRoYXQgaXQgaXMgcHJlcGFyZWQgZm9yIHRo ZSBuZXh0IGNhbGwgaW50bwo+ID4gKyAqIGdldF92YWRkcl9mcmFtZXMoKS4KPiA+ICsgKi8KPiA+ ICt2b2lkIHB1dF92YWRkcl9mcmFtZXMoc3RydWN0IGZyYW1lX3ZlY3RvciAqdmVjKQo+ID4gK3sK PiA+ICsJaW50IGk7Cj4gPiArCXN0cnVjdCBwYWdlICoqcGFnZXM7Cj4gPiArCj4gPiArCWlmICgh dmVjLT5nb3RfcmVmKQo+ID4gKwkJZ290byBvdXQ7Cj4gPiArCXBhZ2VzID0gZnJhbWVfdmVjdG9y X3BhZ2VzKHZlYyk7Cj4gPiArCS8qCj4gPiArCSAqIGZyYW1lX3ZlY3Rvcl9wYWdlcygpIG1pZ2h0 IG5lZWRlZCB0byBkbyBhIGNvbnZlcnNpb24gd2hlbiB3ZQo+ID4gKwkgKiBnZXRfdmFkZHJfZnJh bWVzKCkgZ290IHBhZ2VzIGJ1dCB2ZWMgd2FzIGxhdGVyIGNvbnZlcnRlZCB0byBwZm5zLgo+ID4g KwkgKiBCdXQgaXQgc2hvdWxkbid0IHJlYWxseSBmYWlsIHRvIGNvbnZlcnQgcGZucyBiYWNrLi4u Cj4gPiArCSAqLwo+ID4gKwlCVUdfT04oSVNfRVJSKHBhZ2VzKSk7Cj4gCj4gSXQncyBoYXJkIHRv IHNlZSBob3cgaXQgY291bGQgYnV0IGl0IGlzIHJlY292ZXJhYmxlIHNvIEJVR19PTiBpcwo+IG92 ZXJraWxsLiBXQVJOX09OIGFuZCByZXR1cm4gZXZlbiB0aG91Z2ggd2UgcG90ZW50aWFsbHkgbGVh a2VkIG5vdy4KICBPSy4KCj4gPiArCWZvciAoaSA9IDA7IGkgPCB2ZWMtPm5yX2ZyYW1lczsgaSsr KQo+ID4gKwkJcHV0X3BhZ2UocGFnZXNbaV0pOwo+ID4gKwl2ZWMtPmdvdF9yZWYgPSAwOwo+ID4g K291dDoKPiA+ICsJdmVjLT5ucl9mcmFtZXMgPSAwOwo+ID4gK30KPiA+ICtFWFBPUlRfU1lNQk9M KHB1dF92YWRkcl9mcmFtZXMpOwo+ID4gKwo+ID4gKy8qKgo+ID4gKyAqIGZyYW1lX3ZlY3Rvcl90 b19wYWdlcyAtIGNvbnZlcnQgZnJhbWUgdmVjdG9yIHRvIGNvbnRhaW4gcGFnZSBwb2ludGVycwo+ ID4gKyAqIEB2ZWM6CWZyYW1lIHZlY3RvciB0byBjb252ZXJ0Cj4gPiArICoKPiA+ICsgKiBDb252 ZXJ0IEB2ZWMgdG8gY29udGFpbiBhcnJheSBvZiBwYWdlIHBvaW50ZXJzLiAgSWYgdGhlIGNvbnZl cnNpb24gaXMKPiA+ICsgKiBzdWNjZXNzZnVsLCByZXR1cm4gMC4gT3RoZXJ3aXNlIHJldHVybiBh biBlcnJvci4KPiA+ICsgKi8KPiAKPiBJZiB5b3UgZG8gYW5vdGhlciB2ZXJzaW9uLCBpdCB3b3Vs ZCBub3QgaHVydCB0byBtZW50aW9uIHRoYXQgYSBwYWdlCj4gcmVmZXJlbmNlIGlzIG5vdCB0YWtl biB3aGVuIGRvaW5nIHRoaXMgY29udmVyc2lvbi4KICBPSywgZG9uZS4KCj4gPiAraW50IGZyYW1l X3ZlY3Rvcl90b19wYWdlcyhzdHJ1Y3QgZnJhbWVfdmVjdG9yICp2ZWMpCj4gPiArewo+IAo+IEkg dGhpbmsgaXQncyBwcm9iYWJseSBiZXN0IHRvIG1ha2UgdGhlIHJlbGV2YW50IGNvdW50ZXJzIGlu IGZyYW1lX3ZlY3Rvcgo+IHNpZ25lZCBhbmQgbGltaXQgdGhlIG1heGltdW0gcG9zc2libGUgc2l6 ZSBvZiBpdC4gSXQncyBzdGlsbCBub3QgcHV0dGluZwo+IGFueSBwcmFjdGljYWwgbGltaXQgb24g dGhlIHNpemUgb2YgdGhlIGZyYW1lX3ZlY3Rvci4KICBJIGRvbid0IHNlZSBhIHJlYXNvbiB3aHkg Y291bnRlcnMgaW4gZnJhbWVfdmVjdG9yIHNob3VsZCBiZSBzaWduZWQuLi4gQ2FuCnlvdSBzaGFy ZSB5b3VyIHJlYXNvbj8gIEkndmUgYWRkZWQgYSBjaGVjayBpbnRvIGZyYW1lX3ZlY3Rvcl9jcmVh dGUoKSB0bwpsaW1pdCBudW1iZXIgb2YgZnJhbWVzIHRvIElOVF9NQVggLyBzaXplb2Yodm9pZCAq KSAvIDIgdG8gYXZvaWQgYXJpdGhtZXRpY3MKb3ZlcmZsb3cuIFRoYW5rcyBmb3IgcmV2aWV3IQoK CQkJCQkJCQlIb256YQotLSAKSmFuIEthcmEgPGphY2tAc3VzZS5jej4KU1VTRSBMYWJzLCBDUgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpkcmktZGV2ZWwg bWFpbGluZyBsaXN0CmRyaS1kZXZlbEBsaXN0cy5mcmVlZGVza3RvcC5vcmcKaHR0cDovL2xpc3Rz LmZyZWVkZXNrdG9wLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RyaS1kZXZlbAo=