From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bruno =?UTF-8?B?UHLDqW1vbnQ=?= Subject: [PATCH] viafb: fix releasing of /proc/viafb/ subtree Date: Sun, 16 Nov 2008 11:42:12 +0100 Message-ID: <20081116114212.26370ef8@neptune.home> Mime-Version: 1.0 Content-Transfer-Encoding: base64 Return-path: Received: from sfi-mx-4.v28.ch3.sourceforge.com ([172.29.28.124] helo=mx.sourceforge.net) by 335xhf1.ch3.sourceforge.com with esmtp (Exim 4.69) (envelope-from ) id 1L1f5B-0007XQ-T2 for linux-fbdev-devel@lists.sourceforge.net; Sun, 16 Nov 2008 10:42:21 +0000 Received: from ppp-111-253.adsl.restena.lu ([158.64.111.253] helo=bonbons.gotdns.org) by 1b2kzd1.ch3.sourceforge.com with esmtp (Exim 4.69) id 1L1f57-0001eP-3y for linux-fbdev-devel@lists.sourceforge.net; Sun, 16 Nov 2008 10:42:21 +0000 List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: linux-fbdev-devel-bounces@lists.sourceforge.net Content-Type: text/plain; charset="iso-8859-1" To: JosephChan@via.com.tw, Andrew Morton Cc: linux-fbdev-devel@lists.sourceforge.net, linux-kernel@vger.kernel.org V2hlbiB1bmxvYWRpbmcgdmlhZmIgbW9kdWxlIGl0IGRvZXMgbm90IHJlbW92ZSBpdCdzIC9wcm9j L3ZpYWZiLwpzdWJ0cmVlIHdoaWNoIGNhdXNlcyBtdWx0aXBsZSB2aWFmYiBkaXJlY3RvcmllcyB0 byBhcHBlYXIgYmVsb3cKcHJvYyB3aGVuIG1vYnByb2JpbmcgdmlhZmIgYW5kIGFsc28gbGV0cyBr ZXJuZWwgV0FSTigpIG9uIGR1cGxpY2F0ZQpwcm9jIGVudHJpZXM6CgpbICAxNDUuNDU4Mzg3XSBX QVJOSU5HOiBhdCAvdXNyL3NyYy9saW51eC0yLjYuMjgtcmMzLWdpdDYvZnMvcHJvYy9nZW5lcmlj LmM6NTUxIHByb2NfcmVnaXN0ZXIrMHhlNi8weDE2MCgpClsgIDE0NS40NTg5NDVdIHByb2NfZGly X2VudHJ5ICcvcHJvYy92aWFmYicgYWxyZWFkeSByZWdpc3RlcmVkClsgIDE0NS40NTkyNzhdIE1v ZHVsZXMgbGlua2VkIGluOiB2aWFmYigrKSBpMmNfYWxnb19iaXQgY2ZiY29weWFyZWEgY2ZiaW1n Ymx0IGNmYmZpbGxyZWN0IHNuZF9oZGFfaW50ZWwgc25kX3BjbSBzbmRfdGltZXIgc25kIHNvdW5k Y29yZSBzbmRfcGFnZV9hbGxvYyBzZyB2aWFfYWdwIGFncGdhcnQgW2xhc3QgdW5sb2FkZWQ6IGRy bV0KWyAgMTQ1LjQ2MDY0N10gUGlkOiAxOTA0LCBjb21tOiBtb2Rwcm9iZSBUYWludGVkOiBHICAg ICAgICBXICAyLjYuMjgtcmMzLWdpdDYgIzQKWyAgMTQ1LjQ2MTA2NF0gQ2FsbCBUcmFjZToKWyAg MTQ1LjQ2MTI0OF0gIFs8YzAxMDY2ZjE+XSA/IGR1bXBfc3RhY2srMHgxLzB4ODAKWyAgMTQ1LjQ2 MTUzM10gIFs8YzAxMjI4YTM+XSB3YXJuX3Nsb3dwYXRoKzB4NjMvMHg4MApbICAxNDUuNDYxODUx XSAgWzxjMDI1M2VjOT5dID8gaWRyX2dldF9lbXB0eV9zbG90KzB4ZTkvMHgyNTAKWyAgMTQ1LjQ2 MjE4Nl0gIFs8YzAyNTQxMjA+XSA/IGlkYV9nZXRfbmV3X2Fib3ZlKzB4ZjAvMHgxNTAKWyAgMTQ1 LjQ2MjUyOF0gIFs8YzAxOWZiODY+XSBwcm9jX3JlZ2lzdGVyKzB4ZTYvMHgxNjAKWyAgMTQ1LjQ2 MjgyN10gIFs8YzAxOWZkYzY+XSBwcm9jX21rZGlyX21vZGUrMHgzNi8weDUwClsgIDE0NS40NjMx MzVdICBbPGMwMTlmZGVmPl0gcHJvY19ta2RpcisweGYvMHgyMApbICAxNDUuNDYzNDU3XSAgWzxm ODA3MTczYz5dIHZpYWZiX2luaXQrMHg3M2MvMHhjODYgW3ZpYWZiXQpbICAxNDUuNDYzODIzXSAg WzxmODA3MTAwMD5dID8gdmlhZmJfaW5pdCsweDAvMHhjODYgW3ZpYWZiXQpbICAxNDUuNDY0MTQ3 XSAgWzxjMDEwMTExZD5dIGRvX29uZV9pbml0Y2FsbCsweDJkLzB4MTYwClsgIDE0NS40NjQ0NjBd ICBbPGMwMWE2NTQzPl0gPyBzeXNmc19hZGRfZmlsZSsweDEzLzB4MjAKWyAgMTQ1LjQ2NDc4Nl0g IFs8YzAxNWYwMzE+XSA/IHZmcmVlKzB4MjEvMHgzMApbICAxNDUuNDY1MDQ5XSAgWzxjMDE0MzNi NT5dID8gbG9hZF9tb2R1bGUrMHgxMjE1LzB4MTUwMApbICAxNDUuNDY1MzgxXSAgWzxjMDE0ZTQ1 NT5dID8gX19hbGxvY19wYWdlc19pbnRlcm5hbCsweDk1LzB4NDAwClsgIDE0NS40NjU3NTVdICBb PGMwMTQzNzIzPl0gc3lzX2luaXRfbW9kdWxlKzB4ODMvMHgxYTAKWyAgMTQ1LjQ2NjA2NV0gIFs8 YzAxNmNlZWQ+XSA/IHN5c19yZWFkKzB4M2QvMHg3MApbICAxNDUuNDY2MzU0XSAgWzxjMDEwM2Jj MT5dIHN5c2VudGVyX2RvX2NhbGwrMHgxMi8weDI1ClsgIDE0NS40NjY2NTNdIC0tLVsgZW5kIHRy YWNlIGM4NGIzNzgyNmUxNjc0OGMgXS0tLQoKU2lnbmVkLW9mZi1ieTogQnJ1bm8gUHLDqW1vbnQg PGJvbmJvbnNAbGludXgtdnNlcnZlci5vcmc+Ci0tLQotLS0gbGludXgtMi42LjI4LXJjMy1naXQ2 Lm9yaWcvZHJpdmVycy92aWRlby92aWEvdmlhZmJkZXYuYwkyMDA4LTExLTA5IDE5OjM2OjQ3LjAw MDAwMDAwMCArMDEwMAorKysgbGludXgtMi42LjI4LXJjMy1naXQ2L2RyaXZlcnMvdmlkZW8vdmlh L3ZpYWZiZGV2LmMJMjAwOC0xMS0xNiAwMDoyMDoxMC4wMDAwMDAwMDAgKzAxMDAKQEAgLTIwMzYs MzAgKzIwMzYsMzAgQEAgc3RhdGljIGludCB2aWFmYl92dDE2MzZfcHJvY193cml0ZShzdHJ1Ywog CXJldHVybiBjb3VudDsKIH0KIAotc3RhdGljIHZvaWQgdmlhZmJfaW5pdF9wcm9jKHN0cnVjdCBw cm9jX2Rpcl9lbnRyeSAqdmlhZmJfZW50cnkpCitzdGF0aWMgdm9pZCB2aWFmYl9pbml0X3Byb2Mo c3RydWN0IHByb2NfZGlyX2VudHJ5ICoqdmlhZmJfZW50cnkpCiB7CiAJc3RydWN0IHByb2NfZGly X2VudHJ5ICplbnRyeTsKLQl2aWFmYl9lbnRyeSA9IHByb2NfbWtkaXIoInZpYWZiIiwgTlVMTCk7 CisJKnZpYWZiX2VudHJ5ID0gcHJvY19ta2RpcigidmlhZmIiLCBOVUxMKTsKIAlpZiAodmlhZmJf ZW50cnkpIHsKLQkJZW50cnkgPSBjcmVhdGVfcHJvY19lbnRyeSgiZHZwMCIsIDAsIHZpYWZiX2Vu dHJ5KTsKKwkJZW50cnkgPSBjcmVhdGVfcHJvY19lbnRyeSgiZHZwMCIsIDAsICp2aWFmYl9lbnRy eSk7CiAJCWlmIChlbnRyeSkgewogCQkJZW50cnktPm93bmVyID0gVEhJU19NT0RVTEU7CiAJCQll bnRyeS0+cmVhZF9wcm9jID0gdmlhZmJfZHZwMF9wcm9jX3JlYWQ7CiAJCQllbnRyeS0+d3JpdGVf cHJvYyA9IHZpYWZiX2R2cDBfcHJvY193cml0ZTsKIAkJfQotCQllbnRyeSA9IGNyZWF0ZV9wcm9j X2VudHJ5KCJkdnAxIiwgMCwgdmlhZmJfZW50cnkpOworCQllbnRyeSA9IGNyZWF0ZV9wcm9jX2Vu dHJ5KCJkdnAxIiwgMCwgKnZpYWZiX2VudHJ5KTsKIAkJaWYgKGVudHJ5KSB7CiAJCQllbnRyeS0+ b3duZXIgPSBUSElTX01PRFVMRTsKIAkJCWVudHJ5LT5yZWFkX3Byb2MgPSB2aWFmYl9kdnAxX3By b2NfcmVhZDsKIAkJCWVudHJ5LT53cml0ZV9wcm9jID0gdmlhZmJfZHZwMV9wcm9jX3dyaXRlOwog CQl9Ci0JCWVudHJ5ID0gY3JlYXRlX3Byb2NfZW50cnkoImRmcGgiLCAwLCB2aWFmYl9lbnRyeSk7 CisJCWVudHJ5ID0gY3JlYXRlX3Byb2NfZW50cnkoImRmcGgiLCAwLCAqdmlhZmJfZW50cnkpOwog CQlpZiAoZW50cnkpIHsKIAkJCWVudHJ5LT5vd25lciA9IFRISVNfTU9EVUxFOwogCQkJZW50cnkt PnJlYWRfcHJvYyA9IHZpYWZiX2RmcGhfcHJvY19yZWFkOwogCQkJZW50cnktPndyaXRlX3Byb2Mg PSB2aWFmYl9kZnBoX3Byb2Nfd3JpdGU7CiAJCX0KLQkJZW50cnkgPSBjcmVhdGVfcHJvY19lbnRy eSgiZGZwbCIsIDAsIHZpYWZiX2VudHJ5KTsKKwkJZW50cnkgPSBjcmVhdGVfcHJvY19lbnRyeSgi ZGZwbCIsIDAsICp2aWFmYl9lbnRyeSk7CiAJCWlmIChlbnRyeSkgewogCQkJZW50cnktPm93bmVy ID0gVEhJU19NT0RVTEU7CiAJCQllbnRyeS0+cmVhZF9wcm9jID0gdmlhZmJfZGZwbF9wcm9jX3Jl YWQ7CkBAIC0yMDY4LDcgKzIwNjgsNyBAQCBzdGF0aWMgdm9pZCB2aWFmYl9pbml0X3Byb2Moc3Ry dWN0IHByb2NfCiAJCWlmIChWVDE2MzZfTFZEUyA9PSB2aWFwYXJpbmZvLT5jaGlwX2luZm8tPmx2 ZHNfY2hpcF9pbmZvLgogCQkJbHZkc19jaGlwX25hbWUgfHwgVlQxNjM2X0xWRFMgPT0KIAkJICAg IHZpYXBhcmluZm8tPmNoaXBfaW5mby0+bHZkc19jaGlwX2luZm8yLmx2ZHNfY2hpcF9uYW1lKSB7 Ci0JCQllbnRyeSA9IGNyZWF0ZV9wcm9jX2VudHJ5KCJ2dDE2MzYiLCAwLCB2aWFmYl9lbnRyeSk7 CisJCQllbnRyeSA9IGNyZWF0ZV9wcm9jX2VudHJ5KCJ2dDE2MzYiLCAwLCAqdmlhZmJfZW50cnkp OwogCQkJaWYgKGVudHJ5KSB7CiAJCQkJZW50cnktPm93bmVyID0gVEhJU19NT0RVTEU7CiAJCQkJ ZW50cnktPnJlYWRfcHJvYyA9IHZpYWZiX3Z0MTYzNl9wcm9jX3JlYWQ7CkBAIC0yMDg3LDYgKzIw ODcsNyBAQCBzdGF0aWMgdm9pZCB2aWFmYl9yZW1vdmVfcHJvYyhzdHJ1Y3QgcHJvCiAJcmVtb3Zl X3Byb2NfZW50cnkoImRmcGwiLCB2aWFmYl9lbnRyeSk7CiAJcmVtb3ZlX3Byb2NfZW50cnkoInZ0 MTYzNiIsIHZpYWZiX2VudHJ5KTsKIAlyZW1vdmVfcHJvY19lbnRyeSgidnQxNjI1IiwgdmlhZmJf ZW50cnkpOworCXJlbW92ZV9wcm9jX2VudHJ5KCJ2aWFmYiIsIE5VTEwpOwogfQogCiBzdGF0aWMg aW50IF9fZGV2aW5pdCB2aWFfcGNpX3Byb2JlKHZvaWQpCkBAIC0yMzQ4LDcgKzIzNDksNyBAQCBz dGF0aWMgaW50IF9fZGV2aW5pdCB2aWFfcGNpX3Byb2JlKHZvaWQpCiAJCSAgdmlhZmJpbmZvLT5u b2RlLCB2aWFmYmluZm8tPmZpeC5pZCwgZGVmYXVsdF92YXIueHJlcywKIAkJICBkZWZhdWx0X3Zh ci55cmVzLCBkZWZhdWx0X3Zhci5iaXRzX3Blcl9waXhlbCk7CiAKLQl2aWFmYl9pbml0X3Byb2Mo dmlhcGFyaW5mby0+cHJvY19lbnRyeSk7CisJdmlhZmJfaW5pdF9wcm9jKCZ2aWFwYXJpbmZvLT5w cm9jX2VudHJ5KTsKIAl2aWFmYl9pbml0X2RhYyhJR0EyKTsKIAlyZXR1cm4gMDsKIH0KCi0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0KVGhpcyBTRi5OZXQgZW1haWwgaXMgc3BvbnNvcmVkIGJ5IHRoZSBNb2JsaW4g WW91ciBNb3ZlIERldmVsb3BlcidzIGNoYWxsZW5nZQpCdWlsZCB0aGUgY29vbGVzdCBMaW51eCBi YXNlZCBhcHBsaWNhdGlvbnMgd2l0aCBNb2JsaW4gU0RLICYgd2luIGdyZWF0IHByaXplcwpHcmFu ZCBwcml6ZSBpcyBhIHRyaXAgZm9yIHR3byB0byBhbiBPcGVuIFNvdXJjZSBldmVudCBhbnl3aGVy ZSBpbiB0aGUgd29ybGQKaHR0cDovL21vYmxpbi1jb250ZXN0Lm9yZy9yZWRpcmVjdC5waHA/YmFu bmVyX2lkPTEwMCZ1cmw9LwpfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXwpMaW51eC1mYmRldi1kZXZlbCBtYWlsaW5nIGxpc3QKTGludXgtZmJkZXYtZGV2ZWxA bGlzdHMuc291cmNlZm9yZ2UubmV0Cmh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3Rz L2xpc3RpbmZvL2xpbnV4LWZiZGV2LWRldmVsCg==