From owner-freebsd-hackers@FreeBSD.ORG Sat Nov 13 04:07:50 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 1781B16A4CE for ; Sat, 13 Nov 2004 04:07:50 +0000 (GMT) Received: from mail.farley.org (farley.org [67.64.95.201]) by mx1.FreeBSD.org (Postfix) with ESMTP id 2494843D45 for ; Sat, 13 Nov 2004 04:07:49 +0000 (GMT) (envelope-from sean-freebsd@farley.org) Received: from thor.farley.org (vbsi9ln41f2gadmt@thor.farley.org [IPv6:2001:470:1f01:290:1::5]) by mail.farley.org (8.13.1/8.13.1) with ESMTP id iAD47i1r002227; Fri, 12 Nov 2004 22:07:44 -0600 (CST) (envelope-from sean-freebsd@farley.org) Received: from thor.farley.org (localhost [127.0.0.1]) by thor.farley.org (8.13.1/8.13.1) with ESMTP id iAD47ic2002115; Fri, 12 Nov 2004 22:07:44 -0600 (CST) (envelope-from sean-freebsd@farley.org) Received: from localhost (sean@localhost)iAD47h31002109; Fri, 12 Nov 2004 22:07:43 -0600 (CST) (envelope-from sean-freebsd@farley.org) X-Authentication-Warning: thor.farley.org: sean owned process doing -bs Date: Fri, 12 Nov 2004 22:07:43 -0600 (CST) From: Sean Farley X-X-Sender: sean@thor.farley.org To: Matthew Dillon In-Reply-To: <200411110651.iAB6pekO065188@apollo.backplane.com> Message-ID: <20041112212917.L1667@thor.farley.org> References: <200411101801.iAAI1SkK061883@apollo.backplane.com> <200411110651.iAB6pekO065188@apollo.backplane.com> MIME-Version: 1.0 Content-Type: MULTIPART/MIXED; BOUNDARY="0-1969289673-1100318863=:1883" cc: freebsd-hackers@freebsd.org Subject: Re: bugs in contigmalloc*() related to "page not found in hash" panics X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 13 Nov 2004 04:07:50 -0000 This message is in MIME format. The first part should be readable text, while the remaining parts are likely unreadable without MIME-aware tools. --0-1969289673-1100318863=:1883 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed On Wed, 10 Nov 2004, Matthew Dillon wrote: > :> Here is the DragonFly commit. > :> > :> http://www.dragonflybsd.org/cvsweb/src/sys/vm/vm_contig.c.diff?r1=1.10&r2=1.11&f=u > :> > :> FreeBSD-4: > :> > :> FreeBSD-4 is in the same situation that DFly was in and requires > :> the same fixes as the above patch, though note that in FreeBSD-4 > :> the contigmalloc() code is in vm_page.c, not vm_contig.c. > > I tried the patch in the hopes it would fix my Nvidia-driver > crash-on-demand system. :) While my system appears stable without > the Nvidia driver but with this patch, my system can still crash > easily with the Nvidia driver. It usually dies with a: > > Point me at the nvidia driver source and I will do a quick audit of > it to see if there is anything obviously broken. This is running > on FreeBSD-4.x? If it's a binary-only driver there isn't much I > can do, though. Unfortunately, it is the binary driver from Nvidia. Maybe someone using DragonFly is having similar problems? > There is a test you can run. If you have a kernel vmcore and > related kernel image that contains the vm page not found in hash > panic, you can run this program on it to do a sanity check on the > VM page array and hash table. I have modified this program to work > with FreeBSD-4.x (I'd have to rewrite it to make it work with > 5.x/6.x, which I don't have time to do): > This program will sanity check the VM page hash table from the core > file and tell you if there are any pages missing from the hash > table or sitting in the wrong slot. > > My expectation is that it will find a page sitting in the wrong > slot. I ran the program on the vmcore and debug kernel from the recent crash since the vmcore with the "page not found in hash" panic has long since been deleted. As expected, the program showed no problem with the vmcore. > : > : Fatal trap 12: page fault while in kernel mode > : fault virtual address = 0x30 > : fault code = supervisor read, page not present > : > > This is a different failure. I'd need a backtrace or a > kernel.debug and vmcore to play with, and a FreeBSD developer would > probably be able to help you more with it. It's obviously a NULL > pointer indirection of some sort. I will attach it , and I will also send it to Nvidia as I did once many moons ago. One interesting symptom that I just noticed very close to the time of instability is this message from /var/log/messages: Nov 10 22:47:14 thor /kernel: stray irq 7 Here is near the end of strings output of vmcore just before panic: <118>Wed Nov 10 22:46:44 CST 2004 <3>stray irq 7 <118>Nov 10 22:47:14 thor /kernel: stray irq 7 <3>stray irq 7 <3>stray irq 7 <118>Nov 10 22:47:46 thor last message repeated 2 times The parallel port is disabled, and I do not see these messages without the Nvidia driver. > :Two "page not found in hash" panics that I believe are related to the > :Nvidia driver: > :http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/71086 > :http://www.freebsd.org/cgi/query-pr.cgi?pr=kern/72539 > > The 'page not found in hash' bug is *NOT* likely to be related to any > of the pmap code, simply because the sanity checks already in the > kernel (assuming the kernel is compiled with options INVARIANTS and > options INVARIANT_SUPPORT) mostly preclude an error path to this > panic from the pmap code. However, pmap panics could be related to > corrupted VM pages. I have not tried compiling these options into the kernel. Sometime this weekend I will give them a shot. Thank you for your help and the detailed description of the bug (tricksy, sneaky bug) you fixed. Sean -- sean-freebsd@farley.org --0-1969289673-1100318863=:1883 Content-Type: TEXT/PLAIN; charset=US-ASCII; name=asdf Content-Transfer-Encoding: BASE64 Content-ID: <20041112220743.O1883@thor.farley.org> Content-Description: Stack trace Content-Disposition: attachment; filename=asdf SWRsZVBURCBhdCBwaHlzaWNhbCBhZGRyZXNzIDB4MDA5MjIwMDANCmluaXRp YWwgcGNiIGF0IHBoeXNpY2FsIGFkZHJlc3MgMHgwMDMyNmNjMA0KcGFuaWNz dHI6IHBhZ2UgZmF1bHQNCnBhbmljIG1lc3NhZ2VzOg0KLS0tDQpGYXRhbCB0 cmFwIDEyOiBwYWdlIGZhdWx0IHdoaWxlIGluIGtlcm5lbCBtb2RlDQpmYXVs dCB2aXJ0dWFsIGFkZHJlc3MJPSAweDMwDQpmYXVsdCBjb2RlCQk9IHN1cGVy dmlzb3IgcmVhZCwgcGFnZSBub3QgcHJlc2VudA0KaW5zdHJ1Y3Rpb24gcG9p bnRlcgk9IDB4ODoweGMwMjRmMzExDQpzdGFjayBwb2ludGVyCSAgICAgICAg PSAweDEwOjB4ZDg2MWVjMTQNCmZyYW1lIHBvaW50ZXIJICAgICAgICA9IDB4 MTA6MHhkODYxZWMzYw0KY29kZSBzZWdtZW50CQk9IGJhc2UgMHgwLCBsaW1p dCAweGZmZmZmLCB0eXBlIDB4MWINCgkJCT0gRFBMIDAsIHByZXMgMSwgZGVm MzIgMSwgZ3JhbiAxDQpwcm9jZXNzb3IgZWZsYWdzCT0gaW50ZXJydXB0IGVu YWJsZWQsIHJlc3VtZSwgSU9QTCA9IDANCmN1cnJlbnQgcHJvY2VzcwkJPSA0 NjAgKGdsYmx1cikNCmludGVycnVwdCBtYXNrCQk9IG5vbmUNCnRyYXAgbnVt YmVyCQk9IDEyDQpwYW5pYzogcGFnZSBmYXVsdA0KDQpzeW5jaW5nIGRpc2tz Li4uIDIyIDUgMyAzIDMgMyAzIDMgMyAzIDMgMyAzIDMgMyAzIDMgMyAzIDMg MyAzIA0KZ2l2aW5nIHVwIG9uIDIgYnVmZmVycw0KVXB0aW1lOiAxbTU2cw0K DQpkdW1waW5nIHRvIGRldiAjYWQvMHgzMDAxMSwgb2Zmc2V0IDEwMjc2ODAN CmR1bXAgYXRhMTogcmVzZXR0aW5nIGRldmljZXMgLi4gZG9uZQ0KDQo8c25p cHBlZCBtZW1vcnkgY291bnQgZG93biBmcm9tIDUxMSB0byAwPg0KDQotLS0N CiMwICBkdW1wc3lzICgpIGF0IC91c3Ivc3JjL3N5cy9rZXJuL2tlcm5fc2h1 dGRvd24uYzo0ODcNCjQ4NwkJaWYgKGR1bXBpbmcrKykgew0KKGtnZGIpIHdo ZXJlIGZ1bGwNCiMwICBkdW1wc3lzICgpIGF0IC91c3Ivc3JjL3N5cy9rZXJu L2tlcm5fc2h1dGRvd24uYzo0ODcNCgllcnJvciA9IDANCiMxICAweGMwMTY1 NTIzIGluIGJvb3QgKGhvd3RvPTI1NikgYXQgL3Vzci9zcmMvc3lzL2tlcm4v a2Vybl9zaHV0ZG93bi5jOjMxNg0KCWhvd3RvID0gMjU2DQojMiAgMHhjMDE2 NTk0OCBpbiBwb3dlcm9mZl93YWl0IChqdW5rPTB4YzAyZjUzNmMsIGhvd3Rv PS0xMDcwNjQxNTUzKSBhdCAvdXNyL3NyYy9zeXMva2Vybi9rZXJuX3NodXRk b3duLmM6NTk1DQoJZm10ID0gMHhjMDJmNTM2YyAiJXMiDQoJYm9vdG9wdCA9 IDI1Ng0KCWJ1ZiA9ICJwYWdlIGZhdWx0IiwgJ1wwMDAnIDxyZXBlYXRzIDI0 NSB0aW1lcz4NCiMzICAweGMwMmExNjRlIGluIHRyYXBfZmF0YWwgKGZyYW1l PTB4ZDg2MWViZDQsIGV2YT00OCkgYXQgL3Vzci9zcmMvc3lzL2kzODYvaTM4 Ni90cmFwLmM6OTc0DQoJZnJhbWUgPSAoc3RydWN0IHRyYXBmcmFtZSAqKSAw eDEwMA0KCWNvZGUgPSAtMTA3MDY0MDI3Ng0KCXR5cGUgPSAxMg0KCXNzID0g LTEwNzA2NDAyNzYNCgllc3AgPSAwDQoJc29mdHNlZyA9IHtzc2RfYmFzZSA9 IDAsIHNzZF9saW1pdCA9IDEwNDg1NzUsIHNzZF90eXBlID0gMjcsIHNzZF9k cGwgPSAwLCBzc2RfcCA9IDEsIHNzZF94eCA9IDIsIHNzZF94eDEgPSAxLCAN CiAgc3NkX2RlZjMyID0gMSwgc3NkX2dyYW4gPSAxfQ0KIzQgIDB4YzAyYTEz MjEgaW4gdHJhcF9wZmF1bHQgKGZyYW1lPTB4ZDg2MWViZDQsIHVzZXJtb2Rl PTAsIGV2YT00OCkgYXQgL3Vzci9zcmMvc3lzL2kzODYvaTM4Ni90cmFwLmM6 ODY3DQoJdmEgPSAwDQoJdm0gPSAoc3RydWN0IHZtc3BhY2UgKikgMHgwDQoJ bWFwID0gMHhkNGM1Y2ZjMA0KCXJ2ID0gMA0KCWZ0eXBlID0gMSAnXDAwMScN CglwID0gKHN0cnVjdCBwcm9jICopIDB4ZDc1MzU4ZTANCiM1ICAweGMwMmEw ZjBiIGluIHRyYXAgKGZyYW1lPXt0Zl9mcyA9IDE2LCB0Zl9lcyA9IDE2LCB0 Zl9kcyA9IDE2LCB0Zl9lZGkgPSAtNjgyNDAzNjE2LCB0Zl9lc2kgPSAwLCAN CiAgICAgIHRmX2VicCA9IC02NjQ2NzExNzIsIHRmX2lzcCA9IC02NjQ2NzEy MzIsIHRmX2VieCA9IC02NjE5OTc2MzIsIHRmX2VkeCA9IC02NjE5OTc2MzIs IHRmX2VjeCA9IDAsIA0KICAgICAgdGZfZWF4ID0gLTEwMjk0MzMwODgsIHRm X3RyYXBubyA9IDEyLCB0Zl9lcnIgPSAwLCB0Zl9laXAgPSAtMTA3MTMyMDMw MywgdGZfY3MgPSA4LCB0Zl9lZmxhZ3MgPSA2NjExOCwgDQogICAgICB0Zl9l c3AgPSAtNjYxOTk3NjMyLCB0Zl9zcyA9IDB9KSBhdCAvdXNyL3NyYy9zeXMv aTM4Ni9pMzg2L3RyYXAuYzo0NjYNCglwID0gKHN0cnVjdCBwcm9jICopIDB4 ZDc1MzU4ZTANCglzdGlja3MgPSAxNDAxODc0Njg2NTg2NDkzMzM3Ng0KCWkg PSAwDQoJdWNvZGUgPSAwDQoJdHlwZSA9IDEyDQoJY29kZSA9IDANCglldmEg PSA0OA0KIzYgIDB4YzAyNGYzMTEgaW4gZmZzX2ZzeW5jIChhcD0weGQ4NjFl YzY0KSBhdCAvdXNyL3NyYy9zeXMvdWZzL2Zmcy9mZnNfdm5vcHMuYzoxMzgN CglpcCA9IChzdHJ1Y3QgaW5vZGUgKikgMHgwDQoJdnAgPSAoc3RydWN0IHZu b2RlICopIDB4ZDg4YWI3YzANCglicCA9IChzdHJ1Y3QgYnVmICopIDB4MA0K CW5icCA9IChzdHJ1Y3QgYnVmICopIDB4YzAxNWZmMjMNCglzID0gLTY2NDY3 MTE2MA0KCWVycm9yID0gMA0KCXdhaXQgPSAxDQoJcGFzc2VzID0gLTY2NDY3 MTE1Mg0KCXNraXBtZXRhID0gLTY2NDY3MTE2OA0KCWxibiA9IC0xMDcxMjky Mjk5DQojNyAgMHhjMDE5M2RhYyBpbiB2aW52YWxidWYgKHZwPTB4ZDg4YWI3 YzAsIGZsYWdzPTEsIGNyZWQ9MHgwLCBwPTB4ZDc1MzU4ZTAsIHNscGZsYWc9 MCwgc2xwdGltZW89MCkgYXQgdm5vZGVfaWYuaDo1NTgNCglhID0ge2FfZGVz YyA9IDB4YzAyZmU4YTAsIGFfdnAgPSAweGQ4OGFiN2MwLCBhX2NyZWQgPSAw eDAsIGFfd2FpdGZvciA9IDEsIGFfcCA9IDB4ZDc1MzU4ZTB9DQoJdnAgPSAo c3RydWN0IHZub2RlICopIDB4ZDg4YWI3YzANCgljcmVkID0gKHN0cnVjdCB1 Y3JlZCAqKSAweDANCglwID0gKHN0cnVjdCBwcm9jICopIDB4MA0KCWNyZWQg PSAoc3RydWN0IHVjcmVkICopIDB4MA0KCXAgPSAoc3RydWN0IHByb2MgKikg MHgwDQoJYnAgPSAoc3RydWN0IGJ1ZiAqKSAweGQ4OGFiN2MwDQoJbmJwID0g KHN0cnVjdCBidWYgKikgMHgwDQoJYmxpc3QgPSAoc3RydWN0IGJ1ZiAqKSAw eDANCglzID0gMA0KCWVycm9yID0gLTY2MTk5NzYzMg0KCW9iamVjdCA9IDB4 ZDc1MzU4ZTANCiM4ICAweGMwMTk1MGUzIGluIHZjbGVhbiAodnA9MHhkODhh YjdjMCwgZmxhZ3M9OCwgcD0weGQ3NTM1OGUwKSBhdCAvdXNyL3NyYy9zeXMv a2Vybi92ZnNfc3Vici5jOjE4OTQNCgl2cCA9IChzdHJ1Y3Qgdm5vZGUgKikg MHhkODhhYjdjMA0KCWZsYWdzID0gMA0KCXAgPSAoc3RydWN0IHByb2MgKikg MHhkNzUzNThlMA0KCWFjdGl2ZSA9IDANCiM5ICAweGMwMTk1MmY3IGluIHZn b25lbCAodnA9MHhkODhhYjdjMCwgcD0weGQ3NTM1OGUwKSBhdCAvdXNyL3Ny Yy9zeXMva2Vybi92ZnNfc3Vici5jOjIwNTgNCgl2cCA9IChzdHJ1Y3Qgdm5v ZGUgKikgMHhkODhhYjdjMA0KCXMgPSAwDQojMTAgMHhjMDE5NTJhOSBpbiB2 cmVjeWNsZSAodnA9MHhkODhhYjdjMCwgaW50ZXJfbGtwPTB4MCwgcD0weGQ3 NTM1OGUwKSBhdCAvdXNyL3NyYy9zeXMva2Vybi92ZnNfc3Vici5jOjIwMTMN Cgl2cCA9IChzdHJ1Y3Qgdm5vZGUgKikgMHgwDQojMTEgMHhjMDI1MGNkYiBp biB1ZnNfaW5hY3RpdmUgKGFwPTB4ZDg2MWVkNDgpIGF0IC91c3Ivc3JjL3N5 cy91ZnMvdWZzL3Vmc19pbm9kZS5jOjEwNQ0KCWFwID0gKHN0cnVjdCB2b3Bf aW5hY3RpdmVfYXJncyAqKSAweDANCgl2cCA9IChzdHJ1Y3Qgdm5vZGUgKikg MHhkODhhYjdjMA0KCWlwID0gKHN0cnVjdCBpbm9kZSAqKSAweGMyYTQxOTAw DQoJcCA9IChzdHJ1Y3QgcHJvYyAqKSAweGQ3NTM1OGUwDQoJbW9kZSA9IDAN CgllcnJvciA9IDANCiMxMiAweGMwMjU2MDc1IGluIHVmc192bm9wZXJhdGUg KGFwPTB4ZDg2MWVkNDgpIGF0IC91c3Ivc3JjL3N5cy91ZnMvdWZzL3Vmc192 bm9wcy5jOjIzNzYNCglhcCA9IChzdHJ1Y3Qgdm9wX2dlbmVyaWNfYXJncyAq KSAweDANCiMxMyAweGMwMTk0ZTAwIGluIHZwdXQgKHZwPTB4ZDg4YWI3YzAp IGF0IHZub2RlX2lmLmg6ODE1DQoJYSA9IHthX2Rlc2MgPSAweGMwMmZlYWUw LCBhX3ZwID0gMHhkODhhYjdjMCwgYV9wID0gMHhkNzUzNThlMH0NCgl2cCA9 IChzdHJ1Y3Qgdm5vZGUgKikgMHhkODhhYjdjMA0KCXAgPSAoc3RydWN0IHBy b2MgKikgMHgwDQoJdnAgPSAoc3RydWN0IHZub2RlICopIDB4ZDg4YWI3YzAN CglwID0gKHN0cnVjdCBwcm9jICopIDB4MA0KIzE0IDB4YzAxOWI1YjcgaW4g dm5fb3BlbiAobmRwPTB4ZDg2MWVlYjQsIGZtb2RlPTI1OCwgY21vZGU9Mzg0 KSBhdCAvdXNyL3NyYy9zeXMva2Vybi92ZnNfdm5vcHMuYzoxOTcNCgljbW9k ZSA9IDANCgl2cCA9IChzdHJ1Y3Qgdm5vZGUgKikgMHhkODhhYjdjMA0KCXAg PSAoc3RydWN0IHByb2MgKikgMHhkNzUzNThlMA0KCWNyZWQgPSAoc3RydWN0 IHVjcmVkICopIDB4YzI5ZTUwMDANCgl2YXQgPSB7dmFfdHlwZSA9IDM2MzAy OTY3NDQsIHZhX21vZGUgPSAzNjI3LCB2YV9ubGluayA9IC0xNjM2MiwgdmFf dWlkID0gMCwgdmFfZ2lkID0gMTEsIA0KICB2YV9mc2lkID0gMzYxMjU2MzY4 MCwgdmFfZmlsZWlkID0gMTEsIHZhX3NpemUgPSAzMjY1Njc3MzEyLCB2YV9i bG9ja3NpemUgPSAtNjY0NjcwNzQ4LCB2YV9hdGltZSA9IHt0dl9zZWMgPSAw LCANCiAgICB0dl9uc2VjID0gMX0sIHZhX210aW1lID0ge3R2X3NlYyA9IC0x MDcyMjcwMDQzLCB0dl9uc2VjID0gLTEwMjkyODk5ODR9LCB2YV9jdGltZSA9 IHt0dl9zZWMgPSAtNjgyNDAzMjkzLCANCiAgICB0dl9uc2VjID0gNn0sIHZh X2dlbiA9IDExLCB2YV9mbGFncyA9IDM2MTI1NjM2ODAsIHZhX3JkZXYgPSAx MSwgdmFfYnl0ZXMgPSAyOTQwMDEwMDMzNiwgDQogIHZhX2ZpbGVyZXYgPSAx NTU5MjAwNTc5MzUyMDk2MTUzNiwgdmFfdmFmbGFncyA9IDMyMjI2NjYxMDcs IHZhX3NwYXJlID0gMH0NCgl2YXAgPSAoc3RydWN0IHZhdHRyICopIDB4ZDg2 MWVkOWMNCgltb2RlID0gMTI4DQoJZXJyb3IgPSAxMw0KIzE1IDB4YzAxNjc2 YjEgaW4gY29yZWR1bXAgKHA9MHhkNzUzNThlMCkgYXQgL3Vzci9zcmMvc3lz L2tlcm4va2Vybl9zaWcuYzoxNjMyDQoJdnAgPSAoc3RydWN0IHZub2RlICop IDB4ZDRjNWNmYzANCgljcmVkID0gKHN0cnVjdCB1Y3JlZCAqKSAweGMyOWU1 MDAwDQoJbGYgPSB7bF9zdGFydCA9IC0zMTE0ODU1MTQwMTAzNTk1ODA4LCBs X2xlbiA9IC0yODU0NzM3NzMzNjk4NDUzNTA0LCBsX3BpZCA9IC0xMDcxMjU2 MTQwLCBsX3R5cGUgPSAxMCwgDQogIGxfd2hlbmNlID0gMH0NCgluZCA9IHtu aV9kaXJwID0gMHhjMmE2NDgwMCAiZ2xibHVyLmNvcmUiLCBuaV9zZWdmbGcg PSBVSU9fU1lTU1BBQ0UsIG5pX3N0YXJ0ZGlyID0gMHgwLCANCiAgbmlfcm9v dGRpciA9IDB4ZDZhYTVlMDAsIG5pX3RvcGRpciA9IDB4MCwgbmlfdnAgPSAw eGQ4OGFiN2MwLCBuaV9kdnAgPSAweDAsIG5pX3BhdGhsZW4gPSAxLCANCiAg bmlfbmV4dCA9IDB4ZDc1NDI4MGIgIiIsIG5pX2xvb3BjbnQgPSAwLCBuaV9j bmQgPSB7Y25fbmFtZWlvcCA9IDEsIGNuX2ZsYWdzID0gNDkxNjQsIGNuX3By b2MgPSAweGQ3NTM1OGUwLCANCiAgICBjbl9jcmVkID0gMHhjMjllNTAwMCwg Y25fcG5idWYgPSAweGQ3NTQyODAwICIiLCBjbl9uYW1lcHRyID0gMHhkNzU0 MjgwMCAiIiwgY25fbmFtZWxlbiA9IDExLCBjbl9jb25zdW1lID0gMH19DQoJ dmF0dHIgPSB7dmFfdHlwZSA9IDMyMzgzNTQxMjAsIHZhX21vZGUgPSAxLCB2 YV9ubGluayA9IDAsIHZhX3VpZCA9IDIsIHZhX2dpZCA9IDAsIHZhX2ZzaWQg PSAzNTY5NzMzMzc4LCANCiAgdmFfZmlsZWlkID0gLTcyNTIzMzcyOCwgdmFf c2l6ZSA9IDEzODQ1NjM1OTYyMDY3MDg3MTU2LCB2YV9ibG9ja3NpemUgPSAt NjY0NjcwNDkyLCB2YV9hdGltZSA9IHt0dl9zZWMgPSAwLCANCiAgICB0dl9u c2VjID0gMn0sIHZhX210aW1lID0ge3R2X3NlYyA9IC02NjQ2NzA0ODgsIHR2 X25zZWMgPSAtNjY0NjcwNTAwfSwgdmFfY3RpbWUgPSB7dHZfc2VjID0gLTY2 NDY3MDQ5NiwgDQogICAgdHZfbnNlYyA9IC02NjQ2NzA1MjF9LCB2YV9nZW4g PSAzNjMwMjk2Nzc2LCB2YV9mbGFncyA9IDM2MTI1NjM2ODAsIHZhX3JkZXYg PSAzNTY5NzMzNTY4LCANCiAgdmFfYnl0ZXMgPSAxMzg2MjE1NjkzNjY4Nzkx MDkxMiwgdmFfZmlsZXJldiA9IDM2MzA0OTcyNDgsIHZhX3ZhZmxhZ3MgPSAz MjIyNjY2MTA3LCB2YV9zcGFyZSA9IDJ9DQoJZXJyb3IgPSAxMQ0KCWVycm9y MSA9IDANCgluYW1lID0gMHhjMmE2NDgwMCAiZ2xibHVyLmNvcmUiDQoJbGlt aXQgPSA5MjIzMzcyMDM2ODU0Nzc1ODA3DQojMTYgMHhjMDE2NzNkMiBpbiBz aWdleGl0IChwPTB4ZDc1MzU4ZTAsIHNpZz0xMSkgYXQgL3Vzci9zcmMvc3lz L2tlcm4va2Vybl9zaWcuYzoxNDk0DQoJcCA9IChzdHJ1Y3QgcHJvYyAqKSAw eGQ3NTM1OGUwDQoJc2lnID0gMTENCiMxNyAweGMwMTY3MWIwIGluIHBvc3Rz aWcgKHNpZz0xMSkgYXQgL3Vzci9zcmMvc3lzL2tlcm4va2Vybl9zaWcuYzox NDA3DQoJcCA9IChzdHJ1Y3QgcHJvYyAqKSAweGQ3NTM1OGUwDQoJcHMgPSAo c3RydWN0IHNpZ2FjdHMgKikgMHhkODYxYzI2MA0KCWFjdGlvbiA9IDANCgly ZXR1cm5tYXNrID0ge19fYml0cyA9IHsxMDI0LCAwLCAwLCAwfX0NCgljb2Rl ID0gMA0KIzE4IDB4YzAyYTExMTMgaW4gdHJhcCAoZnJhbWU9e3RmX2ZzID0g NDcsIHRmX2VzID0gNDcsIHRmX2RzID0gNDcsIHRmX2VkaSA9IC0xMDc3OTM5 ODI4LCB0Zl9lc2kgPSAtMTA3NzkzOTgyOCwgDQogICAgICB0Zl9lYnAgPSAt MTA3Nzk0MDE2MCwgdGZfaXNwID0gLTY2NDY3MDI1MiwgdGZfZWJ4ID0gMTM0 NzIwMzg0LCB0Zl9lZHggPSAwLCB0Zl9lY3ggPSAxNCwgdGZfZWF4ID0gMSwg DQogICAgICB0Zl90cmFwbm8gPSAxMiwgdGZfZXJyID0gMSwgdGZfZWlwID0g NjcyMDE5NjY4LCB0Zl9jcyA9IDMxLCB0Zl9lZmxhZ3MgPSA2NjE5OCwgdGZf ZXNwID0gLTEwNzc5NDAyODQsIA0KICAgICAgdGZfc3MgPSA0N30pIGF0IC91 c3Ivc3JjL3N5cy9pMzg2L2kzODYvdHJhcC5jOjE3NA0KCXMgPSAtNjY0Njcw MzIwDQoJc2lnID0gMA0KCXAgPSAoc3RydWN0IHByb2MgKikgMHhkNzUzNThl MA0KCWZyYW1lID0gKHN0cnVjdCB0cmFwZnJhbWUgKikgMHhkODYxZWZhOA0K CW90aWNrcyA9IDcNCglwID0gKHN0cnVjdCBwcm9jICopIDB4ZDc1MzU4ZTAN CglzdGlja3MgPSA3DQoJaSA9IC02ODI0MDMzMjQNCgl1Y29kZSA9IDEyDQoJ dHlwZSA9IC02NjQ2NzAzMjANCgljb2RlID0gMA0KCWV2YSA9IDENCiMxOSAw eDI4MGUzNGQ0IGluID8/ICgpDQpObyBzeW1ib2wgdGFibGUgaW5mbyBhdmFp bGFibGUuDQojMjAgMHg4MDRjOWYxIGluID8/ICgpDQpObyBzeW1ib2wgdGFi bGUgaW5mbyBhdmFpbGFibGUuDQojMjEgMHg4MDRkNjQ2IGluID8/ICgpDQpO byBzeW1ib2wgdGFibGUgaW5mbyBhdmFpbGFibGUuDQojMjIgMHg4MDRmZDEx IGluID8/ICgpDQpObyBzeW1ib2wgdGFibGUgaW5mbyBhdmFpbGFibGUuDQoj MjMgMHg4MDRjMDk5IGluID8/ICgpDQpObyBzeW1ib2wgdGFibGUgaW5mbyBh dmFpbGFibGUuDQojMjQgMHg4MDRlODAwIGluID8/ICgpDQpObyBzeW1ib2wg dGFibGUgaW5mbyBhdmFpbGFibGUuDQojMjUgMHg4MDRiZmNlIGluID8/ICgp DQpObyBzeW1ib2wgdGFibGUgaW5mbyBhdmFpbGFibGUuDQo= --0-1969289673-1100318863=:1883--