Re: Oops in kernel 2.6.32 when unloading ipw2100 (device_pm_remove+0x16)

"Daniele C." <[email protected]> Thu, 12 Nov 2009 12:11:43 +0100
Newsgroups gmane.linux.drivers.ipw2100.devel
Message-ID <[email protected]>
This is a multi-part message in MIME format.
--------------060207060500050302020309
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 7bit

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Zhu Yi ha scritto:
> On Thu, 2009-11-12 at 09:14 +0800, Daniele C. wrote:
>>
>> Zhu Yi ha scritto:
>>> Now follow below steps:
>>>
>>> 1. git-pull linus git repo
>>> 2. patch -p1 < the_patch_in_[1]
>>> 3. recompile the driver
>>>
>> Done. I get the same oops (full dmesg attached); I am available to test a new patch.
>>
>> [1] http://marc.info/?l=linux-wireless&m=125775901909164&w=2
> 
> Please try this patch.
> http://marc.info/?l=linux-wireless&m=125796825803032&w=2
> 
Mission accomplished! ipw2100 works again, it can be loaded/unloaded at will. This is an important feature on laptops because of power saving.

I have attached my current 'git diff', which is the sum of your patch and Matthew Garrett's patch. I hope somebody can soon drive these patches into mainline kernel and prevent some newbies to go nuts.

Best regards,
- --
  Daniele C.

> Thanks,
> -yi
> 
> 
> 

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/

iQEcBAEBAgAGBQJK++1vAAoJEON28As9epPA68MIAJBLjY7XN19QXiZrQZWmtwBR
d2NMte46Ljxhqi7QpdADb7jgsNw/dauovzDndTBRLbmhOALYJdbCsntfuxBTT5OJ
a3s+s3zFOsBb6mmXUkcTny/utZKIbBXIvdvxqvuCAUtkH+f0iZu8ZPzwQRC+jOiA
oiacH56Pq4QH7FO5aY8tY3Thh2tow7Ma4kmNTUbh2Y8cYRPe+dIaJnfCJ64xbKzx
823bZPJRP1iJIpoPPPV0qeHImbJjWluezemHEy7gIDdEL83jD7seg0Y9sfhKQJwv
XnJ49RowA971sfbaTE97CooBs/rWCbtUhCwqWdlqn9b/3WWohteFUEUBTJVsh/Q=
=6j9b
-----END PGP SIGNATURE-----

--------------060207060500050302020309
Content-Type: text/plain;
 name="ipw2100_fixes.patch"
Content-Transfer-Encoding: base64
Content-Disposition: inline;
 filename="ipw2100_fixes.patch"

ZGlmZiAtLWdpdCBhL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2lwdzJ4MDAvaXB3MjEwMC5jIGIv
ZHJpdmVycy9uZXQvd2lyZWxlc3MvaXB3MngwMC9pcHcyMTAwLmMKaW5kZXggMjQwY2ZmMS4u
NWQ3ZmY5NiAxMDA2NDQKLS0tIGEvZHJpdmVycy9uZXQvd2lyZWxlc3MvaXB3MngwMC9pcHcy
MTAwLmMKKysrIGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaXB3MngwMC9pcHcyMTAwLmMKQEAg
LTI5Niw2ICsyOTYsMzMgQEAgc3RhdGljIGNvbnN0IGNoYXIgKmNvbW1hbmRfdHlwZXNbXSA9
IHsKIH07CiAjZW5kaWYKIAorI2RlZmluZSBXRVhUX1VTRUNIQU5ORUxTIDEKKworc3RhdGlj
IGNvbnN0IGxvbmcgaXB3MjEwMF9mcmVxdWVuY2llc1tdID0geworCTI0MTIsIDI0MTcsIDI0
MjIsIDI0MjcsCisJMjQzMiwgMjQzNywgMjQ0MiwgMjQ0NywKKwkyNDUyLCAyNDU3LCAyNDYy
LCAyNDY3LAorCTI0NzIsIDI0ODQKK307CisKKyNkZWZpbmUgRlJFUV9DT1VOVAlBUlJBWV9T
SVpFKGlwdzIxMDBfZnJlcXVlbmNpZXMpCisKK3N0YXRpYyBjb25zdCBsb25nIGlwdzIxMDBf
cmF0ZXNfMTFiW10gPSB7CisJMTAwMDAwMCwKKwkyMDAwMDAwLAorCTU1MDAwMDAsCisJMTEw
MDAwMDAKK307CisKK3N0YXRpYyBzdHJ1Y3QgaWVlZTgwMjExX3JhdGUgaXB3MjEwMF9iZ19y
YXRlc1tdID0geworCXsgLmJpdHJhdGUgPSAxMCB9LAorCXsgLmJpdHJhdGUgPSAyMCwgLmZs
YWdzID0gSUVFRTgwMjExX1JBVEVfU0hPUlRfUFJFQU1CTEUgfSwKKwl7IC5iaXRyYXRlID0g
NTUsIC5mbGFncyA9IElFRUU4MDIxMV9SQVRFX1NIT1JUX1BSRUFNQkxFIH0sCisJeyAuYml0
cmF0ZSA9IDExMCwgLmZsYWdzID0gSUVFRTgwMjExX1JBVEVfU0hPUlRfUFJFQU1CTEUgfSwK
K307CisKKyNkZWZpbmUgUkFURV9DT1VOVCBBUlJBWV9TSVpFKGlwdzIxMDBfcmF0ZXNfMTFi
KQorCiAvKiBQcmUtZGVjbCB1bnRpbCB3ZSBnZXQgdGhlIGNvZGUgc29saWQgYW5kIHRoZW4g
d2UgY2FuIGNsZWFuIGl0IHVwICovCiBzdGF0aWMgdm9pZCBpcHcyMTAwX3R4X3NlbmRfY29t
bWFuZHMoc3RydWN0IGlwdzIxMDBfcHJpdiAqcHJpdik7CiBzdGF0aWMgdm9pZCBpcHcyMTAw
X3R4X3NlbmRfZGF0YShzdHJ1Y3QgaXB3MjEwMF9wcml2ICpwcml2KTsKQEAgLTExNDEsNiAr
MTE2OCw3IEBAIHN0YXRpYyBpbnQgcmZfa2lsbF9hY3RpdmUoc3RydWN0IGlwdzIxMDBfcHJp
diAqcHJpdikKIAlpbnQgaTsKIAogCWlmICghKHByaXYtPmh3X2ZlYXR1cmVzICYgSFdfRkVB
VFVSRV9SRktJTEwpKSB7CisJCXdpcGh5X3Jma2lsbF9zZXRfaHdfc3RhdGUocHJpdi0+aWVl
ZS0+d2Rldi53aXBoeSwgZmFsc2UpOwogCQlwcml2LT5zdGF0dXMgJj0gflNUQVRVU19SRl9L
SUxMX0hXOwogCQlyZXR1cm4gMDsKIAl9CkBAIC0xMTUxLDEwICsxMTc5LDEzIEBAIHN0YXRp
YyBpbnQgcmZfa2lsbF9hY3RpdmUoc3RydWN0IGlwdzIxMDBfcHJpdiAqcHJpdikKIAkJdmFs
dWUgPSAodmFsdWUgPDwgMSkgfCAoKHJlZyAmIElQV19CSVRfR1BJT19SRl9LSUxMKSA/IDAg
OiAxKTsKIAl9CiAKLQlpZiAodmFsdWUgPT0gMCkKKwlpZiAodmFsdWUgPT0gMCkgeworCQl3
aXBoeV9yZmtpbGxfc2V0X2h3X3N0YXRlKHByaXYtPmllZWUtPndkZXYud2lwaHksIHRydWUp
OwogCQlwcml2LT5zdGF0dXMgfD0gU1RBVFVTX1JGX0tJTExfSFc7Ci0JZWxzZQorCX0gZWxz
ZSB7CisJCXdpcGh5X3Jma2lsbF9zZXRfaHdfc3RhdGUocHJpdi0+aWVlZS0+d2Rldi53aXBo
eSwgZmFsc2UpOwogCQlwcml2LT5zdGF0dXMgJj0gflNUQVRVU19SRl9LSUxMX0hXOworCX0K
IAogCXJldHVybiAodmFsdWUgPT0gMCk7CiB9CkBAIC0xODE0LDEzICsxODQ1LDYgQEAgc3Rh
dGljIGludCBpcHcyMTAwX3VwKHN0cnVjdCBpcHcyMTAwX3ByaXYgKnByaXYsIGludCBkZWZl
cnJlZCkKIAlyZXR1cm4gcmM7CiB9CiAKLS8qIENhbGxlZCBieSByZWdpc3Rlcl9uZXRkZXYo
KSAqLwotc3RhdGljIGludCBpcHcyMTAwX25ldF9pbml0KHN0cnVjdCBuZXRfZGV2aWNlICpk
ZXYpCi17Ci0Jc3RydWN0IGlwdzIxMDBfcHJpdiAqcHJpdiA9IGxpYmlwd19wcml2KGRldik7
Ci0JcmV0dXJuIGlwdzIxMDBfdXAocHJpdiwgMSk7Ci19Ci0KIHN0YXRpYyB2b2lkIGlwdzIx
MDBfZG93bihzdHJ1Y3QgaXB3MjEwMF9wcml2ICpwcml2KQogewogCXVuc2lnbmVkIGxvbmcg
ZmxhZ3M7CkBAIC0xODc1LDYgKzE4OTksNjQgQEAgc3RhdGljIHZvaWQgaXB3MjEwMF9kb3du
KHN0cnVjdCBpcHcyMTAwX3ByaXYgKnByaXYpCiAJbmV0aWZfc3RvcF9xdWV1ZShwcml2LT5u
ZXRfZGV2KTsKIH0KIAorLyogQ2FsbGVkIGJ5IHJlZ2lzdGVyX25ldGRldigpICovCitzdGF0
aWMgaW50IGlwdzIxMDBfbmV0X2luaXQoc3RydWN0IG5ldF9kZXZpY2UgKmRldikKK3sKKwlz
dHJ1Y3QgaXB3MjEwMF9wcml2ICpwcml2ID0gbGliaXB3X3ByaXYoZGV2KTsKKwljb25zdCBz
dHJ1Y3QgbGliaXB3X2dlbyAqZ2VvID0gbGliaXB3X2dldF9nZW8ocHJpdi0+aWVlZSk7CisJ
c3RydWN0IHdpcmVsZXNzX2RldiAqd2RldiA9ICZwcml2LT5pZWVlLT53ZGV2OworCWludCBy
ZXQ7CisJaW50IGk7CisKKwlyZXQgPSBpcHcyMTAwX3VwKHByaXYsIDEpOworCWlmIChyZXQp
CisJCXJldHVybiByZXQ7CisKKwltZW1jcHkod2Rldi0+d2lwaHktPnBlcm1fYWRkciwgcHJp
di0+bWFjX2FkZHIsIEVUSF9BTEVOKTsKKworCS8qIGZpbGwtb3V0IHByaXYtPmllZWUtPmJn
X2JhbmQgKi8KKwlpZiAoZ2VvLT5iZ19jaGFubmVscykgeworCQlzdHJ1Y3QgaWVlZTgwMjEx
X3N1cHBvcnRlZF9iYW5kICpiZ19iYW5kID0gJnByaXYtPmllZWUtPmJnX2JhbmQ7CisKKwkJ
YmdfYmFuZC0+YmFuZCA9IElFRUU4MDIxMV9CQU5EXzJHSFo7CisJCWJnX2JhbmQtPm5fY2hh
bm5lbHMgPSBnZW8tPmJnX2NoYW5uZWxzOworCQliZ19iYW5kLT5jaGFubmVscyA9CisJCQlr
emFsbG9jKGdlby0+YmdfY2hhbm5lbHMgKgorCQkJCXNpemVvZihzdHJ1Y3QgaWVlZTgwMjEx
X2NoYW5uZWwpLCBHRlBfS0VSTkVMKTsKKwkJLyogdHJhbnNsYXRlIGdlby0+YmcgdG8gYmdf
YmFuZC5jaGFubmVscyAqLworCQlmb3IgKGkgPSAwOyBpIDwgZ2VvLT5iZ19jaGFubmVsczsg
aSsrKSB7CisJCQliZ19iYW5kLT5jaGFubmVsc1tpXS5iYW5kID0gSUVFRTgwMjExX0JBTkRf
MkdIWjsKKwkJCWJnX2JhbmQtPmNoYW5uZWxzW2ldLmNlbnRlcl9mcmVxID0gZ2VvLT5iZ1tp
XS5mcmVxOworCQkJYmdfYmFuZC0+Y2hhbm5lbHNbaV0uaHdfdmFsdWUgPSBnZW8tPmJnW2ld
LmNoYW5uZWw7CisJCQliZ19iYW5kLT5jaGFubmVsc1tpXS5tYXhfcG93ZXIgPSBnZW8tPmJn
W2ldLm1heF9wb3dlcjsKKwkJCWlmIChnZW8tPmJnW2ldLmZsYWdzICYgTElCSVBXX0NIX1BB
U1NJVkVfT05MWSkKKwkJCQliZ19iYW5kLT5jaGFubmVsc1tpXS5mbGFncyB8PQorCQkJCQlJ
RUVFODAyMTFfQ0hBTl9QQVNTSVZFX1NDQU47CisJCQlpZiAoZ2VvLT5iZ1tpXS5mbGFncyAm
IExJQklQV19DSF9OT19JQlNTKQorCQkJCWJnX2JhbmQtPmNoYW5uZWxzW2ldLmZsYWdzIHw9
CisJCQkJCUlFRUU4MDIxMV9DSEFOX05PX0lCU1M7CisJCQlpZiAoZ2VvLT5iZ1tpXS5mbGFn
cyAmIExJQklQV19DSF9SQURBUl9ERVRFQ1QpCisJCQkJYmdfYmFuZC0+Y2hhbm5lbHNbaV0u
ZmxhZ3MgfD0KKwkJCQkJSUVFRTgwMjExX0NIQU5fUkFEQVI7CisJCQkvKiBObyBlcXVpdmFs
ZW50IGZvciBMSUJJUFdfQ0hfODAyMTFIX1JVTEVTLAorCQkJICAgTElCSVBXX0NIX1VOSUZP
Uk1fU1BSRUFESU5HLCBvcgorCQkJICAgTElCSVBXX0NIX0JfT05MWS4uLiAqLworCQl9CisJ
CS8qIHBvaW50IGF0IGJpdHJhdGUgaW5mbyAqLworCQliZ19iYW5kLT5iaXRyYXRlcyA9IGlw
dzIxMDBfYmdfcmF0ZXM7CisJCWJnX2JhbmQtPm5fYml0cmF0ZXMgPSBSQVRFX0NPVU5UOwor
CisJCXdkZXYtPndpcGh5LT5iYW5kc1tJRUVFODAyMTFfQkFORF8yR0haXSA9IGJnX2JhbmQ7
CisJfQorCisJc2V0X3dpcGh5X2Rldih3ZGV2LT53aXBoeSwgJnByaXYtPnBjaV9kZXYtPmRl
dik7CisJaWYgKHdpcGh5X3JlZ2lzdGVyKHdkZXYtPndpcGh5KSkgeworCQlpcHcyMTAwX2Rv
d24ocHJpdik7CisJCXJldHVybiAtRUlPOworCX0KKwlyZXR1cm4gMDsKK30KKwogc3RhdGlj
IHZvaWQgaXB3MjEwMF9yZXNldF9hZGFwdGVyKHN0cnVjdCB3b3JrX3N0cnVjdCAqd29yaykK
IHsKIAlzdHJ1Y3QgaXB3MjEwMF9wcml2ICpwcml2ID0KQEAgLTIwOTAsNiArMjE3Miw3IEBA
IHN0YXRpYyB2b2lkIGlzcl9pbmRpY2F0ZV9yZl9raWxsKHN0cnVjdCBpcHcyMTAwX3ByaXYg
KnByaXYsIHUzMiBzdGF0dXMpCiAJCSAgICAgICBwcml2LT5uZXRfZGV2LT5uYW1lKTsKIAog
CS8qIFJGX0tJTEwgaXMgbm93IGVuYWJsZWQgKGVsc2Ugd2Ugd291bGRuJ3QgYmUgaGVyZSkg
Ki8KKwl3aXBoeV9yZmtpbGxfc2V0X2h3X3N0YXRlKHByaXYtPmllZWUtPndkZXYud2lwaHks
IHRydWUpOwogCXByaXYtPnN0YXR1cyB8PSBTVEFUVVNfUkZfS0lMTF9IVzsKIAogCS8qIE1h
a2Ugc3VyZSB0aGUgUkYgS2lsbCBjaGVjayB0aW1lciBpcyBydW5uaW5nICovCkBAIC02MzI1
LDggKzY0MDgsMTAgQEAgc3RhdGljIGludCBpcHcyMTAwX3BjaV9pbml0X29uZShzdHJ1Y3Qg
cGNpX2RldiAqcGNpX2RldiwKIAogICAgICAgZmFpbDoKIAlpZiAoZGV2KSB7Ci0JCWlmIChy
ZWdpc3RlcmVkKQorCQlpZiAocmVnaXN0ZXJlZCkgewogCQkJdW5yZWdpc3Rlcl9uZXRkZXYo
ZGV2KTsKKwkJCXVucmVnaXN0ZXJfaWVlZTgwMjExKHByaXYtPmllZWUpOworCQl9CiAKIAkJ
aXB3MjEwMF9od19zdG9wX2FkYXB0ZXIocHJpdik7CiAKQEAgLTYzODQsNiArNjQ2OSw3IEBA
IHN0YXRpYyB2b2lkIF9fZGV2ZXhpdCBpcHcyMTAwX3BjaV9yZW1vdmVfb25lKHN0cnVjdCBw
Y2lfZGV2ICpwY2lfZGV2KQogCQkgKiBiZWluZyBjYWxsZWQgaWYgdGhlIGRldmljZSBpcyBv
cGVuLiAgSWYgd2UgZnJlZSBzdG9yYWdlCiAJCSAqIGZpcnN0LCB0aGVuIGNsb3NlKCkgd2ls
bCBjcmFzaC4gKi8KIAkJdW5yZWdpc3Rlcl9uZXRkZXYoZGV2KTsKKwkJdW5yZWdpc3Rlcl9p
ZWVlODAyMTEocHJpdi0+aWVlZSk7CiAKIAkJLyogaXB3MjEwMF9kb3duIHdpbGwgZW5zdXJl
IHRoYXQgdGhlcmUgaXMgbm8gbW9yZSBwZW5kaW5nIHdvcmsKIAkJICogaW4gdGhlIHdvcmtx
dWV1ZSdzLCBzbyB3ZSBjYW4gc2FmZWx5IHJlbW92ZSB0aGVtIG5vdy4gKi8KQEAgLTY2MDEs
MjYgKzY2ODcsNiBAQCBzdGF0aWMgdm9pZCBfX2V4aXQgaXB3MjEwMF9leGl0KHZvaWQpCiBt
b2R1bGVfaW5pdChpcHcyMTAwX2luaXQpOwogbW9kdWxlX2V4aXQoaXB3MjEwMF9leGl0KTsK
IAotI2RlZmluZSBXRVhUX1VTRUNIQU5ORUxTIDEKLQotc3RhdGljIGNvbnN0IGxvbmcgaXB3
MjEwMF9mcmVxdWVuY2llc1tdID0gewotCTI0MTIsIDI0MTcsIDI0MjIsIDI0MjcsCi0JMjQz
MiwgMjQzNywgMjQ0MiwgMjQ0NywKLQkyNDUyLCAyNDU3LCAyNDYyLCAyNDY3LAotCTI0NzIs
IDI0ODQKLX07Ci0KLSNkZWZpbmUgRlJFUV9DT1VOVAlBUlJBWV9TSVpFKGlwdzIxMDBfZnJl
cXVlbmNpZXMpCi0KLXN0YXRpYyBjb25zdCBsb25nIGlwdzIxMDBfcmF0ZXNfMTFiW10gPSB7
Ci0JMTAwMDAwMCwKLQkyMDAwMDAwLAotCTU1MDAwMDAsCi0JMTEwMDAwMDAKLX07Ci0KLSNk
ZWZpbmUgUkFURV9DT1VOVCBBUlJBWV9TSVpFKGlwdzIxMDBfcmF0ZXNfMTFiKQotCiBzdGF0
aWMgaW50IGlwdzIxMDBfd3hfZ2V0X25hbWUoc3RydWN0IG5ldF9kZXZpY2UgKmRldiwKIAkJ
CSAgICAgICBzdHJ1Y3QgaXdfcmVxdWVzdF9pbmZvICppbmZvLAogCQkJICAgICAgIHVuaW9u
IGl3cmVxX2RhdGEgKndycXUsIGNoYXIgKmV4dHJhKQpkaWZmIC0tZ2l0IGEvZHJpdmVycy9u
ZXQvd2lyZWxlc3MvaXB3MngwMC9pcHcyMjAwLmMgYi9kcml2ZXJzL25ldC93aXJlbGVzcy9p
cHcyeDAwL2lwdzIyMDAuYwppbmRleCA4Mjc4MjRkLi5hZTg0NmE3IDEwMDY0NAotLS0gYS9k
cml2ZXJzL25ldC93aXJlbGVzcy9pcHcyeDAwL2lwdzIyMDAuYworKysgYi9kcml2ZXJzL25l
dC93aXJlbGVzcy9pcHcyeDAwL2lwdzIyMDAuYwpAQCAtMTE4MjMsNiArMTE4MjMsNyBAQCBz
dGF0aWMgaW50IF9fZGV2aW5pdCBpcHdfcGNpX3Byb2JlKHN0cnVjdCBwY2lfZGV2ICpwZGV2
LAogCQkJSVBXX0VSUk9SKCJGYWlsZWQgdG8gcmVnaXN0ZXIgcHJvbWlzY3VvdXMgbmV0d29y
ayAiCiAJCQkJICAiZGV2aWNlIChlcnJvciAlZCkuXG4iLCBlcnIpOwogCQkJdW5yZWdpc3Rl
cl9uZXRkZXYocHJpdi0+bmV0X2Rldik7CisJCQl1bnJlZ2lzdGVyX2llZWU4MDIxMShwcml2
LT5pZWVlKTsKIAkJCWdvdG8gb3V0X3JlbW92ZV9zeXNmczsKIAkJfQogCX0KQEAgLTExODcz
LDYgKzExODc0LDcgQEAgc3RhdGljIHZvaWQgX19kZXZleGl0IGlwd19wY2lfcmVtb3ZlKHN0
cnVjdCBwY2lfZGV2ICpwZGV2KQogCW11dGV4X3VubG9jaygmcHJpdi0+bXV0ZXgpOwogCiAJ
dW5yZWdpc3Rlcl9uZXRkZXYocHJpdi0+bmV0X2Rldik7CisJdW5yZWdpc3Rlcl9pZWVlODAy
MTEocHJpdi0+aWVlZSk7CiAKIAlpZiAocHJpdi0+cnhxKSB7CiAJCWlwd19yeF9xdWV1ZV9m
cmVlKHByaXYsIHByaXYtPnJ4cSk7CmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC93aXJlbGVz
cy9pcHcyeDAwL2xpYmlwdy5oIGIvZHJpdmVycy9uZXQvd2lyZWxlc3MvaXB3MngwMC9saWJp
cHcuaAppbmRleCBiZjQ1MzkxLi5mNDJhZGU2IDEwMDY0NAotLS0gYS9kcml2ZXJzL25ldC93
aXJlbGVzcy9pcHcyeDAwL2xpYmlwdy5oCisrKyBiL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2lw
dzJ4MDAvbGliaXB3LmgKQEAgLTEwMjAsNiArMTAyMCw3IEBAIHN0YXRpYyBpbmxpbmUgaW50
IGxpYmlwd19pc19jY2tfcmF0ZSh1OCByYXRlKQogLyogaWVlZTgwMjExLmMgKi8KIGV4dGVy
biB2b2lkIGZyZWVfaWVlZTgwMjExKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIGludCBtb25p
dG9yKTsKIGV4dGVybiBzdHJ1Y3QgbmV0X2RldmljZSAqYWxsb2NfaWVlZTgwMjExKGludCBz
aXplb2ZfcHJpdiwgaW50IG1vbml0b3IpOworZXh0ZXJuIHZvaWQgdW5yZWdpc3Rlcl9pZWVl
ODAyMTEoc3RydWN0IGxpYmlwd19kZXZpY2UgKmllZWUpOwogZXh0ZXJuIGludCBsaWJpcHdf
Y2hhbmdlX210dShzdHJ1Y3QgbmV0X2RldmljZSAqZGV2LCBpbnQgbmV3X210dSk7CiAKIGV4
dGVybiB2b2lkIGxpYmlwd19uZXR3b3Jrc19hZ2Uoc3RydWN0IGxpYmlwd19kZXZpY2UgKmll
ZWUsCmRpZmYgLS1naXQgYS9kcml2ZXJzL25ldC93aXJlbGVzcy9pcHcyeDAwL2xpYmlwd19t
b2R1bGUuYyBiL2RyaXZlcnMvbmV0L3dpcmVsZXNzL2lwdzJ4MDAvbGliaXB3X21vZHVsZS5j
CmluZGV4IGEwZTlmNmEuLmJlNWI4MDkgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvbmV0L3dpcmVs
ZXNzL2lwdzJ4MDAvbGliaXB3X21vZHVsZS5jCisrKyBiL2RyaXZlcnMvbmV0L3dpcmVsZXNz
L2lwdzJ4MDAvbGliaXB3X21vZHVsZS5jCkBAIC0yMzUsMTYgKzIzNSwxOSBAQCB2b2lkIGZy
ZWVfaWVlZTgwMjExKHN0cnVjdCBuZXRfZGV2aWNlICpkZXYsIGludCBtb25pdG9yKQogCWxp
Ymlwd19uZXR3b3Jrc19mcmVlKGllZWUpOwogCiAJLyogZnJlZSBjZmc4MDIxMSByZXNvdXJj
ZXMgKi8KLQlpZiAoIW1vbml0b3IpIHsKLQkJd2lwaHlfdW5yZWdpc3RlcihpZWVlLT53ZGV2
LndpcGh5KTsKLQkJa2ZyZWUoaWVlZS0+YV9iYW5kLmNoYW5uZWxzKTsKLQkJa2ZyZWUoaWVl
ZS0+YmdfYmFuZC5jaGFubmVscyk7CisJaWYgKCFtb25pdG9yKQogCQl3aXBoeV9mcmVlKGll
ZWUtPndkZXYud2lwaHkpOwotCX0KIAogCWZyZWVfbmV0ZGV2KGRldik7CiB9CiAKK3ZvaWQg
dW5yZWdpc3Rlcl9pZWVlODAyMTEoc3RydWN0IGxpYmlwd19kZXZpY2UgKmllZWUpCit7CisJ
d2lwaHlfdW5yZWdpc3RlcihpZWVlLT53ZGV2LndpcGh5KTsKKwlrZnJlZShpZWVlLT5hX2Jh
bmQuY2hhbm5lbHMpOworCWtmcmVlKGllZWUtPmJnX2JhbmQuY2hhbm5lbHMpOworfQorCiAj
aWZkZWYgQ09ORklHX0xJQklQV19ERUJVRwogCiBzdGF0aWMgaW50IGRlYnVnID0gMDsKQEAg
LTMzMCwzICszMzMsNCBAQCBtb2R1bGVfaW5pdChsaWJpcHdfaW5pdCk7CiAKIEVYUE9SVF9T
WU1CT0woYWxsb2NfaWVlZTgwMjExKTsKIEVYUE9SVF9TWU1CT0woZnJlZV9pZWVlODAyMTEp
OworRVhQT1JUX1NZTUJPTCh1bnJlZ2lzdGVyX2llZWU4MDIxMSk7Cg==
--------------060207060500050302020309
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
--------------060207060500050302020309
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
ipw2100-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/ipw2100-devel

--------------060207060500050302020309--