[PATCH] /proc/sysvipc

Dragos Acostachioaie (dragos@iname.com)
Fri, 4 Jun 1999 23:53:18 +0300 (EEST)


This message is in MIME format. The first part should be readable text,
while the remaining parts are likely unreadable without MIME-aware tools.
Send mail to mime@docserver.cac.washington.edu for more info.

--8323328-1101431981-927042368=:1181
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII
Content-ID: <Pine.LNX.4.10.9906042348092.417@dragos.future.ro>

Now that the 2.3 kernel development line is out, I'm sending again
the patch (first written in summer 1998) which provides the /proc/sysvipc
directory, and reports informations about IPC resources: shared memory
segments (shm), message queues (msg) and semaphore arrays (sem).
The attached patch is against 2.3.3 and it applies on 2.3.5 too.

Regards,
Dragos.

---------------------------------------------------------------------
Dragos Acostachioaie dragos@iname.com
http://www.arbornet.org/~dragos
Phone: +40-94-564548
---------------------------------------------------------------------

--8323328-1101431981-927042368=:1181
Content-Type: TEXT/PLAIN; CHARSET=US-ASCII; NAME="proc_sysvipc-patch-2.3.3"
Content-Transfer-Encoding: BASE64
Content-ID: <Pine.LNX.4.10.9905181846080.1181@dragos.future.ro>
Content-Description:
Content-Disposition: ATTACHMENT; FILENAME="proc_sysvipc-patch-2.3.3"

ZGlmZiAtdU5yIGxpbnV4LTIuMy4zLm9yaWcvQ1JFRElUUyBsaW51eC0yLjMu
My9DUkVESVRTDQotLS0gbGludXgtMi4zLjMub3JpZy9DUkVESVRTCVR1ZSBN
YXkgMTggMTg6MzM6NDUgMTk5OQ0KKysrIGxpbnV4LTIuMy4zL0NSRURJVFMJ
TW9uIE1heSAxNyAxNjozMjowNiAxOTk5DQpAQCAtMTYsNiArMTYsMTQgQEAN
CiBTOiAoYXNrIGZvciBjdXJyZW50IGFkZHJlc3MpDQogUzogRmlubGFuZA0K
IA0KK046IERyYWdvcyBBY29zdGFjaGlvYWllDQorRTogZHJhZ29zQGluYW1l
LmNvbQ0KK1c6IGh0dHA6Ly93d3cuYXJib3JuZXQub3JnL35kcmFnb3MNCitE
OiAvcHJvYy9zeXN2aXBjDQorUzogQy4gTmVncmkgNiwgYmwuIEQzDQorUzog
SWFzaSA2NjAwDQorUzogUm9tYW5pYQ0KKw0KIE46IERhdmUgQWlybGllDQog
RTogYWlybGllZEBsaW51eC5pZQ0KIFc6IGh0dHA6Ly93d3cuY3NuLnVsLmll
L35haXJsaWVkDQpkaWZmIC11TnIgbGludXgtMi4zLjMub3JpZy9mcy9wcm9j
L01ha2VmaWxlIGxpbnV4LTIuMy4zL2ZzL3Byb2MvTWFrZWZpbGUNCi0tLSBs
aW51eC0yLjMuMy5vcmlnL2ZzL3Byb2MvTWFrZWZpbGUJVGh1IEp1biAyNSAw
MDozMDoxMCAxOTk4DQorKysgbGludXgtMi4zLjMvZnMvcHJvYy9NYWtlZmls
ZQlNb24gTWF5IDE3IDE2OjMyOjA3IDE5OTkNCkBAIC05LDcgKzksNyBAQA0K
IA0KIE9fVEFSR0VUIDo9IHByb2Mubw0KIE9fT0JKUyAgIDo9IGlub2RlLm8g
cm9vdC5vIGJhc2UubyBnZW5lcmljLm8gbWVtLm8gbGluay5vIGZkLm8gYXJy
YXkubyBcDQotCQlrbXNnLm8gc2NzaS5vIHByb2NfdHR5Lm8NCisJCWttc2cu
byBzY3NpLm8gcHJvY190dHkubyBzeXN2aXBjLm8NCiBpZmRlZiBDT05GSUdf
T01JUlINCiBPX09CSlMgICA6PSAkKE9fT0JKUykgb21pcnIubw0KIGVuZGlm
DQpkaWZmIC11TnIgbGludXgtMi4zLjMub3JpZy9mcy9wcm9jL3Jvb3QuYyBs
aW51eC0yLjMuMy9mcy9wcm9jL3Jvb3QuYw0KLS0tIGxpbnV4LTIuMy4zLm9y
aWcvZnMvcHJvYy9yb290LmMJV2VkIEFwciAyOCAxODo0NzozOSAxOTk5DQor
KysgbGludXgtMi4zLjMvZnMvcHJvYy9yb290LmMJTW9uIE1heSAxNyAxNjoz
MjowNyAxOTk5DQpAQCAtMTU1LDcgKzE1NSw3IEBADQogCSZwcm9jX3Jvb3Qs
IE5VTEwNCiB9Ow0KIA0KLXN0cnVjdCBwcm9jX2Rpcl9lbnRyeSAqcHJvY19u
ZXQsICpwcm9jX3Njc2ksICpwcm9jX2J1czsNCitzdHJ1Y3QgcHJvY19kaXJf
ZW50cnkgKnByb2NfbmV0LCAqcHJvY19zY3NpLCAqcHJvY19idXMsICpwcm9j
X3N5c3ZpcGM7DQogDQogI2lmZGVmIENPTkZJR19NQ0ENCiBzdHJ1Y3QgcHJv
Y19kaXJfZW50cnkgcHJvY19tY2EgPSB7DQpAQCAtNjgxLDYgKzY4MSw5IEBA
DQogCXByb2NfcmVnaXN0ZXIoJnByb2Nfcm9vdCwgJnByb2Nfcm9vdF9zZWxm
KTsNCiAJcHJvY19uZXQgPSBjcmVhdGVfcHJvY19lbnRyeSgibmV0IiwgU19J
RkRJUiwgMCk7DQogCXByb2Nfc2NzaSA9IGNyZWF0ZV9wcm9jX2VudHJ5KCJz
Y3NpIiwgU19JRkRJUiwgMCk7DQorI2lmZGVmIENPTkZJR19TWVNWSVBDDQor
CXByb2Nfc3lzdmlwYyA9IGNyZWF0ZV9wcm9jX2VudHJ5KCJzeXN2aXBjIiwg
U19JRkRJUiwgMCk7DQorI2VuZGlmDQogI2lmZGVmIENPTkZJR19TWVNDVEwN
CiAJcHJvY19yZWdpc3RlcigmcHJvY19yb290LCAmcHJvY19zeXNfcm9vdCk7
DQogI2VuZGlmDQpkaWZmIC11TnIgbGludXgtMi4zLjMub3JpZy9mcy9wcm9j
L3N5c3ZpcGMuYyBsaW51eC0yLjMuMy9mcy9wcm9jL3N5c3ZpcGMuYw0KLS0t
IGxpbnV4LTIuMy4zLm9yaWcvZnMvcHJvYy9zeXN2aXBjLmMJVGh1IEphbiAg
MSAwMjowMDowMCAxOTcwDQorKysgbGludXgtMi4zLjMvZnMvcHJvYy9zeXN2
aXBjLmMJTW9uIE1heSAxNyAxNjozMjowNyAxOTk5DQpAQCAtMCwwICsxLDEz
OCBAQA0KKy8qDQorICogIGxpbnV4L2ZzL3Byb2Mvc3lzdmlwYy5jDQorICoN
CisgKiAgQ29weXJpZ2h0IChjKSAxOTk5IERyYWdvcyBBY29zdGFjaGlvYWll
DQorICoNCisgKiAgVGhpcyBjb2RlIGlzIGRlcml2ZWQgZnJvbSBsaW51eC9m
cy9wcm9jL2dlbmVyaWMuYywNCisgKiAgd2hpY2ggaXMgQ29weXJpZ2h0IChD
KSAxOTkxLCAxOTkyIExpbnVzIFRvcnZhbGRzLg0KKyAqDQorICogIC9wcm9j
L3N5c3ZpcGMgZGlyZWN0b3J5IGhhbmRsaW5nIGZ1bmN0aW9ucw0KKyAqLw0K
KyNpbmNsdWRlIDxsaW51eC9lcnJuby5oPg0KKyNpbmNsdWRlIDxsaW51eC9z
Y2hlZC5oPg0KKyNpbmNsdWRlIDxsaW51eC9wcm9jX2ZzLmg+DQorI2luY2x1
ZGUgPGxpbnV4L3N0YXQuaD4NCisjaW5jbHVkZSA8bGludXgvbW0uaD4NCisN
CisjaW5jbHVkZSA8YXNtL3VhY2Nlc3MuaD4NCisNCisjaWZuZGVmIE1JTg0K
KyNkZWZpbmUgTUlOKGEsYikgKCgoYSkgPCAoYikpID8gKGEpIDogKGIpKQ0K
KyNlbmRpZg0KKw0KKy8qIDRLIHBhZ2Ugc2l6ZSBidXQgb3VyIG91dHB1dCBy
b3V0aW5lcyB1c2Ugc29tZSBzbGFjayBmb3Igb3ZlcnJ1bnMgKi8NCisjZGVm
aW5lIFBST0NfQkxPQ0tfU0laRQkoMyoxMDI0KQ0KKw0KK3N0YXRpYyBzc2l6
ZV90DQorcHJvY19zeXN2aXBjX3JlYWQoc3RydWN0IGZpbGUgKiBmaWxlLCBj
aGFyICogYnVmLCBzaXplX3QgbmJ5dGVzLCBsb2ZmX3QgKnBwb3MpDQorew0K
KwlzdHJ1Y3QgaW5vZGUgKiBpbm9kZSA9IGZpbGUtPmZfZGVudHJ5LT5kX2lu
b2RlOw0KKwljaGFyIAkqcGFnZTsNCisJc3NpemVfdAlyZXR2YWw9MDsNCisJ
aW50CWVvZj0wOw0KKwlzc2l6ZV90CW4sIGNvdW50Ow0KKwljaGFyCSpzdGFy
dDsNCisJc3RydWN0IHByb2NfZGlyX2VudHJ5ICogZHA7DQorDQorCWRwID0g
KHN0cnVjdCBwcm9jX2Rpcl9lbnRyeSAqKSBpbm9kZS0+dS5nZW5lcmljX2lw
Ow0KKwlpZiAoIShwYWdlID0gKGNoYXIqKSBfX2dldF9mcmVlX3BhZ2UoR0ZQ
X0tFUk5FTCkpKQ0KKwkJcmV0dXJuIC1FTk9NRU07DQorDQorCXdoaWxlICgo
bmJ5dGVzID4gMCkgJiYgIWVvZikNCisJew0KKwkJY291bnQgPSBNSU4oUFJP
Q19CTE9DS19TSVpFLCBuYnl0ZXMpOw0KKw0KKwkJc3RhcnQgPSBOVUxMOw0K
KwkJaWYgKGRwLT5nZXRfaW5mbykgew0KKwkJCS8qDQorCQkJICogSGFuZGxl
IGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGggdGhlIG9sZCBuZXQNCisJ
CQkgKiByb3V0aW5lcy4NCisJCQkgKiANCisJCQkgKiBYWFggV2hhdCBnaXZl
cyB3aXRoIHRoZSBmaWxlLT5mX2ZsYWdzICYgT19BQ0NNT0RFDQorCQkJICog
dGVzdD8gIFNlZW1zIHN0dXBpZCB0byBtZS4uLi4NCisJCQkgKi8NCisJCQlu
ID0gZHAtPmdldF9pbmZvKHBhZ2UsICZzdGFydCwgKnBwb3MsIGNvdW50LA0K
KwkJCQkgKGZpbGUtPmZfZmxhZ3MgJiBPX0FDQ01PREUpID09IE9fUkRXUik7
DQorCQkJaWYgKG4gPCBjb3VudCkNCisJCQkJZW9mID0gMTsNCisJCX0gZWxz
ZSBpZiAoZHAtPnJlYWRfcHJvYykgew0KKwkJCW4gPSBkcC0+cmVhZF9wcm9j
KHBhZ2UsICZzdGFydCwgKnBwb3MsDQorCQkJCQkgIGNvdW50LCAmZW9mLCBk
cC0+ZGF0YSk7DQorCQl9IGVsc2UNCisJCQlicmVhazsNCisJCQkNCisJCWlm
ICghc3RhcnQpIHsNCisJCQkvKg0KKwkJCSAqIEZvciBwcm9jIGZpbGVzIHRo
YXQgYXJlIGxlc3MgdGhhbiA0aw0KKwkJCSAqLw0KKwkJCXN0YXJ0ID0gcGFn
ZSArICpwcG9zOw0KKwkJCW4gLT0gKnBwb3M7DQorCQkJaWYgKG4gPD0gMCkN
CisJCQkJYnJlYWs7DQorCQkJaWYgKG4gPiBjb3VudCkNCisJCQkJbiA9IGNv
dW50Ow0KKwkJfQ0KKwkJaWYgKG4gPT0gMCkNCisJCQlicmVhazsJLyogRW5k
IG9mIGZpbGUgKi8NCisJCWlmIChuIDwgMCkgew0KKwkJCWlmIChyZXR2YWwg
PT0gMCkNCisJCQkJcmV0dmFsID0gbjsNCisJCQlicmVhazsNCisJCX0NCisJ
CQ0KKwkJLyogVGhpcyBpcyBhIGhhY2sgdG8gYWxsb3cgbWFuZ2xpbmcgb2Yg
ZmlsZSBwb3MgaW5kZXBlbmRlbnQNCisgCQkgKiBvZiBhY3R1YWwgYnl0ZXMg
cmVhZC4gIFNpbXBseSBwbGFjZSB0aGUgZGF0YSBhdCBwYWdlLA0KKyAJCSAq
IHJldHVybiB0aGUgYnl0ZXMsIGFuZCBzZXQgYHN0YXJ0JyB0byB0aGUgZGVz
aXJlZCBvZmZzZXQNCisgCQkgKiBhcyBhbiB1bnNpZ25lZCBpbnQuIC0gUGF1
bC5SdXNzZWxsQHJ1c3Rjb3JwLmNvbS5hdQ0KKwkJICovDQorIAkJbiAtPSBj
b3B5X3RvX3VzZXIoYnVmLCBzdGFydCA8IHBhZ2UgPyBwYWdlIDogc3RhcnQs
IG4pOw0KKwkJaWYgKG4gPT0gMCkgew0KKwkJCWlmIChyZXR2YWwgPT0gMCkN
CisJCQkJcmV0dmFsID0gLUVGQVVMVDsNCisJCQlicmVhazsNCisJCX0NCisN
CisJCSpwcG9zICs9IHN0YXJ0IDwgcGFnZSA/IChsb25nKXN0YXJ0IDogbjsg
LyogTW92ZSBkb3duIHRoZSBmaWxlICovDQorCQluYnl0ZXMgLT0gbjsNCisJ
CWJ1ZiArPSBuOw0KKwkJcmV0dmFsICs9IG47DQorCX0NCisJZnJlZV9wYWdl
KCh1bnNpZ25lZCBsb25nKSBwYWdlKTsNCisJcmV0dXJuIHJldHZhbDsNCit9
DQorDQorc3RhdGljIHN0cnVjdCBmaWxlX29wZXJhdGlvbnMgcHJvY19zeXN2
aXBjX29wZXJhdGlvbnMgPSB7DQorICAgIE5VTEwsCQkvKiBsc2VlayAgICov
DQorICAgIHByb2Nfc3lzdmlwY19yZWFkLAkvKiByZWFkCSAgICovDQorICAg
IE5VTEwsCQkvKiB3cml0ZSAgICovDQorICAgIE5VTEwsCQkvKiByZWFkZGly
ICovDQorICAgIE5VTEwsCQkvKiBwb2xsICAgICovDQorICAgIE5VTEwsCQkv
KiBpb2N0bCAgICovDQorICAgIE5VTEwsCQkvKiBtbWFwCSAgICovDQorICAg
IE5VTEwsCQkvKiBubyBzcGVjaWFsIG9wZW4gY29kZQkgICAqLw0KKyAgICBO
VUxMLAkJLyogbm8gc3BlY2lhbCByZWxlYXNlIGNvZGUgKi8NCisgICAgTlVM
TAkJLyogY2FuJ3QgZnN5bmMgKi8NCit9Ow0KKw0KKy8qDQorICogcHJvYyBk
aXJlY3RvcmllcyBjYW4gZG8gYWxtb3N0IG5vdGhpbmcuLg0KKyAqLw0KK3N0
cnVjdCBpbm9kZV9vcGVyYXRpb25zIHByb2Nfc3lzdmlwY19pbm9kZV9vcGVy
YXRpb25zID0gew0KKwkmcHJvY19zeXN2aXBjX29wZXJhdGlvbnMsCS8qIGRl
ZmF1bHQgbmV0IGZpbGUtb3BzICovDQorCU5VTEwsCQkJCS8qIGNyZWF0ZSAq
Lw0KKwlOVUxMLAkJCQkvKiBsb29rdXAgKi8NCisJTlVMTCwJCQkJLyogbGlu
ayAqLw0KKwlOVUxMLAkJCQkvKiB1bmxpbmsgKi8NCisJTlVMTCwJCQkJLyog
c3ltbGluayAqLw0KKwlOVUxMLAkJCQkvKiBta2RpciAqLw0KKwlOVUxMLAkJ
CQkvKiBybWRpciAqLw0KKwlOVUxMLAkJCQkvKiBta25vZCAqLw0KKwlOVUxM
LAkJCQkvKiByZW5hbWUgKi8NCisJTlVMTCwJCQkJLyogcmVhZGxpbmsgKi8N
CisJTlVMTCwJCQkJLyogZm9sbG93X2xpbmsgKi8NCisJTlVMTCwJCQkJLyog
cmVhZHBhZ2UgKi8NCisJTlVMTCwJCQkJLyogd3JpdGVwYWdlICovDQorCU5V
TEwsCQkJCS8qIGJtYXAgKi8NCisJTlVMTCwJCQkJLyogdHJ1bmNhdGUgKi8N
CisJTlVMTAkJCQkvKiBwZXJtaXNzaW9uICovDQorfTsNCmRpZmYgLXVOciBs
aW51eC0yLjMuMy5vcmlnL2luY2x1ZGUvbGludXgvcHJvY19mcy5oIGxpbnV4
LTIuMy4zL2luY2x1ZGUvbGludXgvcHJvY19mcy5oDQotLS0gbGludXgtMi4z
LjMub3JpZy9pbmNsdWRlL2xpbnV4L3Byb2NfZnMuaAlUdWUgTWF5IDE4IDE4
OjMzOjMxIDE5OTkNCisrKyBsaW51eC0yLjMuMy9pbmNsdWRlL2xpbnV4L3By
b2NfZnMuaAlNb24gTWF5IDE3IDE2OjUwOjQ1IDE5OTkNCkBAIC01Miw3ICs1
Miw4IEBADQogCVBST0NfU1RSQU0sDQogCVBST0NfU09VTkQsDQogCVBST0Nf
TVRSUiwgLyogd2hldGhlciBlbmFibGVkIG9yIG5vdCAqLw0KLQlQUk9DX0ZT
DQorCVBST0NfRlMsDQorCVBST0NfU1lTVklQQw0KIH07DQogDQogZW51bSBw
aWRfZGlyZWN0b3J5X2lub3Mgew0KQEAgLTI0Myw2ICsyNDQsMTIgQEANCiAJ
UFJPQ19DT0RBX0ZTX0xBU1QNCiB9Ow0KIA0KK2VudW0gc3lzdmlwY19kaXJl
Y3RvcnlfaW5vcyB7DQorCVBST0NfU1lTVklQQ19TSE0gPSBQUk9DX0NPREFf
RlNfTEFTVCwNCisJUFJPQ19TWVNWSVBDX1NFTSwNCisJUFJPQ19TWVNWSVBD
X01TRw0KK307DQorDQogLyogRmluYWxseSwgdGhlIGR5bmFtaWNhbGx5IGFs
bG9jYXRhYmxlIHByb2MgZW50cmllcyBhcmUgcmVzZXJ2ZWQ6ICovDQogDQog
I2RlZmluZSBQUk9DX0RZTkFNSUNfRklSU1QgNDA5Ng0KQEAgLTMxMyw2ICsz
MjAsNyBAQA0KIGV4dGVybiBzdHJ1Y3QgcHJvY19kaXJfZW50cnkgcHJvY19w
aWRfZmQ7DQogZXh0ZXJuIHN0cnVjdCBwcm9jX2Rpcl9lbnRyeSBwcm9jX21j
YTsNCiBleHRlcm4gc3RydWN0IHByb2NfZGlyX2VudHJ5ICpwcm9jX2J1czsN
CitleHRlcm4gc3RydWN0IHByb2NfZGlyX2VudHJ5ICpwcm9jX3N5c3ZpcGM7
DQogDQogZXh0ZXJuIHN0cnVjdCBpbm9kZV9vcGVyYXRpb25zIHByb2Nfc2Nz
aV9pbm9kZV9vcGVyYXRpb25zOw0KIA0KQEAgLTQyMiw2ICs0MzAsNyBAQA0K
ICNlbmRpZg0KIGV4dGVybiBzdHJ1Y3QgaW5vZGVfb3BlcmF0aW9ucyBwcm9j
X29taXJyX2lub2RlX29wZXJhdGlvbnM7DQogZXh0ZXJuIHN0cnVjdCBpbm9k
ZV9vcGVyYXRpb25zIHByb2NfcHBjX2h0YWJfaW5vZGVfb3BlcmF0aW9uczsN
CitleHRlcm4gc3RydWN0IGlub2RlX29wZXJhdGlvbnMgcHJvY19zeXN2aXBj
X2lub2RlX29wZXJhdGlvbnM7DQogDQogLyoNCiAgKiBnZW5lcmljLmMNCmRp
ZmYgLXVOciBsaW51eC0yLjMuMy5vcmlnL2lwYy9tc2cuYyBsaW51eC0yLjMu
My9pcGMvbXNnLmMNCi0tLSBsaW51eC0yLjMuMy5vcmlnL2lwYy9tc2cuYwlU
dWUgTWF5IDE4IDE4OjMzOjE1IDE5OTkNCisrKyBsaW51eC0yLjMuMy9pcGMv
bXNnLmMJTW9uIE1heSAxNyAxNjozNzoxOSAxOTk5DQpAQCAtOCw2ICs4LDcg
QEANCiAgKiBGaXhlZCB1cCB0aGUgdW5jaGVja2VkIHVzZXIgc3BhY2UgZGVy
ZWZzDQogICogQ29weXJpZ2h0IChDKSAxOTk4IEFsYW4gQ294ICYgQW5kaSBL
bGVlbg0KICAqDQorICogL3Byb2Mvc3lzdmlwYy9tc2cgc3VwcG9ydCAoYykg
MTk5OSBEcmFnb3MgQWNvc3RhY2hpb2FpZSA8ZHJhZ29zQGluYW1lLmNvbT4N
CiAgKi8NCiANCiAjaW5jbHVkZSA8bGludXgvbWFsbG9jLmg+DQpAQCAtMTUs
NiArMTYsNyBAQA0KICNpbmNsdWRlIDxsaW51eC9pbnRlcnJ1cHQuaD4NCiAj
aW5jbHVkZSA8bGludXgvc21wX2xvY2suaD4NCiAjaW5jbHVkZSA8bGludXgv
aW5pdC5oPg0KKyNpbmNsdWRlIDxsaW51eC9wcm9jX2ZzLmg+DQogDQogI2lu
Y2x1ZGUgPGFzbS91YWNjZXNzLmg+DQogDQpAQCAtMjMsNiArMjUsOSBAQA0K
IHN0YXRpYyB2b2lkIGZyZWVxdWUgKGludCBpZCk7DQogc3RhdGljIGludCBu
ZXdxdWUgKGtleV90IGtleSwgaW50IG1zZ2ZsZyk7DQogc3RhdGljIGludCBm
aW5ka2V5IChrZXlfdCBrZXkpOw0KKyNpZmRlZiBDT05GSUdfUFJPQ19GUw0K
K3N0YXRpYyBpbnQgc3lzdmlwY19tc2dfcmVhZF9wcm9jKGNoYXIgKmJ1ZmZl
ciwgY2hhciAqKnN0YXJ0LCBvZmZfdCBvZmZzZXQsIGludCBsZW5ndGgsIGlu
dCAqZW9mLCB2b2lkICpkYXRhKTsNCisjZW5kaWYNCiANCiBzdGF0aWMgc3Ry
dWN0IG1zcWlkX2RzICptc2dxdWVbTVNHTU5JXTsNCiBzdGF0aWMgaW50IG1z
Z2J5dGVzID0gMDsNCkBAIC0zNSwxMSArNDAsMTggQEANCiB2b2lkIF9faW5p
dCBtc2dfaW5pdCAodm9pZCkNCiB7DQogCWludCBpZDsNCi0JDQorI2lmZGVm
IENPTkZJR19QUk9DX0ZTDQorCXN0cnVjdCBwcm9jX2Rpcl9lbnRyeSAqZW50
Ow0KKyNlbmRpZg0KKw0KIAlmb3IgKGlkID0gMDsgaWQgPCBNU0dNTkk7IGlk
KyspIA0KIAkJbXNncXVlW2lkXSA9IChzdHJ1Y3QgbXNxaWRfZHMgKikgSVBD
X1VOVVNFRDsNCiAJbXNnYnl0ZXMgPSBtc2doZHJzID0gbXNnX3NlcSA9IG1h
eF9tc3FpZCA9IHVzZWRfcXVldWVzID0gMDsNCiAJaW5pdF93YWl0cXVldWVf
aGVhZCgmbXNnX2xvY2spOw0KKyNpZmRlZiBDT05GSUdfUFJPQ19GUw0KKwll
bnQgPSBjcmVhdGVfcHJvY19lbnRyeSgic3lzdmlwYy9tc2ciLCAwLCAwKTsN
CisJZW50LT5yZWFkX3Byb2MgPSBzeXN2aXBjX21zZ19yZWFkX3Byb2M7DQor
I2VuZGlmDQogCXJldHVybjsNCiB9DQogDQpAQCAtNDkyLDMgKzUwNCw0OSBA
QA0KIAlyZXR1cm4gZXJyOw0KIH0NCiANCisjaWZkZWYgQ09ORklHX1BST0Nf
RlMNCitzdGF0aWMgaW50IHN5c3ZpcGNfbXNnX3JlYWRfcHJvYyhjaGFyICpi
dWZmZXIsIGNoYXIgKipzdGFydCwgb2ZmX3Qgb2Zmc2V0LCBpbnQgbGVuZ3Ro
LCBpbnQgKmVvZiwgdm9pZCAqZGF0YSkNCit7DQorCW9mZl90IHBvcyA9IDA7
DQorCW9mZl90IGJlZ2luID0gMDsNCisJaW50IGksIGxlbiA9IDA7DQorDQor
CWxlbiArPSBzcHJpbnRmKGJ1ZmZlciwgIiAgICAgICBrZXkgICAgICBtc3Fp
ZCBwZXJtcyBjYnl0ZXMgIHFudW0gbHNwaWQgbHJwaWQgICB1aWQgICBnaWQg
IGN1aWQgIGNnaWQgICAgICBzdGltZSAgICAgIHJ0aW1lICAgICAgY3RpbWVc
biIpOw0KKw0KKwlmb3IoaSA9IDA7IGkgPCBNU0dNTkk7IGkrKykNCisJCWlm
KG1zZ3F1ZVtpXSAhPSBJUENfVU5VU0VEKSB7DQorCQkJbGVuICs9IHNwcmlu
dGYoYnVmZmVyICsgbGVuLCAiJTEwZCAlMTBkICAlNG8gICU1dSAlNXUgJTV1
ICU1dSAlNXUgJTV1ICU1dSAlNXUgJTEwbHUgJTEwbHUgJTEwbHVcbiIsDQor
CQkJCW1zZ3F1ZVtpXS0+bXNnX3Blcm0ua2V5LA0KKwkJCQltc2dxdWVbaV0t
Pm1zZ19wZXJtLnNlcSAqIE1TR01OSSArIGksDQorCQkJCW1zZ3F1ZVtpXS0+
bXNnX3Blcm0ubW9kZSwNCisJCQkJbXNncXVlW2ldLT5tc2dfY2J5dGVzLA0K
KwkJCQltc2dxdWVbaV0tPm1zZ19xbnVtLA0KKwkJCQltc2dxdWVbaV0tPm1z
Z19sc3BpZCwNCisJCQkJbXNncXVlW2ldLT5tc2dfbHJwaWQsDQorCQkJCW1z
Z3F1ZVtpXS0+bXNnX3Blcm0udWlkLA0KKwkJCQltc2dxdWVbaV0tPm1zZ19w
ZXJtLmdpZCwNCisJCQkJbXNncXVlW2ldLT5tc2dfcGVybS5jdWlkLA0KKwkJ
CQltc2dxdWVbaV0tPm1zZ19wZXJtLmNnaWQsDQorCQkJCW1zZ3F1ZVtpXS0+
bXNnX3N0aW1lLA0KKwkJCQltc2dxdWVbaV0tPm1zZ19ydGltZSwNCisJCQkJ
bXNncXVlW2ldLT5tc2dfY3RpbWUpOw0KKw0KKwkJCXBvcyArPSBsZW47DQor
CQkJaWYocG9zIDwgb2Zmc2V0KSB7DQorCQkJCWxlbiA9IDA7DQorCQkJCWJl
Z2luID0gcG9zOw0KKwkJCX0NCisJCQlpZihwb3MgPiBvZmZzZXQgKyBsZW5n
dGgpDQorCQkJCWdvdG8gZG9uZTsNCisJCX0NCisJKmVvZiA9IDE7DQorZG9u
ZToNCisJKnN0YXJ0ID0gYnVmZmVyICsgKG9mZnNldCAtIGJlZ2luKTsNCisJ
bGVuIC09IChvZmZzZXQgLSBiZWdpbik7DQorCWlmKGxlbiA+IGxlbmd0aCkN
CisJCWxlbiA9IGxlbmd0aDsNCisJaWYobGVuIDwgMCkNCisJCWxlbiA9IDA7
DQorCXJldHVybiBsZW47DQorfQ0KKyNlbmRpZg0KZGlmZiAtdU5yIGxpbnV4
LTIuMy4zLm9yaWcvaXBjL3NlbS5jIGxpbnV4LTIuMy4zL2lwYy9zZW0uYw0K
LS0tIGxpbnV4LTIuMy4zLm9yaWcvaXBjL3NlbS5jCVR1ZSBNYXkgMTggMTg6
MzM6MTUgMTk5OQ0KKysrIGxpbnV4LTIuMy4zL2lwYy9zZW0uYwlNb24gTWF5
IDE3IDE2OjQxOjM5IDE5OTkNCkBAIC00OCwxMSArNDgsMTQgQEANCiAgKiAg
ICAgIGJldHRlciBidXQgb25seSBnZXQgdGhlIHNlbW9wcyByaWdodCB3aGlj
aCBvbmx5IHdhaXQgZm9yIHplcm8gb3INCiAgKiAgICAgIGluY3JlYXNlLiBJ
ZiB0aGVyZSBhcmUgZGVjcmVtZW50IG9wZXJhdGlvbnMgaW4gdGhlIG9wZXJh
dGlvbnMNCiAgKiAgICAgIGFycmF5IHdlIGRvIHRoZSBzYW1lIGFzIGJlZm9y
ZS4NCisgKg0KKyAqIC9wcm9jL3N5c3ZpcGMvc2VtIHN1cHBvcnQgKGMpIDE5
OTkgRHJhZ29zIEFjb3N0YWNoaW9haWUgPGRyYWdvc0BpbmFtZS5jb20+DQog
ICovDQogDQogI2luY2x1ZGUgPGxpbnV4L21hbGxvYy5oPg0KICNpbmNsdWRl
IDxsaW51eC9zbXBfbG9jay5oPg0KICNpbmNsdWRlIDxsaW51eC9pbml0Lmg+
DQorI2luY2x1ZGUgPGxpbnV4L3Byb2NfZnMuaD4NCiANCiAjaW5jbHVkZSA8
YXNtL3VhY2Nlc3MuaD4NCiANCkBAIC02MCw2ICs2Myw5IEBADQogc3RhdGlj
IGludCBuZXdhcnkgKGtleV90LCBpbnQsIGludCk7DQogc3RhdGljIGludCBm
aW5ka2V5IChrZXlfdCBrZXkpOw0KIHN0YXRpYyB2b2lkIGZyZWVhcnkgKGlu
dCBpZCk7DQorI2lmZGVmIENPTkZJR19QUk9DX0ZTDQorc3RhdGljIGludCBz
eXN2aXBjX3NlbV9yZWFkX3Byb2MoY2hhciAqYnVmZmVyLCBjaGFyICoqc3Rh
cnQsIG9mZl90IG9mZnNldCwgaW50IGxlbmd0aCwgaW50ICplb2YsIHZvaWQg
KmRhdGEpOw0KKyNlbmRpZg0KIA0KIHN0YXRpYyBzdHJ1Y3Qgc2VtaWRfZHMg
KnNlbWFyeVtTRU1NTkldOw0KIHN0YXRpYyBpbnQgdXNlZF9zZW1zID0gMCwg
dXNlZF9zZW1pZHMgPSAwOw0KQEAgLTcxLDExICs3NywxOCBAQA0KIHZvaWQg
X19pbml0IHNlbV9pbml0ICh2b2lkKQ0KIHsNCiAJaW50IGk7DQorI2lmZGVm
IENPTkZJR19QUk9DX0ZTDQorCXN0cnVjdCBwcm9jX2Rpcl9lbnRyeSAqZW50
Ow0KKyNlbmRpZg0KIA0KIAlpbml0X3dhaXRxdWV1ZV9oZWFkKCZzZW1fbG9j
ayk7DQogCXVzZWRfc2VtcyA9IHVzZWRfc2VtaWRzID0gbWF4X3NlbWlkID0g
c2VtX3NlcSA9IDA7DQogCWZvciAoaSA9IDA7IGkgPCBTRU1NTkk7IGkrKykN
CiAJCXNlbWFyeVtpXSA9IChzdHJ1Y3Qgc2VtaWRfZHMgKikgSVBDX1VOVVNF
RDsNCisjaWZkZWYgQ09ORklHX1BST0NfRlMNCisJZW50ID0gY3JlYXRlX3By
b2NfZW50cnkoInN5c3ZpcGMvc2VtIiwgMCwgMCk7DQorCWVudC0+cmVhZF9w
cm9jID0gc3lzdmlwY19zZW1fcmVhZF9wcm9jOw0KKyNlbmRpZg0KIAlyZXR1
cm47DQogfQ0KIA0KQEAgLTc4NSwzICs3OTgsNDYgQEANCiAJfQ0KIAljdXJy
ZW50LT5zZW11bmRvID0gTlVMTDsNCiB9DQorDQorI2lmZGVmIENPTkZJR19Q
Uk9DX0ZTDQorc3RhdGljIGludCBzeXN2aXBjX3NlbV9yZWFkX3Byb2MoY2hh
ciAqYnVmZmVyLCBjaGFyICoqc3RhcnQsIG9mZl90IG9mZnNldCwgaW50IGxl
bmd0aCwgaW50ICplb2YsIHZvaWQgKmRhdGEpDQorew0KKwlvZmZfdCBwb3Mg
PSAwOw0KKwlvZmZfdCBiZWdpbiA9IDA7DQorCWludCBpLCBsZW4gPSAwOw0K
Kw0KKwlsZW4gKz0gc3ByaW50ZihidWZmZXIsICIgICAgICAga2V5ICAgICAg
c2VtaWQgcGVybXMgbnNlbXMgICB1aWQgICBnaWQgIGN1aWQgIGNnaWQgICAg
ICBvdGltZSAgICAgIGN0aW1lXG4iKTsNCisNCisJZm9yKGkgPSAwOyBpIDwg
U0VNTU5JOyBpKyspDQorCQlpZihzZW1hcnlbaV0gIT0gSVBDX1VOVVNFRCkg
ew0KKwkJCWxlbiArPSBzcHJpbnRmKGJ1ZmZlciArIGxlbiwgIiUxMGQgJTEw
ZCAgJTRvICU1dSAlNXUgJTV1ICU1dSAlNXUgJTEwbHUgJTEwbHVcbiIsDQor
CQkJCXNlbWFyeVtpXS0+c2VtX3Blcm0ua2V5LA0KKwkJCQlzZW1hcnlbaV0t
PnNlbV9wZXJtLnNlcSAqIFNFTU1OSSArIGksDQorCQkJCXNlbWFyeVtpXS0+
c2VtX3Blcm0ubW9kZSwNCisJCQkJc2VtYXJ5W2ldLT5zZW1fbnNlbXMsDQor
CQkJCXNlbWFyeVtpXS0+c2VtX3Blcm0udWlkLA0KKwkJCQlzZW1hcnlbaV0t
PnNlbV9wZXJtLmdpZCwNCisJCQkJc2VtYXJ5W2ldLT5zZW1fcGVybS5jdWlk
LA0KKwkJCQlzZW1hcnlbaV0tPnNlbV9wZXJtLmNnaWQsDQorCQkJCXNlbWFy
eVtpXS0+c2VtX290aW1lLA0KKwkJCQlzZW1hcnlbaV0tPnNlbV9jdGltZSk7
DQorDQorCQkJcG9zICs9IGxlbjsNCisJCQlpZihwb3MgPCBvZmZzZXQpIHsN
CisJCQkJbGVuID0gMDsNCisJICAgIAkJYmVnaW4gPSBwb3M7DQorCQkJfQ0K
KwkJCWlmKHBvcyA+IG9mZnNldCArIGxlbmd0aCkNCisJCQkJZ290byBkb25l
Ow0KKwkJfQ0KKwkqZW9mID0gMTsNCitkb25lOg0KKwkqc3RhcnQgPSBidWZm
ZXIgKyAob2Zmc2V0IC0gYmVnaW4pOw0KKwlsZW4gLT0gKG9mZnNldCAtIGJl
Z2luKTsNCisJaWYobGVuID4gbGVuZ3RoKQ0KKwkJbGVuID0gbGVuZ3RoOw0K
KwlpZihsZW4gPCAwKQ0KKwkJbGVuID0gMDsNCisJcmV0dXJuIGxlbjsNCit9
DQorI2VuZGlmDQpkaWZmIC11TnIgbGludXgtMi4zLjMub3JpZy9pcGMvc2ht
LmMgbGludXgtMi4zLjMvaXBjL3NobS5jDQotLS0gbGludXgtMi4zLjMub3Jp
Zy9pcGMvc2htLmMJVHVlIE1heSAxOCAxODozMzoxNSAxOTk5DQorKysgbGlu
dXgtMi4zLjMvaXBjL3NobS5jCU1vbiBNYXkgMTcgMTY6NDI6NDggMTk5OQ0K
QEAgLTQsNiArNCw4IEBADQogICogICAgICAgICBNYW55IGltcHJvdmVtZW50
cy9maXhlcyBieSBCcnVubyBIYWlibGUuDQogICogUmVwbGFjZWQgYHN0cnVj
dCBzaG1fZGVzYycgYnkgYHN0cnVjdCB2bV9hcmVhX3N0cnVjdCcsIEp1bHkg
MTk5NC4NCiAgKiBGaXhlZCB0aGUgc2htIHN3YXAgZGVhbGxvY2F0aW9uIChz
aG1fdW51c2UoKSksIEF1Z3VzdCAxOTk4IEFuZHJlYSBBcmNhbmdlbGkuDQor
ICoNCisgKiAvcHJvYy9zeXN2aXBjL3NobSBzdXBwb3J0IChjKSAxOTk5IERy
YWdvcyBBY29zdGFjaGlvYWllIDxkcmFnb3NAaW5hbWUuY29tPg0KICAqLw0K
IA0KICNpbmNsdWRlIDxsaW51eC9tYWxsb2MuaD4NCkBAIC0xMiw2ICsxNCw3
IEBADQogI2luY2x1ZGUgPGxpbnV4L3NtcF9sb2NrLmg+DQogI2luY2x1ZGUg
PGxpbnV4L2luaXQuaD4NCiAjaW5jbHVkZSA8bGludXgvdm1hbGxvYy5oPg0K
KyNpbmNsdWRlIDxsaW51eC9wcm9jX2ZzLmg+DQogDQogI2luY2x1ZGUgPGFz
bS91YWNjZXNzLmg+DQogI2luY2x1ZGUgPGFzbS9wZ3RhYmxlLmg+DQpAQCAt
MjYsNiArMjksOSBAQA0KIHN0YXRpYyB2b2lkIHNobV9jbG9zZSAoc3RydWN0
IHZtX2FyZWFfc3RydWN0ICpzaG1kKTsNCiBzdGF0aWMgdW5zaWduZWQgbG9u
ZyBzaG1fbm9wYWdlKHN0cnVjdCB2bV9hcmVhX3N0cnVjdCAqLCB1bnNpZ25l
ZCBsb25nLCBpbnQpOw0KIHN0YXRpYyBpbnQgc2htX3N3YXBvdXQoc3RydWN0
IHZtX2FyZWFfc3RydWN0ICosIHN0cnVjdCBwYWdlICopOw0KKyNpZmRlZiBD
T05GSUdfUFJPQ19GUw0KK3N0YXRpYyBpbnQgc3lzdmlwY19zaG1fcmVhZF9w
cm9jKGNoYXIgKmJ1ZmZlciwgY2hhciAqKnN0YXJ0LCBvZmZfdCBvZmZzZXQs
IGludCBsZW5ndGgsIGludCAqZW9mLCB2b2lkICpkYXRhKTsNCisjZW5kaWYN
CiANCiBzdGF0aWMgaW50IHNobV90b3QgPSAwOyAvKiB0b3RhbCBudW1iZXIg
b2Ygc2hhcmVkIG1lbW9yeSBwYWdlcyAqLw0KIHN0YXRpYyBpbnQgc2htX3Jz
cyA9IDA7IC8qIG51bWJlciBvZiBzaGFyZWQgbWVtb3J5IHBhZ2VzIHRoYXQg
YXJlIGluIG1lbW9yeSAqLw0KQEAgLTQ0LDExICs1MCwxOCBAQA0KIHZvaWQg
X19pbml0IHNobV9pbml0ICh2b2lkKQ0KIHsNCiAJaW50IGlkOw0KKyNpZmRl
ZiBDT05GSUdfUFJPQ19GUw0KKwlzdHJ1Y3QgcHJvY19kaXJfZW50cnkgKmVu
dDsNCisjZW5kaWYNCiANCiAJZm9yIChpZCA9IDA7IGlkIDwgU0hNTU5JOyBp
ZCsrKQ0KIAkJc2htX3NlZ3NbaWRdID0gKHN0cnVjdCBzaG1pZF9rZXJuZWwg
KikgSVBDX1VOVVNFRDsNCiAJc2htX3RvdCA9IHNobV9yc3MgPSBzaG1fc2Vx
ID0gbWF4X3NobWlkID0gdXNlZF9zZWdzID0gMDsNCiAJaW5pdF93YWl0cXVl
dWVfaGVhZCgmc2htX2xvY2spOw0KKyNpZmRlZiBDT05GSUdfUFJPQ19GUw0K
KwllbnQgPSBjcmVhdGVfcHJvY19lbnRyeSgic3lzdmlwYy9zaG0iLCAwLCAw
KTsNCisJZW50LT5yZWFkX3Byb2MgPSBzeXN2aXBjX3NobV9yZWFkX3Byb2M7
DQorI2VuZGlmDQogCXJldHVybjsNCiB9DQogDQpAQCAtNzYyLDMgKzc3NSw1
MCBAQA0KIAkJCQkJcmV0dXJuOw0KIAkJCQl9DQogfQ0KKw0KKyNpZmRlZiBD
T05GSUdfUFJPQ19GUw0KK3N0YXRpYyBpbnQgc3lzdmlwY19zaG1fcmVhZF9w
cm9jKGNoYXIgKmJ1ZmZlciwgY2hhciAqKnN0YXJ0LCBvZmZfdCBvZmZzZXQs
IGludCBsZW5ndGgsIGludCAqZW9mLCB2b2lkICpkYXRhKQ0KK3sNCisJb2Zm
X3QgcG9zID0gMDsNCisJb2ZmX3QgYmVnaW4gPSAwOw0KKwlpbnQgaSwgbGVu
ID0gMDsNCisNCisgICAgCWxlbiArPSBzcHJpbnRmKGJ1ZmZlciwgIiAgICAg
ICBrZXkgICAgICBzaG1pZCBwZXJtcyAgICAgICBzaXplICBjcGlkICBscGlk
IG5hdHRjaCAgIHVpZCAgIGdpZCAgY3VpZCAgY2dpZCAgICAgIGF0aW1lICAg
ICAgZHRpbWUgICAgICBjdGltZVxuIik7DQorDQorICAgIAlmb3IoaSA9IDA7
IGkgPCBTSE1NTkk7IGkrKykNCisJCWlmKHNobV9zZWdzW2ldICE9IElQQ19V
TlVTRUQpIHsNCisJICAgIAkJbGVuICs9IHNwcmludGYoYnVmZmVyICsgbGVu
LCAiJTEwZCAlMTBkICAlNG8gJTEwZCAlNXUgJTV1ICAlNWQgJTV1ICU1dSAl
NXUgJTV1ICUxMGx1ICUxMGx1ICUxMGx1XG4iLA0KKwkJCXNobV9zZWdzW2ld
LT51LnNobV9wZXJtLmtleSwNCisJCQlzaG1fc2Vnc1tpXS0+dS5zaG1fcGVy
bS5zZXEgKiBTSE1NTkkgKyBpLA0KKwkJCXNobV9zZWdzW2ldLT51LnNobV9w
ZXJtLm1vZGUsDQorCQkJc2htX3NlZ3NbaV0tPnUuc2htX3NlZ3N6LA0KKwkJ
CXNobV9zZWdzW2ldLT51LnNobV9jcGlkLA0KKwkJCXNobV9zZWdzW2ldLT51
LnNobV9scGlkLA0KKwkJCXNobV9zZWdzW2ldLT51LnNobV9uYXR0Y2gsDQor
CQkJc2htX3NlZ3NbaV0tPnUuc2htX3Blcm0udWlkLA0KKwkJCXNobV9zZWdz
W2ldLT51LnNobV9wZXJtLmdpZCwNCisJCQlzaG1fc2Vnc1tpXS0+dS5zaG1f
cGVybS5jdWlkLA0KKwkJCXNobV9zZWdzW2ldLT51LnNobV9wZXJtLmNnaWQs
DQorCQkJc2htX3NlZ3NbaV0tPnUuc2htX2F0aW1lLA0KKwkJCXNobV9zZWdz
W2ldLT51LnNobV9kdGltZSwNCisJCQlzaG1fc2Vnc1tpXS0+dS5zaG1fY3Rp
bWUpOw0KKw0KKwkJCXBvcyArPSBsZW47DQorCQkJaWYocG9zIDwgb2Zmc2V0
KSB7DQorCQkJCWxlbiA9IDA7DQorCQkJCWJlZ2luID0gcG9zOw0KKwkJCX0N
CisJCQlpZihwb3MgPiBvZmZzZXQgKyBsZW5ndGgpDQorCQkJCWdvdG8gZG9u
ZTsNCisJCX0NCisJKmVvZiA9IDE7DQorZG9uZToNCisJKnN0YXJ0ID0gYnVm
ZmVyICsgKG9mZnNldCAtIGJlZ2luKTsNCisJbGVuIC09IChvZmZzZXQgLSBi
ZWdpbik7DQorCWlmKGxlbiA+IGxlbmd0aCkNCisJCWxlbiA9IGxlbmd0aDsN
CisJaWYobGVuIDwgMCkNCisJCWxlbiA9IDA7DQorCXJldHVybiBsZW47DQor
fQ0KKyNlbmRpZg0K
--8323328-1101431981-927042368=:1181--

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/