NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: kern/48708: i915drmkms(4): Can't probe dual-link LVDS setting.



The following reply was made to PR kern/48708; it has been noted by GNATS.

From: NONAKA Kimihiro <nonakap%gmail.com@localhost>
To: gnats-bugs%netbsd.org@localhost
Cc: Taylor R Campbell <riastradh%netbsd.org@localhost>, 
gnats-admin%netbsd.org@localhost, netbsd-bugs%netbsd.org@localhost
Subject: Re: kern/48708: i915drmkms(4): Can't probe dual-link LVDS setting.
Date: Thu, 24 Apr 2014 22:24:00 +0900

 --20cf3011db9d1a5e2104f7c9c32c
 Content-Type: text/plain; charset=ISO-8859-1
 
 Hi,
 
 2014-04-24 4:50 GMT+09:00 Taylor R Campbell <riastradh%netbsd.org@localhost>:
 
 >  Right above the code you added in your patch, there is an `#ifndef
 >  __NetBSD__' block with a conditional on dmi_check_system.  Does the
 >  body of the conditional work for you?  If so, we should just adapt
 >  dmi_check_system to NetBSD rather than duplicating the code.  If not,
 >  it seems to me intel_opregion.c is probably incorrectly computing the
 >  offsets, and that should be fixed.
 
 Where can I find dmi_check_system() in NetBSD repository? ;-)
 
 I tested with attached new patch without previous patch.
 dmi_check_system code block seems to work fine for me.
 I think my previous patch is not need, too.
 
 Regards,
 -- 
 NONAKA Kimihiro
 
 --20cf3011db9d1a5e2104f7c9c32c
 Content-Type: text/plain; charset=US-ASCII; name="drm2-dmi.diff"
 Content-Disposition: attachment; filename="drm2-dmi.diff"
 Content-Transfer-Encoding: base64
 X-Attachment-Id: f_hue2oxcd0
 
 SW5kZXg6IHN5cy9leHRlcm5hbC9ic2QvZHJtMi9kaXN0L2RybS9pOTE1L2ludGVsX2Jpb3MuYwo9
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09ClJDUyBmaWxlOiAvY3Zzcm9vdC9zcmMvc3lzL2V4dGVybmFsL2JzZC9kcm0yL2Rp
 c3QvZHJtL2k5MTUvaW50ZWxfYmlvcy5jLHYKcmV0cmlldmluZyByZXZpc2lvbiAxLjIKZGlmZiAt
 dSAtcjEuMiBpbnRlbF9iaW9zLmMKLS0tIHN5cy9leHRlcm5hbC9ic2QvZHJtMi9kaXN0L2RybS9p
 OTE1L2ludGVsX2Jpb3MuYwkxOCBNYXIgMjAxNCAxODoyMDo0MiAtMDAwMAkxLjIKKysrIHN5cy9l
 eHRlcm5hbC9ic2QvZHJtMi9kaXN0L2RybS9pOTE1L2ludGVsX2Jpb3MuYwkyNCBBcHIgMjAxNCAx
 MzowNzoyNyAtMDAwMApAQCAtNjYyLDcgKzY2Miw2IEBACiAJRFJNX0RFQlVHX0tNUygiU2V0IGRl
 ZmF1bHQgdG8gU1NDIGF0ICVkTUh6XG4iLCBkZXZfcHJpdi0+bHZkc19zc2NfZnJlcSk7CiB9CiAK
 LSNpZm5kZWYgX19OZXRCU0RfXwkJLyogWFhYIGRtaSBoYWNrICovCiBzdGF0aWMgaW50IF9faW5p
 dCBpbnRlbF9ub19vcHJlZ2lvbl92YnRfY2FsbGJhY2soY29uc3Qgc3RydWN0IGRtaV9zeXN0ZW1f
 aWQgKmlkKQogewogCURSTV9ERUJVR19LTVMoIkZhbGxpbmcgYmFjayB0byBtYW51YWxseSByZWFk
 aW5nIFZCVCBmcm9tICIKQEAgLTY4MCw5ICs2NzksOCBAQAogCQkJRE1JX01BVENIKERNSV9QUk9E
 VUNUX05BTUUsICI5NzAyN1JHIiksCiAJCX0sCiAJfSwKLQl7IH0KKwl7IDAsIH0KIH07Ci0jZW5k
 aWYKIAogLyoqCiAgKiBpbnRlbF9wYXJzZV9iaW9zIC0gZmluZCBWQlQgYW5kIGluaXRpYWxpemUg
 c2V0dGluZ3MgZnJvbSB0aGUgQklPUwpAQCAtNzA2LDcgKzcwNCw2IEBACiAKIAlpbml0X3ZidF9k
 ZWZhdWx0cyhkZXZfcHJpdik7CiAKLSNpZm5kZWYgX19OZXRCU0RfXwkJLyogWFhYIGRtaSBoYWNr
 ICovCiAJLyogWFhYIFNob3VsZCB0aGlzIHZhbGlkYXRpb24gYmUgbW92ZWQgdG8gaW50ZWxfb3By
 ZWdpb24uYz8gKi8KIAlpZiAoIWRtaV9jaGVja19zeXN0ZW0oaW50ZWxfbm9fb3ByZWdpb25fdmJ0
 KSAmJiBkZXZfcHJpdi0+b3ByZWdpb24udmJ0KSB7CiAJCXN0cnVjdCB2YnRfaGVhZGVyICp2YnQg
 PSBkZXZfcHJpdi0+b3ByZWdpb24udmJ0OwpAQCAtNzE3LDcgKzcxNCw2IEBACiAJCX0gZWxzZQog
 CQkJZGV2X3ByaXYtPm9wcmVnaW9uLnZidCA9IE5VTEw7CiAJfQotI2VuZGlmCiAKIAlpZiAoYmRi
 ID09IE5VTEwpIHsKIAkJc3RydWN0IHZidF9oZWFkZXIgKnZidCA9IE5VTEw7CkluZGV4OiBzeXMv
 ZXh0ZXJuYWwvYnNkL2RybTIvaW5jbHVkZS9saW51eC9kbWkuaAo9PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxl
 OiAvY3Zzcm9vdC9zcmMvc3lzL2V4dGVybmFsL2JzZC9kcm0yL2luY2x1ZGUvbGludXgvZG1pLmgs
 dgpyZXRyaWV2aW5nIHJldmlzaW9uIDEuMgpkaWZmIC11IC1yMS4yIGRtaS5oCi0tLSBzeXMvZXh0
 ZXJuYWwvYnNkL2RybTIvaW5jbHVkZS9saW51eC9kbWkuaAkxOCBNYXIgMjAxNCAxODoyMDo0MyAt
 MDAwMAkxLjIKKysrIHN5cy9leHRlcm5hbC9ic2QvZHJtMi9pbmNsdWRlL2xpbnV4L2RtaS5oCTI0
 IEFwciAyMDE0IDEzOjA3OjI3IC0wMDAwCkBAIC0zMiw0ICszMiw0MiBAQAogI2lmbmRlZiBfTElO
 VVhfRE1JX0hfCiAjZGVmaW5lIF9MSU5VWF9ETUlfSF8KIAorZW51bSBkbWlfZmllbGQgeworCURN
 SV9OT05FLAorCURNSV9CSU9TX1ZFTkRPUiwKKwlETUlfQklPU19WRVJTSU9OLAorCURNSV9CSU9T
 X0RBVEUsCisJRE1JX1NZU19WRU5ET1IsCisJRE1JX1BST0RVQ1RfTkFNRSwKKwlETUlfUFJPRFVD
 VF9WRVJTSU9OLAorCURNSV9QUk9EVUNUX1NFUklBTCwKKwlETUlfUFJPRFVDVF9VVUlELAorCURN
 SV9CT0FSRF9WRU5ET1IsCisJRE1JX0JPQVJEX05BTUUsCisJRE1JX0JPQVJEX1ZFUlNJT04sCisJ
 RE1JX0JPQVJEX1NFUklBTCwKKwlETUlfQk9BUkRfQVNTRVRfVEFHLAorCURNSV9DSEFTU0lTX1ZF
 TkRPUiwKKwlETUlfQ0hBU1NJU19UWVBFLAorCURNSV9DSEFTU0lTX1ZFUlNJT04sCisJRE1JX0NI
 QVNTSVNfU0VSSUFMLAorCURNSV9DSEFTU0lTX0FTU0VUX1RBRywKKwlETUlfU1RSSU5HX01BWAor
 fTsKKworc3RydWN0IGRtaV9zdHJtYXRjaCB7CisJdW5zaWduZWQgY2hhciBzbG90OworCWNoYXIg
 c3Vic3RyWzc5XTsKK307CisKK3N0cnVjdCBkbWlfc3lzdGVtX2lkIHsKKwlpbnQgKCpjYWxsYmFj
 aykoY29uc3Qgc3RydWN0IGRtaV9zeXN0ZW1faWQgKik7CisJY29uc3QgY2hhciAqaWRlbnQ7CisJ
 c3RydWN0IGRtaV9zdHJtYXRjaCBtYXRjaGVzWzRdOworfTsKKyNkZWZpbmUgRE1JX01BVENIKGEs
 IGIpCQl7KGEpLCAoYil9CisjZGVmaW5lIERNSV9FWEFDVF9NQVRDSChhLCBiKQl7KGEpLCAoYil9
 CisKK2ludCBkbWlfY2hlY2tfc3lzdGVtKGNvbnN0IHN0cnVjdCBkbWlfc3lzdGVtX2lkICpsaXN0
 KTsKKwogI2VuZGlmICAvKiBfTElOVVhfRE1JX0hfICovCkluZGV4OiBzeXMvZXh0ZXJuYWwvYnNk
 L2RybTIvaW5jbHVkZS9saW51eC9pbml0LmgKPT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQpSQ1MgZmlsZTogL2N2c3Jvb3Qv
 c3JjL3N5cy9leHRlcm5hbC9ic2QvZHJtMi9pbmNsdWRlL2xpbnV4L2luaXQuaCx2CnJldHJpZXZp
 bmcgcmV2aXNpb24gMS4yCmRpZmYgLXUgLXIxLjIgaW5pdC5oCi0tLSBzeXMvZXh0ZXJuYWwvYnNk
 L2RybTIvaW5jbHVkZS9saW51eC9pbml0LmgJMTggTWFyIDIwMTQgMTg6MjA6NDMgLTAwMDAJMS4y
 CisrKyBzeXMvZXh0ZXJuYWwvYnNkL2RybTIvaW5jbHVkZS9saW51eC9pbml0LmgJMjQgQXByIDIw
 MTQgMTM6MDc6MjcgLTAwMDAKQEAgLTMyLDQgKzMyLDYgQEAKICNpZm5kZWYgX0xJTlVYX0lOSVRf
 SF8KICNkZWZpbmUgX0xJTlVYX0lOSVRfSF8KIAorI2RlZmluZSBfX2luaXQKKwogI2VuZGlmICAv
 KiBfTElOVVhfSU5JVF9IXyAqLwpJbmRleDogc3lzL2V4dGVybmFsL2JzZC9kcm0yL2xpbnV4L2Zp
 bGVzLmRybWttc19saW51eAo9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT09PT09PT09PT09ClJDUyBmaWxlOiAvY3Zzcm9vdC9zcmMvc3lzL2V4
 dGVybmFsL2JzZC9kcm0yL2xpbnV4L2ZpbGVzLmRybWttc19saW51eCx2CnJldHJpZXZpbmcgcmV2
 aXNpb24gMS40CmRpZmYgLXUgLXIxLjQgZmlsZXMuZHJta21zX2xpbnV4Ci0tLSBzeXMvZXh0ZXJu
 YWwvYnNkL2RybTIvbGludXgvZmlsZXMuZHJta21zX2xpbnV4CTEgQXByIDIwMTQgMTU6MDg6NTgg
 LTAwMDAJMS40CisrKyBzeXMvZXh0ZXJuYWwvYnNkL2RybTIvbGludXgvZmlsZXMuZHJta21zX2xp
 bnV4CTI0IEFwciAyMDE0IDEzOjA3OjI3IC0wMDAwCkBAIC01LDYgKzUsNyBAQAogbWFrZW9wdGlv
 bnMgCWRybWttc19saW51eAlDUFBGTEFHUys9Ii1JJFMvZXh0ZXJuYWwvYnNkL2RybTIvaW5jbHVk
 ZSIKIG1ha2VvcHRpb25zIAlkcm1rbXNfbGludXgJQ1BQRkxBR1MrPSItSSRTL2V4dGVybmFsL2Jz
 ZC9jb21tb24vaW5jbHVkZSIKIAorZmlsZQlleHRlcm5hbC9ic2QvZHJtMi9saW51eC9saW51eF9k
 bWkuYwkJZHJta21zX2xpbnV4CiBmaWxlCWV4dGVybmFsL2JzZC9kcm0yL2xpbnV4L2xpbnV4X2dm
 cC5jCQlkcm1rbXNfbGludXgKIGZpbGUJZXh0ZXJuYWwvYnNkL2RybTIvbGludXgvbGludXhfa21h
 cC5jCQlkcm1rbXNfbGludXgKIGZpbGUJZXh0ZXJuYWwvYnNkL2RybTIvbGludXgvbGludXhfaTJj
 LmMJCWRybWttc19saW51eApJbmRleDogc3lzL2V4dGVybmFsL2JzZC9kcm0yL2xpbnV4L2xpbnV4
 X2RtaS5jCj09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09
 PT09PT09PT09PT09PT09PT0KUkNTIGZpbGU6IHN5cy9leHRlcm5hbC9ic2QvZHJtMi9saW51eC9s
 aW51eF9kbWkuYwpkaWZmIC1OIHN5cy9leHRlcm5hbC9ic2QvZHJtMi9saW51eC9saW51eF9kbWku
 YwotLS0gL2Rldi9udWxsCTEgSmFuIDE5NzAgMDA6MDA6MDAgLTAwMDAKKysrIHN5cy9leHRlcm5h
 bC9ic2QvZHJtMi9saW51eC9saW51eF9kbWkuYwkyNCBBcHIgMjAxNCAxMzowNzoyNyAtMDAwMApA
 QCAtMCwwICsxLDEyMCBAQAorLyoJJE5ldEJTRCQJKi8KKworLyotCisgKiBDb3B5cmlnaHQgKEMp
 IDIwMTQgTk9OQUtBIEtpbWloaXJvIDxub25ha2FAbmV0YnNkLm9yZz4KKyAqIEFsbCByaWdodHMg
 cmVzZXJ2ZWQuCisgKgorICogUmVkaXN0cmlidXRpb24gYW5kIHVzZSBpbiBzb3VyY2UgYW5kIGJp
 bmFyeSBmb3Jtcywgd2l0aCBvciB3aXRob3V0CisgKiBtb2RpZmljYXRpb24sIGFyZSBwZXJtaXR0
 ZWQgcHJvdmlkZWQgdGhhdCB0aGUgZm9sbG93aW5nIGNvbmRpdGlvbnMKKyAqIGFyZSBtZXQ6Cisg
 KiAxLiBSZWRpc3RyaWJ1dGlvbnMgb2Ygc291cmNlIGNvZGUgbXVzdCByZXRhaW4gdGhlIGFib3Zl
 IGNvcHlyaWdodAorICogICAgbm90aWNlLCB0aGlzIGxpc3Qgb2YgY29uZGl0aW9ucyBhbmQgdGhl
 IGZvbGxvd2luZyBkaXNjbGFpbWVyLgorICogMi4gUmVkaXN0cmlidXRpb25zIGluIGJpbmFyeSBm
 b3JtIG11c3QgcmVwcm9kdWNlIHRoZSBhYm92ZSBjb3B5cmlnaHQKKyAqICAgIG5vdGljZSwgdGhp
 cyBsaXN0IG9mIGNvbmRpdGlvbnMgYW5kIHRoZSBmb2xsb3dpbmcgZGlzY2xhaW1lciBpbiB0aGUK
 KyAqICAgIGRvY3VtZW50YXRpb24gYW5kL29yIG90aGVyIG1hdGVyaWFscyBwcm92aWRlZCB3aXRo
 IHRoZSBkaXN0cmlidXRpb24uCisgKgorICogVEhJUyBTT0ZUV0FSRSBJUyBQUk9WSURFRCBCWSBU
 SEUgQVVUSE9SIGBgQVMgSVMnJyBBTkQgQU5ZIEVYUFJFU1MgT1IKKyAqIElNUExJRUQgV0FSUkFO
 VElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8sIFRIRSBJTVBMSUVEIFdBUlJBTlRJ
 RVMKKyAqIE9GIE1FUkNIQU5UQUJJTElUWSBBTkQgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBV
 UlBPU0UgQVJFIERJU0NMQUlNRUQuCisgKiBJTiBOTyBFVkVOVCBTSEFMTCBUSEUgQVVUSE9SIEJF
 IExJQUJMRSBGT1IgQU5ZIERJUkVDVCwgSU5ESVJFQ1QsCisgKiBJTkNJREVOVEFMLCBTUEVDSUFM
 LCBFWEVNUExBUlksIE9SIENPTlNFUVVFTlRJQUwgREFNQUdFUyAoSU5DTFVESU5HLCBCVVQKKyAq
 IE5PVCBMSU1JVEVEIFRPLCBQUk9DVVJFTUVOVCBPRiBTVUJTVElUVVRFIEdPT0RTIE9SIFNFUlZJ
 Q0VTOyBMT1NTIE9GIFVTRSwKKyAqIERBVEEsIE9SIFBST0ZJVFM7IE9SIEJVU0lORVNTIElOVEVS
 UlVQVElPTikgSE9XRVZFUiBDQVVTRUQgQU5EIE9OIEFOWQorICogVEhFT1JZIE9GIExJQUJJTElU
 WSwgV0hFVEhFUiBJTiBDT05UUkFDVCwgU1RSSUNUIExJQUJJTElUWSwgT1IgVE9SVAorICogKElO
 Q0xVRElORyBORUdMSUdFTkNFIE9SIE9USEVSV0lTRSkgQVJJU0lORyBJTiBBTlkgV0FZIE9VVCBP
 RiBUSEUgVVNFIE9GCisgKiBUSElTIFNPRlRXQVJFLCBFVkVOIElGIEFEVklTRUQgT0YgVEhFIFBP
 U1NJQklMSVRZIE9GIFNVQ0ggREFNQUdFLgorICovCisKKyNpbmNsdWRlIDxzeXMvY2RlZnMuaD4K
 K19fS0VSTkVMX1JDU0lEKDAsICIkTmV0QlNEJCIpOworCisjaW5jbHVkZSA8c3lzL3BhcmFtLmg+
 CisjaW5jbHVkZSA8c3lzL3R5cGVzLmg+CisjaW5jbHVkZSA8c3lzL3BtZi5oPgorCisjaW5jbHVk
 ZSA8bGludXgvZG1pLmg+CisKK3N0YXRpYyBib29sCitkbWlfZm91bmQoY29uc3Qgc3RydWN0IGRt
 aV9zeXN0ZW1faWQgKmRzaSkKK3sKKwljb25zdCBjaGFyICpwOworCWludCBpLCBzbG90OworCisJ
 Zm9yIChpID0gMDsgaSA8IF9fYXJyYXljb3VudChkc2ktPm1hdGNoZXMpOyBpKyspIHsKKwkJcCA9
 IE5VTEw7CisJCXNsb3QgPSBkc2ktPm1hdGNoZXNbaV0uc2xvdDsKKwkJc3dpdGNoIChzbG90KSB7
 CisJCWNhc2UgRE1JX05PTkU6CisJCQljb250aW51ZTsKKwkJY2FzZSBETUlfQklPU19WRU5ET1I6
 CisJCQlwID0gcG1mX2dldF9wbGF0Zm9ybSgiYmlvcy12ZW5kb3IiKTsKKwkJCWJyZWFrOworCQlj
 YXNlIERNSV9CSU9TX1ZFUlNJT046CisJCQlwID0gcG1mX2dldF9wbGF0Zm9ybSgiYmlvcy12ZXJz
 aW9uIik7CisJCQlicmVhazsKKwkJY2FzZSBETUlfQklPU19EQVRFOgorCQkJcCA9IHBtZl9nZXRf
 cGxhdGZvcm0oImJpb3MtZGF0ZSIpOworCQkJYnJlYWs7CisJCWNhc2UgRE1JX1NZU19WRU5ET1I6
 CisJCQlwID0gcG1mX2dldF9wbGF0Zm9ybSgic3lzdGVtLXZlbmRvciIpOworCQkJYnJlYWs7CisJ
 CWNhc2UgRE1JX1BST0RVQ1RfTkFNRToKKwkJCXAgPSBwbWZfZ2V0X3BsYXRmb3JtKCJzeXN0ZW0t
 cHJvZHVjdCIpOworCQkJYnJlYWs7CisJCWNhc2UgRE1JX1BST0RVQ1RfVkVSU0lPTjoKKwkJCXAg
 PSBwbWZfZ2V0X3BsYXRmb3JtKCJzeXN0ZW0tdmVyc2lvbiIpOworCQkJYnJlYWs7CisJCWNhc2Ug
 RE1JX1BST0RVQ1RfU0VSSUFMOgorCQkJcCA9IHBtZl9nZXRfcGxhdGZvcm0oInN5c3RlbS1zZXJp
 YWwiKTsKKwkJCWJyZWFrOworCQljYXNlIERNSV9QUk9EVUNUX1VVSUQ6CisJCQlwID0gcG1mX2dl
 dF9wbGF0Zm9ybSgic3lzdGVtLXV1aWQiKTsKKwkJCWJyZWFrOworCQljYXNlIERNSV9CT0FSRF9W
 RU5ET1I6CisJCQlwID0gcG1mX2dldF9wbGF0Zm9ybSgiYm9hcmQtdmVuZG9yIik7CisJCQlicmVh
 azsKKwkJY2FzZSBETUlfQk9BUkRfTkFNRToKKwkJCXAgPSBwbWZfZ2V0X3BsYXRmb3JtKCJib2Fy
 ZC1wcm9kdWN0Iik7CisJCQlicmVhazsKKwkJY2FzZSBETUlfQk9BUkRfVkVSU0lPTjoKKwkJCXAg
 PSBwbWZfZ2V0X3BsYXRmb3JtKCJib2FyZC12ZXJzaW9uIik7CisJCQlicmVhazsKKwkJY2FzZSBE
 TUlfQk9BUkRfU0VSSUFMOgorCQkJcCA9IHBtZl9nZXRfcGxhdGZvcm0oImJvYXJkLXNlcmlhbCIp
 OworCQkJYnJlYWs7CisJCWNhc2UgRE1JX0JPQVJEX0FTU0VUX1RBRzoKKwkJCXAgPSBwbWZfZ2V0
 X3BsYXRmb3JtKCJib2FyZC1hc3NldC10YWciKTsKKwkJCWJyZWFrOworCQljYXNlIERNSV9DSEFT
 U0lTX1ZFTkRPUjoKKwkJY2FzZSBETUlfQ0hBU1NJU19UWVBFOgorCQljYXNlIERNSV9DSEFTU0lT
 X1ZFUlNJT046CisJCWNhc2UgRE1JX0NIQVNTSVNfU0VSSUFMOgorCQljYXNlIERNSV9DSEFTU0lT
 X0FTU0VUX1RBRzoKKwkJCXJldHVybiBmYWxzZTsKKwkJY2FzZSBETUlfU1RSSU5HX01BWDoKKwkJ
 ZGVmYXVsdDoKKwkJCWFwcmludF9lcnJvcigiJXM6IHVua25vd24gRE1JIGZpZWxkKCVkKVxuIiwg
 X19mdW5jX18sCisJCQkgICAgc2xvdCk7CisJCQlyZXR1cm4gZmFsc2U7CisJCX0KKwkJaWYgKHAg
 PT0gTlVMTCB8fCBzdHJjbXAocCwgZHNpLT5tYXRjaGVzW2ldLnN1YnN0cikpCisJCQlyZXR1cm4g
 ZmFsc2U7CisJfQorCXJldHVybiB0cnVlOworfQorCitpbnQKK2RtaV9jaGVja19zeXN0ZW0oY29u
 c3Qgc3RydWN0IGRtaV9zeXN0ZW1faWQgKnN5c2lkKQoreworCWNvbnN0IHN0cnVjdCBkbWlfc3lz
 dGVtX2lkICpkc2k7CisJaW50IG51bSA9IDA7CisKKwlmb3IgKGRzaSA9IHN5c2lkOyBkc2ktPm1h
 dGNoZXNbMF0uc2xvdCAhPSBETUlfTk9ORTsgZHNpKyspIHsKKwkJaWYgKGRtaV9mb3VuZChkc2kp
 KSB7CisJCQludW0rKzsKKwkJCWlmIChkc2ktPmNhbGxiYWNrICYmIGRzaS0+Y2FsbGJhY2soZHNp
 KSkKKwkJCQlicmVhazsKKwkJfQorCX0KKwlyZXR1cm4gbnVtOworfQo=
 --20cf3011db9d1a5e2104f7c9c32c--
 


Home | Main Index | Thread Index | Old Index