Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id ; Mon, 26 Feb 2001 10:30:49 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id ; Mon, 26 Feb 2001 10:30:40 -0500 Received: from d12lmsgate.de.ibm.com ([195.212.91.199]:18344 "EHLO d12lmsgate.de.ibm.com") by vger.kernel.org with ESMTP id ; Mon, 26 Feb 2001 10:30:31 -0500 From: Holger.Smolinski@de.ibm.com X-Lotus-FromDomain: IBMDE To: Andries.Brouwer@cwi.nl cc: Andries.Brouwer@cwi.nl, dwguest@win.tue.nl, linux-kernel@vger.kernel.org, torvalds@transmeta.com Message-ID: Date: Mon, 26 Feb 2001 16:11:55 +0100 Subject: Re: [PATCH] partitions/ibm.c Mime-Version: 1.0 Content-type: multipart/mixed; Boundary="0__=5On8QuAvvIHO8yrZ9AAGzg2w3JGgumY0x5X3DtZNaohREip8IDsqcxvM" Content-Disposition: inline Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org --0__=5On8QuAvvIHO8yrZ9AAGzg2w3JGgumY0x5X3DtZNaohREip8IDsqcxvM Content-type: text/plain; charset=us-ascii Content-Disposition: inline Andries, okay, your arguments appear correct to me. Additionally there has some other work to be done... I include the patch to be applied from my point of view: (See attached file: ibmpart.diff) It includes the adaptions to the dasd_*.c files in drivers/s390/block and also should fix the fill_geometry functions to make HDIO_GETGEO work like others. Gruesse / Regards Dr. Holger Smolinski Linux for S/390 Design & Development, IBM Deutschland Entwicklung GmbH, Schoenaicher Str. 220, D-71032 Boeblingen Phone/FAX: +49 7031 16 (x902) - 4652/3456 --0__=5On8QuAvvIHO8yrZ9AAGzg2w3JGgumY0x5X3DtZNaohREip8IDsqcxvM Content-type: application/octet-stream; name="ibmpart.diff" Content-Disposition: attachment; filename="ibmpart.diff" Content-transfer-encoding: base64 SW5kZXg6IGRyaXZlcnMvczM5MC9ibG9jay9kYXNkLmMNCj09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAv aG9tZS9jdnMvbGludXgtMi4zL2RyaXZlcnMvczM5MC9ibG9jay9kYXNkLmMsdg0KcmV0cmlldmlu ZyByZXZpc2lvbiAxLjkyDQpkaWZmIC11IC1yMS45MiBkYXNkLmMNCi0tLSBkcml2ZXJzL3MzOTAv YmxvY2svZGFzZC5jCTIwMDEvMDIvMjIgMTY6MDI6NDQJMS45Mg0KKysrIGRyaXZlcnMvczM5MC9i bG9jay9kYXNkLmMJMjAwMS8wMi8yNiAxNDo1NTowMw0KQEAgLTE5NzksMTAgKzE5NzksMTEgQEAN CiAJCQlicmVhazsNCiAJCX0NCiAJY2FzZSBIRElPX0dFVEdFTzp7DQotCQkJc3RydWN0IGhkX2dl b21ldHJ5IGdlbyA9DQotCQkJezAsfTsNCisJCQlzdHJ1Y3QgaGRfZ2VvbWV0cnkgZ2VvID0gezAs fTsNCiAJCQlpZiAoZGV2aWNlLT5kaXNjaXBsaW5lLT5maWxsX2dlb21ldHJ5KQ0KIAkJCQlkZXZp Y2UtPmRpc2NpcGxpbmUtPmZpbGxfZ2VvbWV0cnkgKGRldmljZSwgJmdlbyk7DQorICAgICAgICAg ICAgICAgICAgICAgICAgZ2VvLnN0YXJ0ID0gZGV2aWNlLT5tYWpvcl9pbmZvLT4NCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGdlbmRpc2sucGFydFtNSU5PUihpbnAtPmlfcmRldild LnN0YXJ0X3NlY3Q7DQogCQkJcmMgPSBjb3B5X3RvX3VzZXIgKChzdHJ1Y3QgaGRfZ2VvbWV0cnkg KikgZGF0YSwgJmdlbywNCiAJCQkJCSAgIHNpemVvZiAoc3RydWN0IGhkX2dlb21ldHJ5KSk7DQog CQkJaWYgKHJjKQ0KQEAgLTI1NDMsNiArMjU0NCw3IEBADQogCQkJZGQgPSAmbWFqb3JfaW5mby0+ Z2VuZGlzazsNCiAJCQlkZC0+c2l6ZXNbbWlub3JdID0gKGRldmljZS0+c2l6ZXMuYmxvY2tzIDw8 DQogCQkJCQkgICAgZGV2aWNlLT5zaXplcy5zMmJfc2hpZnQpID4+IDE7DQorICAgICAgICAgICAg ICAgICAgICAgICBkZC0+cGFydFttaW5vcl0uc3RhcnRfc2VjdCA9IGRldmljZS0+c2l6ZXMucHRf YmxvY2s7DQogCQkJew0KIAkJCQljaGFyIGJ1ZmZlcls1XTsNCiAJCQkJc3ByaW50ZihidWZmZXIs IiUwNFgiLGRldmljZS0+ZGV2aW5mby5kZXZubyk7DQpJbmRleDogZHJpdmVycy9zMzkwL2Jsb2Nr L2Rhc2RfZGlhZy5jDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvY3ZzL2xpbnV4LTIuMy9k cml2ZXJzL3MzOTAvYmxvY2svZGFzZF9kaWFnLmMsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjkN CmRpZmYgLXUgLXIxLjkgZGFzZF9kaWFnLmMNCi0tLSBkcml2ZXJzL3MzOTAvYmxvY2svZGFzZF9k aWFnLmMJMjAwMS8wMi8yMCAxOToyNDo0NAkxLjkNCisrKyBkcml2ZXJzL3MzOTAvYmxvY2svZGFz ZF9kaWFnLmMJMjAwMS8wMi8yNiAxNDo1NTowMw0KQEAgLTM1NSwxOSArMzYwLDI2IEBADQogc3Rh dGljIGludA0KIGRhc2RfZGlhZ19kb19hbmFseXNpcyAoc3RydWN0IGRhc2RfZGV2aWNlX3QgKmRl dmljZSkNCiB7DQotCWludCBzYjsNCiAJZGFzZF9kaWFnX3ByaXZhdGVfdCAqcHJpdmF0ZSA9IChk YXNkX2RpYWdfcHJpdmF0ZV90ICopIGRldmljZS0+cHJpdmF0ZTsNCiANCiAJbG9uZyAqbGFiZWwg PSBwcml2YXRlLT5sYWJlbDsNCiANCiAJLyogcmVhbCBzaXplIG9mIHRoZSB2b2x1bWUgKi8NCiAJ ZGV2aWNlLT5zaXplcy5ibG9ja3MgPSBsYWJlbFs3XTsNCisgICAgICAgIGlmIChwcml2YXRlLT5y ZGNfZGF0YS52ZGV2X2NsYXNzID09IERFVl9DTEFTU19GQkEpIHsNCisJCWRldmljZS0+c2l6ZXMu cHRfYmxvY2sgPSAxOw0KKwl9IGVsc2UgaWYgKHByaXZhdGUtPnJkY19kYXRhLnZkZXZfY2xhc3Mg PT0gREVWX0NMQVNTX0VDS0QgfHwNCisJCSAgIHByaXZhdGUtPnJkY19kYXRhLnZkZXZfY2xhc3Mg PT0gREVWX0NMQVNTX0NLRCkgew0KKwkJZGV2aWNlLT5zaXplcy5wdF9ibG9jayA9IDI7DQorCX0g ZWxzZSB7DQorCQlyZXR1cm4gLUVJTlZBTDsNCisgICAgICAgIH0NCiAJcHJpbnRrIChLRVJOX0lO Rk8gUFJJTlRLX0hFQURFUg0KIAkJIi9kZXYvJXMgKCUwNFgpOiBjYXBhY2l0eSAoJWRrQiBibGtz KTogJWxka0JcbiIsDQogCQlkZXZpY2UtPm5hbWUsIGRldmljZS0+ZGV2aW5mby5kZXZubywNCiAJ CShkZXZpY2UtPnNpemVzLmJwX2Jsb2NrID4+IDEwKSwNCiAJCShkZXZpY2UtPnNpemVzLmJsb2Nr cyA8PCBkZXZpY2UtPnNpemVzLnMyYl9zaGlmdCkgPj4gMSk7DQotICAgICAgICBmcmVlX3BhZ2Uo cHJpdmF0ZS0+bGFiZWwpOw0KKyAgICAgICAgZnJlZV9wYWdlKChsb25nKXByaXZhdGUtPmxhYmVs KTsNCiAJcmV0dXJuIDA7DQogfQ0KIA0KQEAgLTM5NCwxNCArNDA2LDYgQEANCiAJZ2VvLT5jeWxp bmRlcnMgPSBjeWxzOw0KIAlnZW8tPmhlYWRzID0gMTY7DQogCWdlby0+c2VjdG9ycyA9IDEyOCA+ PiBkZXZpY2UtPnNpemVzLnMyYl9zaGlmdDsNCi0JaWYgKHByaXZhdGUtPnJkY19kYXRhLnZkZXZf Y2xhc3MgPT0gREVWX0NMQVNTX0ZCQSkgew0KLQkJZ2VvLT5zdGFydCA9IDE7DQotCX0gZWxzZSBp ZiAocHJpdmF0ZS0+cmRjX2RhdGEudmRldl9jbGFzcyA9PSBERVZfQ0xBU1NfRUNLRCB8fA0KLQkJ ICAgcHJpdmF0ZS0+cmRjX2RhdGEudmRldl9jbGFzcyA9PSBERVZfQ0xBU1NfQ0tEKSB7DQotCQln ZW8tPnN0YXJ0ID0gMjsNCi0JfSBlbHNlIHsNCi0JCXJldHVybiAtRUlOVkFMOw0KLQl9DQogCXJl dHVybiByYzsNCiB9DQogDQpJbmRleDogZHJpdmVycy9zMzkwL2Jsb2NrL2Rhc2RfZWNrZC5jDQo9 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvY3ZzL2xpbnV4LTIuMy9kcml2ZXJzL3MzOTAvYmxv Y2svZGFzZF9lY2tkLmMsdg0KcmV0cmlldmluZyByZXZpc2lvbiAxLjQyDQpkaWZmIC11IC1yMS40 MiBkYXNkX2Vja2QuYw0KLS0tIGRyaXZlcnMvczM5MC9ibG9jay9kYXNkX2Vja2QuYwkyMDAxLzAy LzIwIDE5OjI0OjQ0CTEuNDINCisrKyBkcml2ZXJzL3MzOTAvYmxvY2svZGFzZF9lY2tkLmMJMjAw MS8wMi8yNiAxNDo1NTowMw0KQEAgLTUxNyw2ICs1MTcsNyBAQA0KIAkJcmV0dXJuIC1FTUVESVVN VFlQRTsNCiAJfQ0KIAlkZXZpY2UtPnNpemVzLnMyYl9zaGlmdCA9IDA7CS8qIGJpdHMgdG8gc2hp ZnQgNTEyIHRvIGdldCBhIGJsb2NrICovDQorICAgICAgICBkZXZpY2UtPnNpemVzLnB0X2Jsb2Nr ID0gMjsNCiAJZm9yIChzYiA9IDUxMjsgc2IgPCBiczsgc2IgPSBzYiA8PCAxKQ0KIAkJZGV2aWNl LT5zaXplcy5zMmJfc2hpZnQrKzsNCiANCkBAIC01NTQsNyArNTU1LDYgQEANCiAJZ2VvLT5jeWxp bmRlcnMgPSBwcml2YXRlLT5yZGNfZGF0YS5ub19jeWw7DQogCWdlby0+aGVhZHMgPSBwcml2YXRl LT5yZGNfZGF0YS50cmtfcGVyX2N5bDsNCiAJZ2VvLT5zZWN0b3JzID0gcmVjc19wZXJfdHJhY2sg KCYocHJpdmF0ZS0+cmRjX2RhdGEpLCAwLCBkZXZpY2UtPnNpemVzLmJwX2Jsb2NrKTsNCi0JZ2Vv LT5zdGFydCA9IDI7DQogCXJldHVybiByYzsNCiB9DQogDQpJbmRleDogZHJpdmVycy9zMzkwL2Js b2NrL2Rhc2RfZmJhLmMNCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT0NClJDUyBmaWxlOiAvaG9tZS9jdnMvbGludXgtMi4z L2RyaXZlcnMvczM5MC9ibG9jay9kYXNkX2ZiYS5jLHYNCnJldHJpZXZpbmcgcmV2aXNpb24gMS4y Ng0KZGlmZiAtdSAtcjEuMjYgZGFzZF9mYmEuYw0KLS0tIGRyaXZlcnMvczM5MC9ibG9jay9kYXNk X2ZiYS5jCTIwMDEvMDIvMjAgMTk6MjQ6NDQJMS4yNg0KKysrIGRyaXZlcnMvczM5MC9ibG9jay9k YXNkX2ZiYS5jCTIwMDEvMDIvMjYgMTQ6NTU6MDMNCkBAIC0xODAsNiArMTgwLDcgQEANCiAJCWRl dmljZS0+c2l6ZXMuczJiX3NoaWZ0Kys7DQogDQogCWRldmljZS0+c2l6ZXMuYmxvY2tzID0gKHBy aXZhdGUtPnJkY19kYXRhLmJsa19iZHNhKTsNCisgICAgICAgIGRldmljZS0+c2l6ZXMucHRfYmxv Y2sgPSAxOw0KIA0KIAlyZXR1cm4gcmM7DQogfQ0KQEAgLTIwNCw3ICsyMDUsNiBAQA0KIAlnZW8t PmN5bGluZGVycyA9IGN5bHM7DQogCWdlby0+aGVhZHMgPSAxNjsNCiAJZ2VvLT5zZWN0b3JzID0g MTI4ID4+IGRldmljZS0+c2l6ZXMuczJiX3NoaWZ0Ow0KLQlnZW8tPnN0YXJ0ID0gMTsNCiAJcmV0 dXJuIHJjOw0KIH0NCiANCkluZGV4OiBmcy9wYXJ0aXRpb25zL2libS5jDQo9PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpS Q1MgZmlsZTogL2hvbWUvY3ZzL2xpbnV4LTIuMy9mcy9wYXJ0aXRpb25zL2libS5jLHYNCnJldHJp ZXZpbmcgcmV2aXNpb24gMS4xMw0KZGlmZiAtdSAtcjEuMTMgaWJtLmMNCi0tLSBmcy9wYXJ0aXRp b25zL2libS5jCTIwMDEvMDEvMzEgMTc6NTQ6NDIJMS4xMw0KKysrIGZzL3BhcnRpdGlvbnMvaWJt LmMJMjAwMS8wMi8yNiAxNDo1NTowNQ0KQEAgLTM1LDI4ICszNSwyOCBAQA0KIHR5cGVkZWYgZW51 bSB7DQogICBpYm1fcGFydGl0aW9uX25vbmUgPSAwLA0KICAgaWJtX3BhcnRpdGlvbl9sbngxID0g MSwNCi0gIGlibV9wYXJ0aXRpb25fdm9sMSA9IDMsDQotICBpYm1fcGFydGl0aW9uX2NtczEgPSA0 DQorICBpYm1fcGFydGl0aW9uX3ZvbDEgPSAyLA0KKyAgaWJtX3BhcnRpdGlvbl9jbXMxID0gMw0K IH0gaWJtX3BhcnRpdGlvbl90Ow0KIA0KK3N0YXRpYyBjaGFyKiBwYXJ0X25hbWVzW10gPSB7IFtp Ym1fcGFydGl0aW9uX25vbmVdID0gIihub25sKSIsDQorCQkJICAgICAgW2libV9wYXJ0aXRpb25f bG54MV0gPSAiTE5YMSIsDQorCQkJICAgICAgW2libV9wYXJ0aXRpb25fdm9sMV0gPSAiVk9MMSIs DQorCQkJICAgICAgW2libV9wYXJ0aXRpb25fY21zMV0gPSAiQ01TMSJ9Ow0KKw0KIHN0YXRpYyBp Ym1fcGFydGl0aW9uX3QNCiBnZXRfcGFydGl0aW9uX3R5cGUgKCBjaGFyICogdHlwZSApDQogew0K LSAgICAgICAgc3RhdGljIGNoYXIgbG54WzVdPSJMTlgxIjsNCi0gICAgICAgIHN0YXRpYyBjaGFy IHZvbFs1XT0iVk9MMSI7DQotICAgICAgICBzdGF0aWMgY2hhciBjbXNbNV09IkNNUzEiOw0KLSAg ICAgICAgaWYgKCAhIHN0cm5jbXAgKCBsbngsICJMTlgxIiw0ICkgKSB7DQotICAgICAgICAgICAg ICAgIEFTQ0VCQyhsbngsNCk7DQotICAgICAgICAgICAgICAgIEFTQ0VCQyh2b2wsNCk7DQotICAg ICAgICAgICAgICAgIEFTQ0VCQyhjbXMsNCk7DQotICAgICAgICB9DQotICAgICAgICBpZiAoICEg c3RybmNtcCAodHlwZSxsbngsNCkgfHwNCi0gICAgICAgICAgICAgISBzdHJuY21wICh0eXBlLCJM TlgxIiw0KSApDQotICAgICAgICAgICAgICAgIHJldHVybiBpYm1fcGFydGl0aW9uX2xueDE7DQot ICAgICAgICBpZiAoICEgc3RybmNtcCAodHlwZSx2b2wsNCkgKQ0KLSAgICAgICAgICAgICAgICBy ZXR1cm4gaWJtX3BhcnRpdGlvbl92b2wxOw0KLSAgICAgICAgaWYgKCAhIHN0cm5jbXAgKHR5cGUs Y21zLDQpICkNCi0gICAgICAgICAgICAgICAgcmV0dXJuIGlibV9wYXJ0aXRpb25fY21zMTsNCisJ aW50IGk7DQorCWNoYXIgdGVtcFs1XTsNCisJZm9yICggaSA9IDE7IGkgPCA0OyBpICsrKSB7DQor CQlzdHJuY3B5KHRlbXAscGFydF9uYW1lc1tpXSw1KTsNCisJCUFTQ0VCQyh0ZW1wLDUpOw0KKwkJ LyogYm90aCBBU0NJSSBhbmQgRUJDRElDIGFyZSBhbGxvd2VkICovDQorCQlpZiAoICEgc3RybmNt cCAodHlwZSx0ZW1wLDQpIHx8IA0KKwkJICAgICAhIHN0cm5jbXAgKHR5cGUscGFydF9uYW1lc1tp XSw0KSApIA0KKwkJCXJldHVybiBpOw0KKwl9DQogICAgICAgICByZXR1cm4gaWJtX3BhcnRpdGlv bl9ub25lOw0KIH0NCiANCkBAIC02NiwxMyArNjYsOSBAQA0KIHsNCiAJc3RydWN0IGJ1ZmZlcl9o ZWFkICpiaDsNCiAJaWJtX3BhcnRpdGlvbl90IHBhcnRpdGlvbl90eXBlOw0KLQljaGFyIHR5cGVb NV0gPSB7MCx9Ow0KLQljaGFyIG5hbWVbN10gPSB7MCx9Ow0KLQlzdHJ1Y3QgaGRfZ2VvbWV0cnkg Z2VvOw0KLQltbV9zZWdtZW50X3Qgb2xkX2ZzOw0KKwljaGFyIHR5cGVbNV0gPSAibm90eXAiOw0K KwljaGFyIG5hbWVbN10gPSAibm9sYmwiOw0KIAlpbnQgYmxvY2tzaXplOw0KLQlzdHJ1Y3QgZmls ZSAqZmlscCA9IE5VTEw7DQotCXN0cnVjdCBpbm9kZSAqaW5vZGUgPSBOVUxMOw0KIAlpbnQgb2Zm c2V0LCBzaXplOw0KIA0KIAlibG9ja3NpemUgPSBoYXJkc2VjdF9zaXplW01BSk9SKGRldildW01J Tk9SKGRldildOw0KQEAgLTgwLDM3ICs3Niw4IEBADQogCQlyZXR1cm4gMDsNCiAJfQ0KIAlzZXRf YmxvY2tzaXplKGRldiwgYmxvY2tzaXplKTsgIC8qIE9VQ0ggISEgKi8NCi0NCi0JLyogZmluZCBv dXQgb2Zmc2V0IG9mIHZvbHVtZSBsYWJlbCAocGFydG4gdGFibGUpICovDQotCWlub2RlID0gZ2V0 X2VtcHR5X2lub2RlKCk7DQotCWlub2RlIC0+IGlfcmRldiA9IGRldjsNCi0jaWYgKExJTlVYX1ZF UlNJT05fQ09ERSA+IEtFUk5FTF9WRVJTSU9OKDIsMyw5OCkpDQotCWlub2RlIC0+IGlfYmRldiA9 IGJkZ2V0KGtkZXZfdF90b19ucihkZXYpKTsNCi0jZW5kaWYgLyogS0VSTkVMX1ZFUlNJT04gKi8N Ci0JZmlscCA9IChzdHJ1Y3QgZmlsZSAqKWttYWxsb2MgKHNpemVvZihzdHJ1Y3QgZmlsZSksR0ZQ X0tFUk5FTCk7DQotCWlmICghZmlscCkNCi0JCXJldHVybiAwOw0KLQltZW1zZXQoZmlscCwwLHNp emVvZihzdHJ1Y3QgZmlsZSkpOw0KLQlmaWxwIC0+Zl9tb2RlID0gMTsgLyogcmVhZCBvbmx5ICov DQotCWJsa2Rldl9vcGVuKGlub2RlLGZpbHApOw0KLQlvbGRfZnM9Z2V0X2ZzKCk7DQotCXNldF9m cyhLRVJORUxfRFMpOw0KLSNpZiAoTElOVVhfVkVSU0lPTl9DT0RFID4gS0VSTkVMX1ZFUlNJT04o MiwzLDk4KSkNCi0JaW5vZGUtPiBpX2JkZXYgLT4gYmRfb3AtPmlvY3RsIChpbm9kZSwgZmlscCwg SERJT19HRVRHRU8sICh1bnNpZ25lZCBsb25nKSgmZ2VvKSk7DQotI2Vsc2UNCi0JZmlscC0+Zl9v cC0+aW9jdGwgKGlub2RlLCBmaWxwLCBIRElPX0dFVEdFTywgKHVuc2lnbmVkIGxvbmcpKCZnZW8p KTsNCi0jZW5kaWYgLyogS0VSTkVMX1ZFUlNJT04gKi8NCi0Jc2V0X2ZzKG9sZF9mcyk7DQotI2lm IChMSU5VWF9WRVJTSU9OX0NPREUgPj0gS0VSTkVMX1ZFUlNJT04oMiw0LDApKQ0KLSAgICAgICAg YmxrZGV2X3B1dChpbm9kZS0+aV9iZGV2LEJERVZfRklMRSk7DQotI2VsaWYgKExJTlVYX1ZFUlNJ T05fQ09ERSA+IEtFUk5FTF9WRVJTSU9OKDIsMyw5OCkpDQotCWJsa2Rldl9jbG9zZShpbm9kZSxm aWxwKTsNCi0jZWxzZQ0KLQlibGtkZXZfcmVsZWFzZShpbm9kZSk7DQotI2VuZGlmIC8qIExJTlVY X1ZFUlNJT05fQ09ERSAqLw0KIA0KLQlzaXplID0gaGQgLT4gc2l6ZXNbTUlOT1IoZGV2KV08PDE7 DQotCWlmICggKCBiaCA9IGJyZWFkKCBkZXYsIGdlby5zdGFydCwgYmxvY2tzaXplKSApICE9IE5V TEwgKSB7DQorCWlmICggKCBiaCA9IGJyZWFkKCBkZXYsIGZpcnN0X3NlY3RvciwgYmxvY2tzaXpl KSApICE9IE5VTEwgKSB7DQogCQlzdHJuY3B5ICggdHlwZSxiaCAtPiBiX2RhdGEsIDQpOw0KIAkJ c3RybmNweSAoIG5hbWUsYmggLT4gYl9kYXRhICsgNCwgNik7DQogICAgICAgICB9IGVsc2Ugew0K QEAgLTEyMCw0MiArODcsMjggQEANCiAJCUVCQ0FTQyhuYW1lLDYpOw0KIAl9DQogCXN3aXRjaCAo IHBhcnRpdGlvbl90eXBlID0gZ2V0X3BhcnRpdGlvbl90eXBlKHR5cGUpICkgew0KLQljYXNlIGli bV9wYXJ0aXRpb25fbG54MTogDQotCQlvZmZzZXQgPSAoZ2VvLnN0YXJ0ICsgMSk7DQotCQlwcmlu dGsgKCAiKExOWDEpLyU2czoiLG5hbWUpOw0KLQkJYnJlYWs7DQotCWNhc2UgaWJtX3BhcnRpdGlv bl92b2wxOg0KLQkJb2Zmc2V0ID0gMDsNCi0JCXNpemUgPSAwOw0KLQkJcHJpbnRrICggIihWT0wx KS8lNnM6IixuYW1lKTsNCi0JCWJyZWFrOw0KIAljYXNlIGlibV9wYXJ0aXRpb25fY21zMToNCi0J CXByaW50ayAoICIoQ01TMSkvJTZzOiIsbmFtZSk7DQotCQlpZiAoKiAoKChsb25nICopYmgtPmJf ZGF0YSkgKyAxMykgPT0gMCkgew0KLQkJCS8qIGRpc2sgaG9sZHMgYSBDTVMgZmlsZXN5c3RlbSAq Lw0KLQkJCW9mZnNldCA9IChnZW8uc3RhcnQgKyAxKTsNCi0JCQlwcmludGsgKCIoQ01TKSIpOw0K LQkJfSBlbHNlIHsNCisJCWlmICgqICgoKGxvbmcgKiliaC0+Yl9kYXRhKSArIDEzKSAhPSAwKSB7 DQogCQkJLyogZGlzayBpcyByZXNlcnZlZCBtaW5pZGlzayAqLw0KLQkJCS8vIG1kaXNrX3NldHVw X2RhdGEuc2l6ZVtpXSA9DQotCQkJLy8gKGxhYmVsWzddIC0gMSAtIGxhYmVsWzEzXSkgKg0KLQkJ CS8vIChsYWJlbFszXSA+PiA5KSA+PiAxOw0KIAkJCWxvbmcgKmxhYmVsPShsb25nKiliaC0+Yl9k YXRhOw0KIAkJCWJsb2Nrc2l6ZSA9IGxhYmVsWzNdOw0KIAkJCW9mZnNldCA9IGxhYmVsWzEzXTsN CiAJCQlzaXplID0gKGxhYmVsWzddLTEpKihibG9ja3NpemU+PjkpOyANCiAJCQlwcmludGsgKCIo TURTSykiKTsNCi0JCX0NCi0JCWJyZWFrOw0KKwkJCWJyZWFrOw0KKwkJfSAvKiAhISEgZWxzZSBi cmFuY2ggaXMgZmFsbHRocm91Z2ggISEhICovDQorCWNhc2UgaWJtX3BhcnRpdGlvbl9sbngxOiAN CiAJY2FzZSBpYm1fcGFydGl0aW9uX25vbmU6DQotCQlwcmludGsgKCAiKG5vbmwpLyAgICAgIDoi KTsNCi0JCW9mZnNldCA9IChnZW8uc3RhcnQrMSk7DQorCQlvZmZzZXQgPSAoZmlyc3Rfc2VjdG9y ICsgMSk7DQorCQlzaXplID0gaGQgLT4gc2l6ZXNbTUlOT1IoZGV2KV08PDE7DQogCQlicmVhazsN CisJY2FzZSBpYm1fcGFydGl0aW9uX3ZvbDE6IC8qIGZhbGwgdGhyb3VnaCAhISEgKi8NCiAJZGVm YXVsdDoNCiAJCW9mZnNldCA9IDA7DQogCQlzaXplID0gMDsNCiAJCQ0KIAl9DQorCXByaW50ayAo ICIlNnMvJTZzOiIscGFydF9uYW1lc1twYXJ0aXRpb25fdHlwZV0sbmFtZSk7DQogI2lmIChMSU5V WF9WRVJTSU9OX0NPREUgPiBLRVJORUxfVkVSU0lPTigyLDMsOTgpKQ0KIAlhZGRfZ2RfcGFydGl0 aW9uKCBoZCwgTUlOT1IoZGV2KSwgMCxzaXplKTsNCiAJYWRkX2dkX3BhcnRpdGlvbiggaGQsIE1J Tk9SKGRldikgKyAxLCBvZmZzZXQgKiAoYmxvY2tzaXplID4+IDkpLA0KSW5kZXg6IGluY2x1ZGUv YXNtLXMzOTAvZGFzZC5oDQo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT09PT09DQpSQ1MgZmlsZTogL2hvbWUvY3ZzL2xpbnV4LTIu My9pbmNsdWRlL2FzbS1zMzkwL2Rhc2QuaCx2DQpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMTYNCmRp ZmYgLXUgLXIxLjE2IGRhc2QuaA0KLS0tIGluY2x1ZGUvYXNtLXMzOTAvZGFzZC5oCTIwMDEvMDIv MjAgMTk6MjQ6NDQJMS4xNg0KKysrIGluY2x1ZGUvYXNtLXMzOTAvZGFzZC5oCTIwMDEvMDIvMjYg MTQ6NTU6MDYNCkBAIC0xOTUsNiArMTk1LDcgQEANCiAJdW5zaWduZWQgbG9uZyBibG9ja3M7IC8q IHNpemUgb2Ygdm9sdW1lIGluIGJsb2NrcyAqLw0KIAl1bnNpZ25lZCBpbnQgYnBfYmxvY2s7IC8q IGJ5dGVzIHBlciBibG9jayAqLw0KIAl1bnNpZ25lZCBpbnQgczJiX3NoaWZ0OyAvKiBsb2cyIChi cF9ibG9jay81MTIpICovDQorICAgICAgICB1bnNpZ25lZCBpbnQgcHRfYmxvY2s7IC8qIGZyb20g d2hpY2ggYmxvY2sgdG8gcmVhZCB0aGUgcGFydG4gdGFibGUgKi8NCiB9IGRhc2Rfc2l6ZXNfdDsN CiANCiAvKiANCg== --0__=5On8QuAvvIHO8yrZ9AAGzg2w3JGgumY0x5X3DtZNaohREip8IDsqcxvM-- - 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/