From mboxrd@z Thu Jan 1 00:00:00 1970 From: Gu Zheng Subject: Re: [PATCH] f2fs: optimize fs_lock for better performance Date: Thu, 12 Sep 2013 11:18:00 +0800 Message-ID: <52313268.4010002@cn.fujitsu.com> References: <88.C4.11914.9D4A9225@epcpsbge6.samsung.com> <1378774324.2354.103.camel@kjgkr> <523001B6.3080506@cn.fujitsu.com> <001001ceaf61$a4ea9a90$eebfcfb0$@samsung.com> Mime-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Cc: linux-fsdevel@vger.kernel.org, shu.tan@samsung.com, linux-kernel@vger.kernel.org, linux-f2fs-devel@lists.sourceforge.net To: =?UTF-8?B?5L+e6LaF?= Return-path: In-Reply-To: <001001ceaf61$a4ea9a90$eebfcfb0$@samsung.com> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linux-f2fs-devel-bounces@lists.sourceforge.net List-Id: linux-fsdevel.vger.kernel.org SGkgQ2hhbywKT24gMDkvMTIvMjAxMyAxMDo0MCBBTSwg5L+e6LaFIHdyb3RlOgoKPiBIaSBHdQo+ IAo+PiAtLS0tLU9yaWdpbmFsIE1lc3NhZ2UtLS0tLQo+PiBGcm9tOiBHdSBaaGVuZyBbbWFpbHRv Omd1ei5mbnN0QGNuLmZ1aml0c3UuY29tXQo+PiBTZW50OiBXZWRuZXNkYXksIFNlcHRlbWJlciAx MSwgMjAxMyAxOjM4IFBNCj4+IFRvOiBqYWVnZXVrLmtpbUBzYW1zdW5nLmNvbQo+PiBDYzogY2hh bzIueXVAc2Ftc3VuZy5jb207IHNodS50YW5Ac2Ftc3VuZy5jb207Cj4+IGxpbnV4LWZzZGV2ZWxA dmdlci5rZXJuZWwub3JnOyBsaW51eC1rZXJuZWxAdmdlci5rZXJuZWwub3JnOwo+PiBsaW51eC1m MmZzLWRldmVsQGxpc3RzLnNvdXJjZWZvcmdlLm5ldAo+PiBTdWJqZWN0OiBSZTogW2YyZnMtZGV2 XVtQQVRDSF0gZjJmczogb3B0aW1pemUgZnNfbG9jayBmb3IgYmV0dGVyIHBlcmZvcm1hbmNlCj4+ Cj4+IEhpIEphZWdldWssIENoYW8sCj4+Cj4+IE9uIDA5LzEwLzIwMTMgMDg6NTIgQU0sIEphZWdl dWsgS2ltIHdyb3RlOgo+Pgo+Pj4gSGksCj4+Pgo+Pj4gQXQgZmlyc3QsIHRoYW5rIHlvdSBmb3Ig dGhlIHJlcG9ydCBhbmQgcGxlYXNlIGZvbGxvdyB0aGUgZW1haWwgd3JpdGluZwo+Pj4gcnVsZXMu IDopCj4+Pgo+Pj4gQW55d2F5LCBJIGFncmVlIHRvIHRoZSBiZWxvdyBpc3N1ZS4KPj4+IE9uZSB0 aGluZyB0aGF0IEkgY2FuIHRoaW5rIG9mIGlzIHRoYXQgd2UgZG9uJ3QgbmVlZCB0byB1c2UgdGhl Cj4+PiBzcGluX2xvY2ssIHNpbmNlIHdlIGRvbid0IGNhcmUgYWJvdXQgdGhlIGV4YWN0IGxvY2sg bnVtYmVyLCBidXQganVzdAo+Pj4gbmVlZCB0byBnZXQgYW55IG5vdC1jb2xsaWRlZCBudW1iZXIu Cj4+Cj4+IElNSE8sIGp1c3QgbW92aW5nIHNiaS0+bmV4dF9sb2NrX251bSsrIGJlZm9yZQo+PiBt dXRleF9sb2NrKCZzYmktPmZzX2xvY2tbbmV4dF9sb2NrXSkKPj4gY2FuIGF2b2lkIHVuYmFsYW5j ZSBpc3N1ZSBtb3N0bHkuCj4+IElNTywgdGhlIGNhc2UgdHdvIG9yIG1vcmUgdGhyZWFkcyBpbmNy ZWFzZSBzYmktPm5leHRfbG9ja19udW0gaW4gdGhlIHNhbWUKPj4gdGltZSBpcyByZWFsbHkgdmVy eSB2ZXJ5IGxpdHRsZS4gSWYgeW91IHRoaW5rIGl0IGlzIG5vdCByaWdvcm91cywgY2hhbmdlCj4+ IG5leHRfbG9ja19udW0gdG8gYXRvbWljIG9uZSBjYW4gZml4IGl0Lgo+PiBXaGF0J3MgeW91ciBv cGluaW9uPwo+Pgo+PiBSZWdhcmRzLAo+PiBHdQo+IAo+IEkgZGlkIHRoZSB0ZXN0IHNiaS0+bmV4 dF9sb2NrX251bSsrIGNvbXBhcmUgd2l0aCB0aGUgYXRvbWljIG9uZSwKPiBBbmQgSSBmb3VuZCBw ZXJmb3JtYW5jZSBvZiB0aGVtIGlzIGFsbW9zdCB0aGUgc2FtZSB1bmRlciBhIHNtYWxsIG51bWJl ciB0aHJlYWQgcmFjaW5nLgo+IFNvIGFzIHlvdXIgYW5kIEtpbSdzIG9waW5pb24sIGl0J3MgZW5v dWdoIHRvIHVzZSAic2JpLT5uZXh0X2xvY2tfbnVtKysiIHRvIGZpeCB0aGlzIGlzc3VlLgoKR29v ZCwgYnV0IGl0IHNlZW1zIHRoYXQgeW91ciByZXBsYXkgcGF0Y2ggaXMgb3V0IG9mIGZvcm1hdCwg YW5kIGl0J3MgaGFyZCBmb3IgSmFlZ2V1ayB0byBtZXJnZS4KSSdsbCBmb3JtYXQgaXQsIHNlZSB0 aGUgZm9sbG93aW5nIHRocmVhZC4KClRoYW5rcywKR3UKCj4gCj4gVGhhbmtzIGZvciB0aGUgYWR2 aWNlLgo+Pgo+Pj4KPj4+IFNvLCBob3cgYWJvdXQgcmVtb3ZpbmcgdGhlIHNwaW5fbG9jaz8KPj4+ IEFuZCBob3cgYWJvdXQgdXNpbmcgYSByYW5kb20gbnVtYmVyPwo+Pgo+Pj4gVGhhbmtzLAo+Pj4K Pj4+IDIwMTMtMDktMDYgKOq4iCksIDA5OjQ4ICswMDAwLCBDaGFvIFl1Ogo+Pj4+IEhpIEtpbToK Pj4+Pgo+Pj4+ICAgICAgSSB0aGluayB0aGVyZSBpcyBhIHBlcmZvcm1hbmNlIHByb2JsZW06IHdo ZW4gYWxsIHNiaS0+ZnNfbG9jayBpcwo+Pj4+IGhvbGRlZCwKPj4+Pgo+Pj4+IHRoZW4gYWxsIG90 aGVyIHRocmVhZHMgbWF5IGdldCB0aGUgc2FtZSBuZXh0X2xvY2sgdmFsdWUgZnJvbQo+Pj4+IHNi aS0+bmV4dF9sb2NrX251bSBpbiBmdW5jdGlvbiBtdXRleF9sb2NrX29wLAo+Pj4+Cj4+Pj4gYW5k IHdhaXQgdG8gZ2V0IHRoZSBzYW1lIGxvY2sgYXQgcG9zaXRpb24gZnNfbG9ja1tuZXh0X2xvY2td LCBpdAo+Pj4+IHVuYmFsYW5jZSB0aGUgZnNfbG9jayB1c2FnZS4KPj4+Pgo+Pj4+IEl0IG1heSBs b3N0IHBlcmZvcm1hbmNlIHdoZW4gd2UgZG8gdGhlIG11bHRpdGhyZWFkIHRlc3QuCj4+Pj4KPj4+ Pgo+Pj4+Cj4+Pj4gSGVyZSBpcyB0aGUgcGF0Y2ggdG8gZml4IHRoaXMgcHJvYmxlbToKPj4+Pgo+ Pj4+Cj4+Pj4KPj4+PiBTaWduZWQtb2ZmLWJ5OiBZdSBDaGFvIDxjaGFvMi55dUBzYW1zdW5nLmNv bT4KPj4+Pgo+Pj4+IGRpZmYgLS1naXQgYS9mcy9mMmZzL2YyZnMuaCBiL2ZzL2YyZnMvZjJmcy5o Cj4+Pj4KPj4+PiBvbGQgbW9kZSAxMDA2NDQKPj4+Pgo+Pj4+IG5ldyBtb2RlIDEwMDc1NQo+Pj4+ Cj4+Pj4gaW5kZXggNDY3ZDQyZC4uOTgzYmI0NQo+Pj4+Cj4+Pj4gLS0tIGEvZnMvZjJmcy9mMmZz LmgKPj4+Pgo+Pj4+ICsrKyBiL2ZzL2YyZnMvZjJmcy5oCj4+Pj4KPj4+PiBAQCAtMzcxLDYgKzM3 MSw3IEBAIHN0cnVjdCBmMmZzX3NiX2luZm8gewo+Pj4+Cj4+Pj4gICAgICAgICBzdHJ1Y3QgbXV0 ZXggZnNfbG9ja1tOUl9HTE9CQUxfTE9DS1NdOyAgLyogYmxvY2tpbmcgRlMKPj4+PiBvcGVyYXRp b25zICovCj4+Pj4KPj4+PiAgICAgICAgIHN0cnVjdCBtdXRleCBub2RlX3dyaXRlOyAgICAgICAg ICAgICAgICAvKiBsb2NraW5nIG5vZGUKPj4gd3JpdGVzCj4+Pj4gKi8KPj4+Pgo+Pj4+ICAgICAg ICAgc3RydWN0IG11dGV4IHdyaXRlcGFnZXM7ICAgICAgICAgICAgICAgIC8qIG11dGV4IGZvcgo+ Pj4+IHdyaXRlcGFnZXMoKSAqLwo+Pj4+Cj4+Pj4gKyAgICAgICBzcGlubG9ja190IHNwaW5fbG9j azsgICAgICAgICAgICAgICAgICAgLyogbG9jayBmb3IKPj4+PiBuZXh0X2xvY2tfbnVtICovCj4+ Pj4KPj4+PiAgICAgICAgIHVuc2lnbmVkIGNoYXIgbmV4dF9sb2NrX251bTsgICAgICAgICAgICAv KiByb3VuZC1yb2Jpbgo+PiBnbG9iYWwKPj4+PiBsb2NrcyAqLwo+Pj4+Cj4+Pj4gICAgICAgICBp bnQgcG9yX2RvaW5nOyAgICAgICAgICAgICAgICAgICAgICAgICAgLyogcmVjb3ZlcnkgaXMgZG9p bmcKPj4+PiBvciBub3QgKi8KPj4+Pgo+Pj4+ICAgICAgICAgaW50IG9uX2J1aWxkX2ZyZWVfbmlk czsgICAgICAgICAgICAgICAgIC8qIGJ1aWxkX2ZyZWVfbmlkcyBpcwo+Pj4+IGRvaW5nICovCj4+ Pj4KPj4+PiBAQCAtNTMzLDE1ICs1MzQsMTkgQEAgc3RhdGljIGlubGluZSB2b2lkIG11dGV4X3Vu bG9ja19hbGwoc3RydWN0Cj4+Pj4gZjJmc19zYl9pbmZvICpzYmkpCj4+Pj4KPj4+Pgo+Pj4+Cj4+ Pj4gIHN0YXRpYyBpbmxpbmUgaW50IG11dGV4X2xvY2tfb3Aoc3RydWN0IGYyZnNfc2JfaW5mbyAq c2JpKQo+Pj4+Cj4+Pj4gIHsKPj4+Pgo+Pj4+IC0gICAgICAgdW5zaWduZWQgY2hhciBuZXh0X2xv Y2sgPSBzYmktPm5leHRfbG9ja19udW0gJQo+Pj4+IE5SX0dMT0JBTF9MT0NLUzsKPj4+Pgo+Pj4+ ICsgICAgICAgdW5zaWduZWQgY2hhciBuZXh0X2xvY2s7Cj4+Pj4KPj4+PiAgICAgICAgIGludCBp ID0gMDsKPj4+Pgo+Pj4+Cj4+Pj4KPj4+PiAgICAgICAgIGZvciAoOyBpIDwgTlJfR0xPQkFMX0xP Q0tTOyBpKyspCj4+Pj4KPj4+PiAgICAgICAgICAgICAgICAgaWYgKG11dGV4X3RyeWxvY2soJnNi aS0+ZnNfbG9ja1tpXSkpCj4+Pj4KPj4+PiAgICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4g aTsKPj4+Pgo+Pj4+Cj4+Pj4KPj4+PiAtICAgICAgIG11dGV4X2xvY2soJnNiaS0+ZnNfbG9ja1tu ZXh0X2xvY2tdKTsKPj4+Pgo+Pj4+ICsgICAgICAgc3Bpbl9sb2NrKCZzYmktPnNwaW5fbG9jayk7 Cj4+Pj4KPj4+PiArICAgICAgIG5leHRfbG9jayA9IHNiaS0+bmV4dF9sb2NrX251bSAlIE5SX0dM T0JBTF9MT0NLUzsKPj4+Pgo+Pj4+ICAgICAgICAgc2JpLT5uZXh0X2xvY2tfbnVtKys7Cj4+Pj4K Pj4+PiArICAgICAgIHNwaW5fdW5sb2NrKCZzYmktPnNwaW5fbG9jayk7Cj4+Pj4KPj4+PiArCj4+ Pj4KPj4+PiArICAgICAgIG11dGV4X2xvY2soJnNiaS0+ZnNfbG9ja1tuZXh0X2xvY2tdKTsKPj4+ Pgo+Pj4+ICAgICAgICAgcmV0dXJuIG5leHRfbG9jazsKPj4+Pgo+Pj4+ICB9Cj4+Pj4KPj4+Pgo+ Pj4+Cj4+Pj4gZGlmZiAtLWdpdCBhL2ZzL2YyZnMvc3VwZXIuYyBiL2ZzL2YyZnMvc3VwZXIuYwo+ Pj4+Cj4+Pj4gb2xkIG1vZGUgMTAwNjQ0Cj4+Pj4KPj4+PiBuZXcgbW9kZSAxMDA3NTUKPj4+Pgo+ Pj4+IGluZGV4IDc1YzdkYzMuLjRmMjc1OTYKPj4+Pgo+Pj4+IC0tLSBhL2ZzL2YyZnMvc3VwZXIu Ywo+Pj4+Cj4+Pj4gKysrIGIvZnMvZjJmcy9zdXBlci5jCj4+Pj4KPj4+PiBAQCAtNjU3LDYgKzY1 Nyw3IEBAIHN0YXRpYyBpbnQgZjJmc19maWxsX3N1cGVyKHN0cnVjdCBzdXBlcl9ibG9jawo+Pj4+ ICpzYiwgdm9pZCAqZGF0YSwgaW50IHNpbGVudCkKPj4+Pgo+Pj4+ICAgICAgICAgbXV0ZXhfaW5p dCgmc2JpLT5jcF9tdXRleCk7Cj4+Pj4KPj4+PiAgICAgICAgIGZvciAoaSA9IDA7IGkgPCBOUl9H TE9CQUxfTE9DS1M7IGkrKykKPj4+Pgo+Pj4+ICAgICAgICAgICAgICAgICBtdXRleF9pbml0KCZz YmktPmZzX2xvY2tbaV0pOwo+Pj4+Cj4+Pj4gKyAgICAgICBzcGluX2xvY2tfaW5pdCgmc2JpLT5z cGluX2xvY2spOwo+Pj4+Cj4+Pj4gICAgICAgICBtdXRleF9pbml0KCZzYmktPm5vZGVfd3JpdGUp Owo+Pj4+Cj4+Pj4gICAgICAgICBzYmktPnBvcl9kb2luZyA9IDA7Cj4+Pj4KPj4+PiAgICAgICAg IHNwaW5fbG9ja19pbml0KCZzYmktPnN0YXRfbG9jayk7Cj4+Pj4KPj4+PiAoRU5EKQo+Pj4+Cj4+ Pj4KPj4+Pgo+Pj4+Cj4+Pj4KPj4+Pgo+Pj4KPj4KPj4KPj4gPQo+IAo+IAoKCgotLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KSG93IFNlcnZpY2VOb3cgaGVscHMgSVQgcGVvcGxlIHRyYW5zZm9ybSBJVCBk ZXBhcnRtZW50czoKMS4gQ29uc29saWRhdGUgbGVnYWN5IElUIHN5c3RlbXMgdG8gYSBzaW5nbGUg c3lzdGVtIG9mIHJlY29yZCBmb3IgSVQKMi4gU3RhbmRhcmRpemUgYW5kIGdsb2JhbGl6ZSBzZXJ2 aWNlIHByb2Nlc3NlcyBhY3Jvc3MgSVQKMy4gSW1wbGVtZW50IHplcm8tdG91Y2ggYXV0b21hdGlv biB0byByZXBsYWNlIG1hbnVhbCwgcmVkdW5kYW50IHRhc2tzCmh0dHA6Ly9wdWJhZHMuZy5kb3Vi bGVjbGljay5uZXQvZ2FtcGFkL2Nsaz9pZD01MTI3MTExMSZpdT0vNDE0MC9vc3RnLmNsa3Ryawpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpMaW51eC1mMmZz LWRldmVsIG1haWxpbmcgbGlzdApMaW51eC1mMmZzLWRldmVsQGxpc3RzLnNvdXJjZWZvcmdlLm5l dApodHRwczovL2xpc3RzLnNvdXJjZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9saW51eC1mMmZz LWRldmVsCg==