Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751913AbZCWNIY (ORCPT ); Mon, 23 Mar 2009 09:08:24 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751992AbZCWNIK (ORCPT ); Mon, 23 Mar 2009 09:08:10 -0400 Received: from gw-ca.panasas.com ([209.116.51.66]:17614 "EHLO laguna.int.panasas.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751408AbZCWNIH (ORCPT ); Mon, 23 Mar 2009 09:08:07 -0400 Message-ID: <49C78959.4040109@panasas.com> Date: Mon, 23 Mar 2009 15:06:33 +0200 From: Boaz Harrosh User-Agent: Thunderbird 2.0.0.19 (X11/20090105) MIME-Version: 1.0 To: Jeff Garzik , Andrew Morton , linux-fsdevel , open-osd , Evgeniy Polyakov , Marcin Slusarz CC: James Bottomley , linux-kernel , FUJITA Tomonori Subject: Re: [PATCHSET 0/8 version 4] exofs for kernel 2.6.30 References: <49C1331D.1080805@panasas.com> In-Reply-To: <49C1331D.1080805@panasas.com> Content-Type: multipart/mixed; boundary="------------070602070604040801080005" X-OriginalArrivalTime: 23 Mar 2009 13:08:01.0471 (UTC) FILETIME=[6510ECF0:01C9ABB8] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 12424 Lines: 215 This is a multi-part message in MIME format. --------------070602070604040801080005 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Boaz Harrosh wrote: > What's new since last iteration: > > * I completely re-wrote the [PATCH 4/8] exofs: address_space_operations > in which we actually write/read to/from osd-storage. The difference is > that now we try to accumulate as many contiguous pages as possible and > send them as one large request. As opposed to writing each page at a > time, in the previous patchset. > > * [PATCH 5/8] exofs: dir_inode and directory operations received lots > of love thanks to Evgeniy Polyakov's grate comments. > > exofs is a file system that uses an OSD device as it's back store. > > OSD is a new T10 command set that views storage devices not as a large/flat > array of sectors but as a container of objects, each having a length, quota, > time attributes and more. Each object is addressed by a 64bit ID, and is > contained in a 64bit ID partition. Each object has associated attributes > attached to it, which are integral part of the object and provide metadata about > the object. The standard defines some common obligatory attributes, but user > attributes can be added as needed. > > Here is the list of patches > [PATCH 1/8] exofs: Kbuild, Headers and osd utils I have updated this patch on git.open-osd.org Kbuild fallout > [PATCH 2/8] exofs: file and file_inode operations > [PATCH 3/8] exofs: symlink_inode and fast_symlink_inode operations > [PATCH 4/8] exofs: address_space_operations I have posted a new version of this patch > [PATCH 5/8] exofs: dir_inode and directory operations > [PATCH 6/8] exofs: super_operations and file_system_type Minor clean-up to this patch (moved local structures to c file from header, remove unused function) > [PATCH 7/8] exofs: Documentation > [PATCH 8/8] fs: Add exofs to Kernel build > Revised patchset can be found on link below Attached the total diff from last HEAD > This patchset is also available on: > git-clone git://git.open-osd.org/linux-open-osd.git linux-next > or on the web at: > http://git.open-osd.org/gitweb.cgi?p=linux-open-osd.git;a=shortlog;h=refs/heads/linux-next > > (Above tree is based on Linus v2.6.29-rc8-212-g8144737) > > If anyone wants to actually run this code and test it > then please start reading at: > http://open-osd.org > You will need to checkout the out-of-tree git (below) for the user-mode utilities. > Also the exofs.txt file in patch 7/8 should help > > If you want to review the user-mode library and supporting plumbings, > git-clone git://git.open-osd.org/open-osd.git > or on the web at: > http://git.open-osd.org/gitweb.cgi?p=open-osd.git;a=summary > > Boaz > Thanks Boaz --------------070602070604040801080005 Content-Type: text/plain; name="exofs-ver5-to-ver4.diff" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="exofs-ver5-to-ver4.diff" Z2l0IGRpZmYgLS1zdGF0IC1wIDY5MGRkNWU5ZTczOWNiMGM2NmE3OTJjNWQ3OTQ5ZjZlOTcx MTM0MjcuLmxpbnV4LW5leHQgLS0gZnMvZXhvZnMvCiBmcy9leG9mcy9LYnVpbGQgIHwgICAg MiArLQogZnMvZXhvZnMvZXhvZnMuaCB8ICAgMTcgLS0tLS0tLS0tLS0tLS0tLS0KIGZzL2V4 b2ZzL2ZpbGUuYyAgfCAgICA0ICsrKysKIGZzL2V4b2ZzL2lub2RlLmMgfCAgIDQ1ICsrKysr KysrKysrKysrKysrKysrKystLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQogZnMvZXhvZnMvc3Vw ZXIuYyB8ICAgIDkgKysrKysrKysrCiA1IGZpbGVzIGNoYW5nZWQsIDM2IGluc2VydGlvbnMo KyksIDQxIGRlbGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2ZzL2V4b2ZzL0tidWlsZCBiL2Zz L2V4b2ZzL0tidWlsZAppbmRleCA1OTJmNDBkLi44YzUyNTNlIDEwMDY0NAotLS0gYS9mcy9l eG9mcy9LYnVpbGQKKysrIGIvZnMvZXhvZnMvS2J1aWxkCkBAIC0yMiw3ICsyMiw3IEBAIGNj ZmxhZ3MteSArPSAtRENPTkZJR19FWE9GU19GUyAtRENPTkZJR19FWE9GU19GU19NT0RVTEUK ICMgaWYgd2UgYXJlIGJ1aWx0IG91dC1vZi10cmVlIGFuZCB0aGUgaG9zdGluZyBrZXJuZWwg aGFzIE9TRCBoZWFkZXJzCiAjIHRoZW4gImNjZmxhZ3MteSArPSIgd2lsbCBub3QgcGljayB0 aGUgb3V0LW9mZi10cmVlIGhlYWRlcnMuIE9ubHkgYnkgZG9pbmcKICMgdGhpcyBpdCB3aWxs IHdvcmsuIFRoaXMgbWlnaHQgYnJlYWsgaW4gZnV0dXJlIGtlcm5lbHMKLUtCVUlMRF9DUFBG TEFHUyA6PSAtSSQoT1NEX0lOQykgJChLQlVJTERfQ1BQRkxBR1MpCitMSU5VWElOQ0xVREUg Oj0gLUkkKE9TRF9JTkMpICQoTElOVVhJTkNMVURFKQogCiBlbmRpZgogCmRpZmYgLS1naXQg YS9mcy9leG9mcy9leG9mcy5oIGIvZnMvZXhvZnMvZXhvZnMuaAppbmRleCA3NjE1NWQ3Li5k NTQ3NTNkIDEwMDY0NAotLS0gYS9mcy9leG9mcy9leG9mcy5oCisrKyBiL2ZzL2V4b2ZzL2V4 b2ZzLmgKQEAgLTU0LDE1ICs1NCw2IEBACiAjZGVmaW5lIF9MTFUoeCkgKHVuc2lnbmVkIGxv bmcgbG9uZykoeCkKIAogLyoKLSAqIHN0cnVjdCB0byBob2xkIHdoYXQgd2UgZ2V0IGZyb20g bW91bnQgb3B0aW9ucwotICovCi1zdHJ1Y3QgZXhvZnNfbW91bnRvcHQgewotCWNvbnN0IGNo YXIgKmRldl9uYW1lOwotCXVpbnQ2NF90IHBpZDsKLQlpbnQgdGltZW91dDsKLX07Ci0KLS8q CiAgKiBvdXIgZXh0ZW5zaW9uIHRvIHRoZSBpbi1tZW1vcnkgc3VwZXJibG9jawogICovCiBz dHJ1Y3QgZXhvZnNfc2JfaW5mbyB7CkBAIC0xMzQsMTQgKzEyNSw2IEBAIHN0YXRpYyBpbmxp bmUgc3RydWN0IGV4b2ZzX2lfaW5mbyAqZXhvZnNfaShzdHJ1Y3QgaW5vZGUgKmlub2RlKQog fQogCiAvKgotICogdWdseSBzdHJ1Y3Qgc28gdGhhdCB3ZSBjYW4gcGFzcyB0d28gYXJndW1l bnRzIHRvIHVwZGF0ZV9pbm9kZSdzIGNhbGxiYWNrCi0gKi8KLXN0cnVjdCB1cGRhdGVpX2Fy Z3MgewotCXN0cnVjdCBleG9mc19zYl9pbmZvCSpzYmk7Ci0Jc3RydWN0IGV4b2ZzX2ZjYglm Y2I7Ci19OwotCi0vKgogICogTWF4aW11bSBjb3VudCBvZiBsaW5rcyB0byBhIGZpbGUKICAq LwogI2RlZmluZSBFWE9GU19MSU5LX01BWCAgICAgICAgICAgMzIwMDAKZGlmZiAtLWdpdCBh L2ZzL2V4b2ZzL2ZpbGUuYyBiL2ZzL2V4b2ZzL2ZpbGUuYwppbmRleCA0NzM4YzNmLi4yNzEy ZjY4IDEwMDY0NAotLS0gYS9mcy9leG9mcy9maWxlLmMKKysrIGIvZnMvZXhvZnMvZmlsZS5j CkBAIC00OSw2ICs0OSwxMCBAQCBzdGF0aWMgaW50IGV4b2ZzX2ZpbGVfZnN5bmMoc3RydWN0 IGZpbGUgKmZpbHAsIHN0cnVjdCBkZW50cnkgKmRlbnRyeSwKIAlzdHJ1Y3QgYWRkcmVzc19z cGFjZSAqbWFwcGluZyA9IGZpbHAtPmZfbWFwcGluZzsKIAogCXJldDEgPSBmaWxlbWFwX3dy aXRlX2FuZF93YWl0KG1hcHBpbmcpOworCS8qTm90ZTogZmlsZV9mc3luYyBiZWxvdyBhbHNv IGNhbGxlcyBzeW5jX2Jsb2NrZGV2LCB3aGljaCBpcyBhIG5vLW9wCisJICogICAgICBmb3Ig ZXhvZnMsIGJ1dCBvdGhlciB0aGVuIHRoYXQgaXQgZG9lcyBzeW5jX2lub2RlIGFuZAorCSAq ICAgICAgc3luY19zdXBlcmJsb2NrIHdoaWNoIGlzIHdoYXQgd2UgbmVlZCBoZXJlLgorCSAq LwogCXJldDIgPSBmaWxlX2ZzeW5jKGZpbHAsIGRlbnRyeSwgZGF0YXN5bmMpOwogCiAJcmV0 dXJuIHJldDEgPyByZXQxIDogcmV0MjsKZGlmZiAtLWdpdCBhL2ZzL2V4b2ZzL2lub2RlLmMg Yi9mcy9leG9mcy9pbm9kZS5jCmluZGV4IDBmNTJlNzYuLjczOTYyOWEgMTAwNjQ0Ci0tLSBh L2ZzL2V4b2ZzL2lub2RlLmMKKysrIGIvZnMvZXhvZnMvaW5vZGUuYwpAQCAtNTUsNyArNTUs NyBAQCBzdHJ1Y3QgcGFnZV9jb2xsZWN0IHsKIAlsb25nIHBnX2ZpcnN0OwogfTsKIAotdm9p ZCBfcGNvbF9pbml0KHN0cnVjdCBwYWdlX2NvbGxlY3QgKnBjb2wsIHVuc2lnbmVkIGV4cGVj dGVkX3BhZ2VzLAorc3RhdGljIHZvaWQgX3Bjb2xfaW5pdChzdHJ1Y3QgcGFnZV9jb2xsZWN0 ICpwY29sLCB1bnNpZ25lZCBleHBlY3RlZF9wYWdlcywKIAkJc3RydWN0IGlub2RlICppbm9k ZSkKIHsKIAlzdHJ1Y3QgZXhvZnNfc2JfaW5mbyAqc2JpID0gaW5vZGUtPmlfc2ItPnNfZnNf aW5mbzsKQEAgLTc1LDcgKzc1LDcgQEAgdm9pZCBfcGNvbF9pbml0KHN0cnVjdCBwYWdlX2Nv bGxlY3QgKnBjb2wsIHVuc2lnbmVkIGV4cGVjdGVkX3BhZ2VzLAogCQkgICAgIGV4cGVjdGVk X3BhZ2VzKTsKIH0KIAotdm9pZCBfcGNvbF9yZXNldChzdHJ1Y3QgcGFnZV9jb2xsZWN0ICpw Y29sKQorc3RhdGljIHZvaWQgX3Bjb2xfcmVzZXQoc3RydWN0IHBhZ2VfY29sbGVjdCAqcGNv bCkKIHsKIAlwY29sLT5leHBlY3RlZF9wYWdlcyAtPSBtaW4ocGNvbC0+bnJfcGFnZXMsIHBj b2wtPmV4cGVjdGVkX3BhZ2VzKTsKIApAQCAtOTMsNyArOTMsNyBAQCB2b2lkIF9wY29sX3Jl c2V0KHN0cnVjdCBwYWdlX2NvbGxlY3QgKnBjb2wpCiAJCXBjb2wtPmV4cGVjdGVkX3BhZ2Vz ID0gMTI4OwogfQogCi1pbnQgcGNvbF90cnlfYWxsb2Moc3RydWN0IHBhZ2VfY29sbGVjdCAq cGNvbCkKK3N0YXRpYyBpbnQgcGNvbF90cnlfYWxsb2Moc3RydWN0IHBhZ2VfY29sbGVjdCAq cGNvbCkKIHsKIAlpbnQgcGFnZXMgPSBtaW5fdCh1bnNpZ25lZCwgcGNvbC0+ZXhwZWN0ZWRf cGFnZXMsIEJJT19NQVhfUEFHRVMpOwogCkBAIC0xMDMsMTggKzEwMywxOSBAQCBpbnQgcGNv bF90cnlfYWxsb2Moc3RydWN0IHBhZ2VfY29sbGVjdCAqcGNvbCkKIAkJCXJldHVybiAwOwog CX0KIAotCUVYT0ZTX0VSUigiRmFpbGVkIHRvIGtjYWxsb2MgZXhwZWN0ZWRfcGFnZXM9JWRc biIsCisJRVhPRlNfRVJSKCJGYWlsZWQgdG8ga2NhbGxvYyBleHBlY3RlZF9wYWdlcz0ldVxu IiwKIAkJICBwY29sLT5leHBlY3RlZF9wYWdlcyk7CiAJcmV0dXJuIC1FTk9NRU07CiB9CiAK LXZvaWQgcGNvbF9mcmVlKHN0cnVjdCBwYWdlX2NvbGxlY3QgKnBjb2wpCitzdGF0aWMgdm9p ZCBwY29sX2ZyZWUoc3RydWN0IHBhZ2VfY29sbGVjdCAqcGNvbCkKIHsKIAliaW9fcHV0KHBj b2wtPmJpbyk7CiAJcGNvbC0+YmlvID0gTlVMTDsKIH0KIAotaW50IHBjb2xfYWRkX3BhZ2Uo c3RydWN0IHBhZ2VfY29sbGVjdCAqcGNvbCwgc3RydWN0IHBhZ2UgKnBhZ2UsIHVuc2lnbmVk IGxlbikKK3N0YXRpYyBpbnQgcGNvbF9hZGRfcGFnZShzdHJ1Y3QgcGFnZV9jb2xsZWN0ICpw Y29sLCBzdHJ1Y3QgcGFnZSAqcGFnZSwKKwkJCSB1bnNpZ25lZCBsZW4pCiB7CiAJaW50IGFk ZGVkX2xlbiA9IGJpb19hZGRfcGNfcGFnZShwY29sLT5yZXFfcSwgcGNvbC0+YmlvLCBwYWdl LCBsZW4sIDApOwogCWlmICh1bmxpa2VseShsZW4gIT0gYWRkZWRfbGVuKSkKQEAgLTE3Myw5 ICsxNzQsOSBAQCBzdGF0aWMgaW50IF9fcmVhZHBhZ2VzX2RvbmUoc3RydWN0IG9zZF9yZXF1 ZXN0ICpvciwgc3RydWN0IHBhZ2VfY29sbGVjdCAqcGNvbCwKIAogCW9zZF9lbmRfcmVxdWVz dChvcik7CiAKLQlpZiAoIXJldCkKKwlpZiAobGlrZWx5KCFyZXQpKQogCQlnb29kX2J5dGVz ID0gcGNvbC0+bGVuZ3RoOwotCWVsc2UgaWYgKHJldCAmJiAhcmVzaWQpCisJZWxzZSBpZiAo IXJlc2lkKQogCQlnb29kX2J5dGVzID0gMDsKIAllbHNlCiAJCWdvb2RfYnl0ZXMgPSBwY29s LT5sZW5ndGggLSByZXNpZDsKQEAgLTIyNyw3ICsyMjgsNyBAQCBzdGF0aWMgdm9pZCByZWFk cGFnZXNfZG9uZShzdHJ1Y3Qgb3NkX3JlcXVlc3QgKm9yLCB2b2lkICpwKQogCWtmcmVlKHAp OwogfQogCi12b2lkIF91bmxvY2tfcGNvbF9wYWdlcyhzdHJ1Y3QgcGFnZV9jb2xsZWN0ICpw Y29sLCBpbnQgcmV0LCBpbnQgcncpCitzdGF0aWMgdm9pZCBfdW5sb2NrX3Bjb2xfcGFnZXMo c3RydWN0IHBhZ2VfY29sbGVjdCAqcGNvbCwgaW50IHJldCwgaW50IHJ3KQogewogCXN0cnVj dCBiaW9fdmVjICpidmVjOwogCWludCBpOwpAQCAtMjQ1LDcgKzI0Niw3IEBAIHZvaWQgX3Vu bG9ja19wY29sX3BhZ2VzKHN0cnVjdCBwYWdlX2NvbGxlY3QgKnBjb2wsIGludCByZXQsIGlu dCBydykKIAlwY29sX2ZyZWUocGNvbCk7CiB9CiAKLWludCByZWFkX2V4ZWMoc3RydWN0IHBh Z2VfY29sbGVjdCAqcGNvbCwgYm9vbCBpc19zeW5jKQorc3RhdGljIGludCByZWFkX2V4ZWMo c3RydWN0IHBhZ2VfY29sbGVjdCAqcGNvbCwgYm9vbCBpc19zeW5jKQogewogCXN0cnVjdCBl eG9mc19pX2luZm8gKm9pID0gZXhvZnNfaShwY29sLT5pbm9kZSk7CiAJc3RydWN0IG9zZF9v YmpfaWQgb2JqID0ge3Bjb2wtPnNiaS0+c19waWQsCkBAIC00NTIsNyArNDUzLDcgQEAgc3Rh dGljIHZvaWQgd3JpdGVwYWdlc19kb25lKHN0cnVjdCBvc2RfcmVxdWVzdCAqb3IsIHZvaWQg KnApCiAKIAlpZiAobGlrZWx5KCFyZXQpKQogCQlnb29kX2J5dGVzID0gcGNvbC0+bGVuZ3Ro OwotCWVsc2UgaWYgKHJldCAmJiAhcmVzaWQpCisJZWxzZSBpZiAoIXJlc2lkKQogCQlnb29k X2J5dGVzID0gMDsKIAllbHNlCiAJCWdvb2RfYnl0ZXMgPSBwY29sLT5sZW5ndGggLSByZXNp ZDsKQEAgLTQ5Myw3ICs0OTQsNyBAQCBzdGF0aWMgdm9pZCB3cml0ZXBhZ2VzX2RvbmUoc3Ry dWN0IG9zZF9yZXF1ZXN0ICpvciwgdm9pZCAqcCkKIAlFWE9GU19EQkdNU0coIndyaXRlcGFn ZXNfZG9uZSBFTkRcbiIpOwogfQogCi1pbnQgd3JpdGVfZXhlYyhzdHJ1Y3QgcGFnZV9jb2xs ZWN0ICpwY29sKQorc3RhdGljIGludCB3cml0ZV9leGVjKHN0cnVjdCBwYWdlX2NvbGxlY3Qg KnBjb2wpCiB7CiAJc3RydWN0IGV4b2ZzX2lfaW5mbyAqb2kgPSBleG9mc19pKHBjb2wtPmlu b2RlKTsKIAlzdHJ1Y3Qgb3NkX29ial9pZCBvYmogPSB7cGNvbC0+c2JpLT5zX3BpZCwKQEAg LTYzMSw3ICs2MzIsNyBAQCBmYWlsOgogCXJldHVybiByZXQ7CiB9CiAKLWludCBleG9mc193 cml0ZXBhZ2VzKHN0cnVjdCBhZGRyZXNzX3NwYWNlICptYXBwaW5nLAorc3RhdGljIGludCBl eG9mc193cml0ZXBhZ2VzKHN0cnVjdCBhZGRyZXNzX3NwYWNlICptYXBwaW5nLAogCQkgICAg ICAgc3RydWN0IHdyaXRlYmFja19jb250cm9sICp3YmMpCiB7CiAJc3RydWN0IHBhZ2VfY29s bGVjdCBwY29sOwpAQCAtMTExMCw2ICsxMTExLDE0IEBAIHN0cnVjdCBpbm9kZSAqZXhvZnNf bmV3X2lub2RlKHN0cnVjdCBpbm9kZSAqZGlyLCBpbnQgbW9kZSkKIH0KIAogLyoKKyAqIHN0 cnVjdCB0byBwYXNzIHR3byBhcmd1bWVudHMgdG8gdXBkYXRlX2lub2RlJ3MgY2FsbGJhY2sK KyAqLworc3RydWN0IHVwZGF0ZWlfYXJncyB7CisJc3RydWN0IGV4b2ZzX3NiX2luZm8JKnNi aTsKKwlzdHJ1Y3QgZXhvZnNfZmNiCWZjYjsKK307CisKKy8qCiAgKiBDYWxsYmFjayBmdW5j dGlvbiBmcm9tIGV4b2ZzX3VwZGF0ZV9pbm9kZSgpLgogICovCiBzdGF0aWMgdm9pZCB1cGRh dGVpX2RvbmUoc3RydWN0IG9zZF9yZXF1ZXN0ICpvciwgdm9pZCAqcCkKQEAgLTEyMTgsMTYg KzEyMjcsNiBAQCBpbnQgZXhvZnNfd3JpdGVfaW5vZGUoc3RydWN0IGlub2RlICppbm9kZSwg aW50IHdhaXQpCiAJcmV0dXJuIGV4b2ZzX3VwZGF0ZV9pbm9kZShpbm9kZSwgd2FpdCk7CiB9 CiAKLWludCBleG9mc19zeW5jX2lub2RlKHN0cnVjdCBpbm9kZSAqaW5vZGUpCi17Ci0Jc3Ry dWN0IHdyaXRlYmFja19jb250cm9sIHdiYyA9IHsKLQkJLnN5bmNfbW9kZSA9IFdCX1NZTkNf QUxMLAotCQkubnJfdG9fd3JpdGUgPSAwLAkvKiBzeXNfZnN5bmMgZGlkIHRoaXMgKi8KLQl9 OwotCi0JcmV0dXJuIHN5bmNfaW5vZGUoaW5vZGUsICZ3YmMpOwotfQotCiAvKgogICogQ2Fs bGJhY2sgZnVuY3Rpb24gZnJvbSBleG9mc19kZWxldGVfaW5vZGUoKSAtIGRvbid0IGhhdmUg bXVjaCBjbGVhbmluZyB1cCB0bwogICogZG8uCmRpZmYgLS1naXQgYS9mcy9leG9mcy9zdXBl ci5jIGIvZnMvZXhvZnMvc3VwZXIuYwppbmRleCA5MTUzZGIyLi45ODk5NTJiIDEwMDY0NAot LS0gYS9mcy9leG9mcy9zdXBlci5jCisrKyBiL2ZzL2V4b2ZzL3N1cGVyLmMKQEAgLTQ1LDYg KzQ1LDE1IEBACiAgKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiovCiAKIC8qCisgKiBzdHJ1Y3Qg dG8gaG9sZCB3aGF0IHdlIGdldCBmcm9tIG1vdW50IG9wdGlvbnMKKyAqLworc3RydWN0IGV4 b2ZzX21vdW50b3B0IHsKKwljb25zdCBjaGFyICpkZXZfbmFtZTsKKwl1aW50NjRfdCBwaWQ7 CisJaW50IHRpbWVvdXQ7Cit9OworCisvKgogICogZXhvZnMtc3BlY2lmaWMgbW91bnQtdGlt ZSBvcHRpb25zLgogICovCiBlbnVtIHsgT3B0X3BpZCwgT3B0X3RvLCBPcHRfbWtmcywgT3B0 X2Zvcm1hdCwgT3B0X2VyciB9Owo= --------------070602070604040801080005-- -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/