From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752665AbYCIOam (ORCPT ); Sun, 9 Mar 2008 10:30:42 -0400 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1751716AbYCIOa2 (ORCPT ); Sun, 9 Mar 2008 10:30:28 -0400 Received: from anchor-post-37.mail.demon.net ([194.217.242.87]:37464 "EHLO anchor-post-37.mail.demon.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751711AbYCIOa0 (ORCPT ); Sun, 9 Mar 2008 10:30:26 -0400 Date: Sun, 09 Mar 2008 14:24:56 +0000 From: Darren Salt To: linux-kernel@vger.kernel.org, netdev@vger.kernel.org Message-ID: <4F82D2A650%linux@youmustbejoking.demon.co.uk> Mail-Followup-To: linux-kernel@vger.kernel.org, netdev@vger.kernel.org, linux@youmustbejoking.demon.co.uk User-Agent: Gemini/2.29e (Qt/3.3.8b) (Linux-x86_64) X-SDate: Sun, 5304 Sep 1993 14:24:56 +0000 MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="87320080--2085559755--209819346" X-SA-Exim-Connect-IP: 192.168.0.5 X-SA-Exim-Mail-From: linux@youmustbejoking.demon.co.uk Subject: Kernel panic (networking-related?) X-SA-Exim-Version: 4.2.1 (built Tue, 09 Jan 2007 17:23:22 +0000) X-SA-Exim-Scanned: Yes (on pentagram.youmustbejoking.demon.co.uk) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This message is in MIME format. --87320080--2085559755--209819346 Content-Type: text/plain; charset=us-ascii I've had occasional apparent hard lockups on one computer here for some time. I'd previously been not doing much about it other than pressing the reset button, since there was nothing which marked it as a kernel panic (no blinkenlights; USB keyboard). However, I'd decided to make use of netconsole; this eventually logged the panic at the end of this message. The kernel is 2.6.23.17-hrt5 (I had to do a few manual fixups, but nothing non-trivial); the DVB modules come from v4l-dvb (cset 127f67dea087); the attached mouse patch is in use (my mouse is weird). The board is an Abit KN8 v1.1 (nForce 4); on-board ethernet is in use. Full kernel log & config are attached. Unable to handle kernel NULL pointer dereference at 000000000000007f RIP: [] tcp_v4_rcv+0x2ae/0x8c8 PGD 3bb9a067 PUD 1de4d067 PMD 0 Oops: 0000 [1] CPU 0 Modules linked in: vfat fat usb_storage sd_mod mt2060 dvb_usb_dib0700 dib7000p dib7000m dvb_usb dib3000mc dibx000_common dib0070 snd_rtctimer dvb_pll cx22702 cx88_dvb cx8802 cx88xx videodev v4l1_compat ir_common tveeprom btcx_risc videobuf_dvb videobuf_dma_sg videobuf_core dvb_core radeon drm ip6t_owner ip6t_LOG xt_tcpudp ip6t_REJECT nf_conntrack_ipv6 xt_state nf_conntrack ip6table_mangle ip6table_filter ip6_tables x_tables snd_emu10k1_synth snd_emux_synth snd_seq_virmidi snd_seq_midi_emul snd_emu10k1 snd_seq_dummy snd_seq_oss snd_seq_midi snd_seq_midi_event snd_seq snd_intel8x0 snd_rawmidi snd_ac97_codec ac97_bus snd_pcm_oss snd_mixer_oss snd_pcm snd_seq_device snd_timer snd_util_mem snd_hwdep snd snd_page_alloc Pid: 0, comm: swapper Not tainted 2.6.23.17-hrt5 #1 RIP: 0010:[] [] tcp_v4_rcv+0x2ae/0x8c8 RSP: 0018:ffffffff8062ade0 EFLAGS: 00010202 RAX: 000000000000007f RBX: ffff81003fe98a80 RCX: 00000000b7627522 RDX: ffff81003fb6f7f0 RSI: 0000000014756f7f RDI: 0000000038627a43 RBP: ffff810024dd1032 R08: 0000000089404612 R09: 0500a8c04cf31d52 R10: ffff81003fe98940 R11: 0000000000000002 R12: ffff81003fe98a80 R13: 000000000500a8c0 R14: 00000001085fd2e0 R15: ffff810024dd101e FS: 0000000040800950(0000) GS:ffffffff805eb000(0000) knlGS:00000000f74f26c0 CS: 0010 DS: 0018 ES: 0018 CR0: 000000008005003b CR2: 000000000000007f CR3: 00000000266b3000 CR4: 00000000000006e0 DR0: 0000000000000000 DR1: 0000000000000000 DR2: 0000000000000000 DR3: 0000000000000000 DR6: 00000000ffff4ff0 DR7: 0000000000000400 Process swapper (pid: 0, threadinfo ffffffff805f4000, task ffffffff805a5360) Stack: ffff81003e8e2400 ffff81003fe98a80 ffffffff805e3ed0 0000000000000000 ffffffff8062aef4 00000001085fd2e0 0000000000000040 ffffffff8040d550 ffff81003fe98a80 ffff81003fe98a80 ffff810024dd101e ffff81003fe98a80 Call Trace: [] ip_local_deliver+0x19e/0x22a [] ip_rcv+0x477/0x4ae [] process_backlog+0x7d/0xf6 [] nommu_map_single+0x2b/0x42 [] net_rx_action+0x85/0x15a [] __do_softirq+0x4f/0x9c [] call_softirq+0x1c/0x28 [] do_softirq+0x2c/0x7d [] irq_exit+0x3f/0x7d [] do_IRQ+0x11e/0x135 [] default_idle+0x0/0x3a [] ret_from_intr+0x0/0xa [] default_idle+0x0/0x3a [] default_idle+0x26/0x3a [] cpu_idle+0x50/0x74 [] start_kernel+0x252/0x25e [] _sinittext+0x12a/0x12e Code: 48 8b 08 0f 18 09 48 8d 58 f8 39 73 2c 75 e9 eb c9 48 8b 42 RIP [] tcp_v4_rcv+0x2ae/0x8c8 RSP CR2: 000000000000007f Kernel panic - not syncing: Aiee, killing interrupt handler! -- | Darren Salt | linux or ds at | nr. Ashington, | Toon | RISC OS, Linux | youmustbejoking,demon,co,uk | Northumberland | Army | + Output less CO2 => avoid boiling weather. TIME IS RUNNING OUT *FAST*. There is nothing so small that it can't be blown out of all proportion. --87320080--2085559755--209819346 Content-Type: application/x-gzip; name="crash.log.gz" Content-Disposition: attachment; filename="crash.log.gz" Content-Transfer-Encoding: base64 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 --87320080--2085559755--209819346 Content-Type: application/x-gzip; name="config.gz" Content-Disposition: attachment; filename="config.gz" Content-Transfer-Encoding: base64 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 wx29ZMJgQut6mKqDBurLhDVXef8FOzMEBjDBAAA= --87320080--2085559755--209819346 Content-Type: application/octet-stream; name="browser-mouse.patch" Content-Disposition: attachment; filename="browser-mouse.patch" Content-Transfer-Encoding: base64 QnV0dG9uIGFuZCB3aGVlbCB0cmFuc2xhdGlvbiBmb3IgQ2hpYyBUZWNobm9sb2d5IENvcnAg QnJvd3NlciBNb3VzZSB2aWEgVVNCCgpUaGlzIHBhdGNoIGltcGxlbWVudHMgYSBVU0IgSElE IHF1aXJrIGZvciBDaGljIFRlY2hub2xvZ3kgQ29ycCBCcm93c2VyIE1vdXNlCmRldmljZXMu IFRoZXNlIGFyZSBzb2xkIGluIGF0IGxlYXN0IHR3byBndWlzZXM7IEkndmUgZW5jb3VudGVy ZWQgb25lLCB0aGUKQWR2ZW50IDUtYnV0dG9uIHdpcmVsZXNzIHJlY2hhcmdlYWJsZSBvcHRp Y2FsIG1vdXNlLgoKVGhpcyBtb3VzZSBoYXMgdGhlIHVzdWFsIGlucHV0cyBjb21tb24gdG8g RXhwbG9yZXJQUy8yIG1pY2U7IGFkZGl0aW9uYWxseSwKdGhlIHdoZWVsIGlzIHRpbHRhYmxl IGFuZCB0aGVyZSdzIGFuIGV4dHJhIGJ1dHRvbiB3aGljaCB0aGUgZG9jdW1lbmF0aW9uCmNh bGxzIGEgImhvdC1rZXkgYnV0dG9uIi4KCkl0IGlkZW50aWZpZXMgaXRzZWxmIGFzCiAgVmVu ZG9yPTB4NWZlIFByb2RJRD0wMDExIFJldj0gMS4wMQogIE1hbnVmYWN0dXJlcj1XaXJlbGVz cyBNb3VzZQogIFByb2R1Y3Q9V2lyZWxlc3MgTW91c2UKKGJ1dCBzZWUgYWxzbyBodHRwOi8v d3d3LnFiaWsuY2gvdXNiL2RldmljZXMvc2hvd2Rlc2NyLnBocD9pZD0zMjQ0IGZvciBhbgph cHBhcmVudGx5IGRpZmZlcmVudCBkZXZpY2Ugd2l0aCB0aGUgc2FtZSB2ZW5kb3IgYW5kIHBy b2R1Y3QgSURzKS4KCkl0cyBidXR0b25zIGJlaGF2ZSBpZGVudGljYWxseSB3aGV0aGVyIHRo ZSBtb3VzZSBpcyBjb25uZWN0ZWQgdmlhIFBTLzIgb3IKVVNCLiBJJ3ZlIHRlc3RlZCB3aXRo IGEgVVNCIHNub29wZXIgb24gYSBXaW5kb3dzIGJveCAod2l0aCB0aGUgbW91c2Uncwpkcml2 ZXIgaW5zdGFsbGVkKSBhbmQgaXQgc3RpbGwgcmVwb3J0ZWQgdGhlIGJ1dHRvbnMgYXMgSSdk IGFscmVhZHkgb2JzZXJ2ZWQKb24gTGludXguCgpUaGUgbW91c2UgYWx3YXlzIHJlcG9ydHMg dGhlIGV4dHJhIHRocmVlIGJ1dHRvbnMgYXMgZm9sbG93czoKCiogUHVzaGluZyB0aGUgd2hl ZWwgdG8gdGhlIGxlZnQgID0+IGJ1dHRvbnMgMyBhbmQgNCAobWlkZGxlICsgc2lkZSkuCiog UHVzaGluZyB0aGUgd2hlZWwgdG8gdGhlIHJpZ2h0ID0+IGJ1dHRvbnMgMyBhbmQgNSAobWlk ZGxlICsgZXh0cmEpLgoqIFByZXNzaW5nIHRoZSAiaG90LWtleSIgYnV0dG9uICA9PiBidXR0 b25zIDIgYW5kIDQgKHJpZ2h0ICsgc2lkZSkuCgpUaGUgcXVpcmsgaGFuZGxlcyB0aGVzZSBi eSBtYWtpbmcgdGhlIHdoZWVsIHB1c2hlcyBsb29rIGxpa2UgUkVMX0hXSEVFTApldmVudHMg YW5kIHRoZSBob3Qta2V5IGJ1dHRvbiBsb29rIGxpa2UgQlROX0ZPUldBUkQuIChYIG5lZWRz IHRvIGJlIHRvbGQgdGhhdAp0aGUgbW91c2UgaGFzIDEwIGJ1dHRvbnMuIFRoZSBob3Qta2V5 IGJ1dHRvbiBjb3VsZCBiZSBtYXBwZWQgdG8gQlROX1RBU0ssCm1ha2luZyBpdCBhICIxMi1i dXR0b24iIG1vdXNlIGFzIGZhciBhcyBYIGlzIGNvbmNlcm5lZC4pCgpSRUxfSFdIRUVMIGV2 ZW50cyBhcmUgcmVwZWF0ZWQgdXNpbmcgYW4gZXh0cmEgdGltZXIgd2hpY2ggaXMgYWxsb2Nh dGVkIGFzCnBhcnQgb2Ygc3RydWN0IGhpZF9kZXZpY2UuCgpTaWduZWQtb2ZmLWJ5OiBEYXJy ZW4gU2FsdCA8bGludXhAeW91bXVzdGJlam9raW5nLmRlbW9uLmNvLnVrPgoKZGlmZiAtdXIg bGludXgtMi42LjIzLm9yaWcvZHJpdmVycy9oaWQvaGlkLWNvcmUuYyBsaW51eC0yLjYuMjMv ZHJpdmVycy9oaWQvaGlkLWNvcmUuYwotLS0gbGludXgtMi42LjIzLm9yaWcvZHJpdmVycy9o aWQvaGlkLWNvcmUuYwkyMDA3LTEyLTA2IDIzOjM5OjQwLjAwMDAwMDAwMCArMDAwMAorKysg bGludXgtMi42LjIzL2RyaXZlcnMvaGlkL2hpZC1jb3JlLmMJMjAwNy0xMi0wNiAyMzo0MToz OC4wMDAwMDAwMDAgKzAwMDAKQEAgLTg2Myw2ICs4NjMsOSBAQAogCQkJCWhpZF9wcm9jZXNz X2V2ZW50KGhpZCwgZmllbGQsICZmaWVsZC0+dXNhZ2VbdmFsdWVbbl0gLSBtaW5dLCAxLCBp bnRlcnJ1cHQpOwogCX0KIAorCWlmIChoaWQtPmNsYWltZWQgJiBISURfQ0xBSU1FRF9JTlBV VCkKKwkJaGlkaW5wdXRfaGlkX3F1aXJrcyhoaWQsIGZpZWxkKTsKKwogCW1lbWNweShmaWVs ZC0+dmFsdWUsIHZhbHVlLCBjb3VudCAqIHNpemVvZihfX3MzMikpOwogZXhpdDoKIAlrZnJl ZSh2YWx1ZSk7CmRpZmYgLXVyIGxpbnV4LTIuNi4yMy5vcmlnL2RyaXZlcnMvaGlkL2hpZC1p bnB1dC5jIGxpbnV4LTIuNi4yMy9kcml2ZXJzL2hpZC9oaWQtaW5wdXQuYwotLS0gbGludXgt Mi42LjIzLm9yaWcvZHJpdmVycy9oaWQvaGlkLWlucHV0LmMJMjAwNy0xMi0wNiAyMzozOTo0 MC4wMDAwMDAwMDAgKzAwMDAKKysrIGxpbnV4LTIuNi4yMy9kcml2ZXJzL2hpZC9oaWQtaW5w dXQuYwkyMDA3LTEyLTA2IDIzOjQyOjU0LjAwMDAwMDAwMCArMDAwMApAQCAtMzM0LDYgKzMz NCw4NiBAQAogfQogCiAKK3N0cnVjdCBoaWRfcHNldWRvYnV0dG9uX21hcHBpbmdzX3Qgewor CV9fdTE2IG1hc2ssIHR5cGUsIGJ1dHRvbjsKKwlfX3MxNiB2YWx1ZTsKK307CisKKy8qIEJ1 dHRvbiBtYXBwaW5ncyBmb3IgdGhlIENoaWMgYnJvd3NlciBtb3VzZSAoVVNCIElEIDA1RkU6 MDAxMSkuCisgKiBUaGlzIGlzIHNvbGQgYXMgKGF0IGxlYXN0KToKKyAqCSogQWR2ZW50IDUt YnV0dG9uIHdpcmVsZXNzIHJlY2hhcmdlYWJsZSBtb3VzZQorICogSXQgaGFzIHRocmVlIGV4 dHJhIGJ1dHRvbnMgKHdoZWVsIHB1c2hlZCBzaWRld2F5cywgdGFzayBidXR0b24pIHdoaWNo IGFyZQorICogc2lnbmFsbGVkIGFzIHBhaXJzIG9mIHN0YW5kYXJkIGJ1dHRvbnMuCisgKi8K K3N0YXRpYyBjb25zdCBzdHJ1Y3QgaGlkX3BzZXVkb2J1dHRvbl9tYXBwaW5nc190IGNoaWNf YnJvd3Nlcl9tb3VzZV9idXR0b25zW10gPSB7CisjaWYgMAorCXsgMSA8PCAxIHwgMSA8PCAz LCBFVl9LRVksIEJUTl9UQVNLLCAxIH0sCS8qIDIgYW5kIDQgKGhvdC1rZXkpICovCisJeyAx IDw8IDIgfCAxIDw8IDMsIEVWX0tFWSwgQlROX0JBQ0ssIDEgfSwJLyogMyBhbmQgNCAod2hl ZWwgbGVmdCkgKi8KKwl7IDEgPDwgMiB8IDEgPDwgNCwgRVZfS0VZLCBCVE5fRk9SV0FSRCwg MSB9LAkvKiAzIGFuZCA1ICh3aGVlbCByaWdodCkgKi8KKyNlbHNlCisJeyAxIDw8IDEgfCAx IDw8IDMsIEVWX0tFWSwgQlROX0ZPUldBUkQsIDEgfSwJLyogMiBhbmQgNCAoaG90LWtleSkg Ki8KKwl7IDEgPDwgMiB8IDEgPDwgMywgRVZfUkVMLCBSRUxfSFdIRUVMLCAtMSB9LAkvKiAz IGFuZCA0ICh3aGVlbCBsZWZ0KSAqLworCXsgMSA8PCAyIHwgMSA8PCA0LCBFVl9SRUwsIFJF TF9IV0hFRUwsIDEgfSwJLyogMyBhbmQgNSAod2hlZWwgcmlnaHQpICovCisjZW5kaWYKKwl7 fQorfTsKKworLyogUmVwZWF0IGZvciBlLmcuIHBzZXVkby13aGVlbHMuICBXZSB1c2UgdGhl IGlucHV0IGRldmljZSdzIG93biByZXBlYXQgdmFsdWVzLiAqLworc3RhdGljIHZvaWQgaGlk aW5wdXRfcmVwZWF0X2V2ZW50KHVuc2lnbmVkIGxvbmcgZGF0YSkKK3sKKwlzdHJ1Y3QgaW5w dXRfZGV2ICppbnB1dCA9ICh2b2lkICopIGRhdGE7CisJc3RydWN0IGhpZF9kZXZpY2UgKmRl dmljZSA9IGlucHV0LT5wcml2YXRlOworCisJaWYgKCFkZXZpY2UtPnJlcGVhdC52YWx1ZSkK KwkJcmV0dXJuOworCisJaW5wdXRfZXZlbnQoaW5wdXQsIGRldmljZS0+cmVwZWF0LnR5cGUs IGRldmljZS0+cmVwZWF0LmJ1dHRvbiwgZGV2aWNlLT5yZXBlYXQudmFsdWUpOworCWlucHV0 X3N5bmMoaW5wdXQpOworCisJaWYgKGlucHV0LT5yZXBbUkVQX1BFUklPRF0pCisJCW1vZF90 aW1lcigmZGV2aWNlLT5yZXBlYXQudGltZXIsIGppZmZpZXMgKyBtc2Vjc190b19qaWZmaWVz KGlucHV0LT5yZXBbUkVQX1BFUklPRF0pKTsKK30KKworc3RhdGljIHZvaWQgaGlkaW5wdXRf cmVnaXN0ZXJfcHNldWRvYnV0dG9ucyAoc3RydWN0IGhpZF9pbnB1dCAqaGlkaW5wdXQsCisJ CQkJCSAgICAgc3RydWN0IGhpZF9maWVsZCAqZmllbGQsCisJCQkJCSAgICAgc3RydWN0IGhp ZF91c2FnZSAqdXNhZ2UsCisJCQkJCSAgICAgdW5zaWduZWQgbG9uZyAqYml0LAorCQkJCQkg ICAgIGNvbnN0IHN0cnVjdCBoaWRfcHNldWRvYnV0dG9uX21hcHBpbmdzX3QgKmJ1dHRvbnMs CisJCQkJCSAgICAgaW50IGFsbG93X3JlcGVhdCkKK3sKKwlpbnQgaTsKKwlpbnQgaGF2ZV93 aGVlbCA9IDA7CisJc3RydWN0IGhpZF9kZXZpY2UgKmRldmljZSA9IGhpZGlucHV0LT5pbnB1 dC0+cHJpdmF0ZTsKKworCWZvciAoaSA9IDA7IGJ1dHRvbnNbaV0ubWFzazsgKytpKQorCXsK KwkJaWYgKHVzYWdlLT50eXBlICE9IGJ1dHRvbnNbaV0udHlwZSkKKwkJCWNvbnRpbnVlOwor CisJCXN3aXRjaCAoYnV0dG9uc1tpXS50eXBlKQorCQl7CisJCQljYXNlIEVWX0tFWToKKwkJ CQlpZiAodXNhZ2UtPmNvZGUgPT0gQlROX0VYVFJBKQorCQkJCQlzZXRfYml0KGJ1dHRvbnNb aV0uYnV0dG9uLCBiaXQpOworCQkJCWJyZWFrOworCQkJY2FzZSBFVl9SRUw6CisJCQkJaWYg KHVzYWdlLT5jb2RlID09IFJFTF9XSEVFTCkgeworCQkJCQloYXZlX3doZWVsID0gYWxsb3df cmVwZWF0OworCQkJCQlzZXRfYml0KGJ1dHRvbnNbaV0uYnV0dG9uLCBiaXQpOworCQkJCX0K KwkJCQlicmVhazsKKwkJfQorCX0KKworCS8qIElmIHRoZSBxdWlyayBoYXMgaW50cm9kdWNl ZCBhbiBleHRyYSB3aGVlbCAoZm9yIGV4YW1wbGUpLAorCSAqIHdlIG5lZWQgdG8gaGFuZGxl IG91ciBvd24gcmVwZWF0cy4gKi8KKwlpZiAoaGF2ZV93aGVlbCAmJiAhZGV2aWNlLT5yZXBl YXQudGltZXIuZnVuY3Rpb24pIHsKKwkJaW5pdF90aW1lcigmZGV2aWNlLT5yZXBlYXQudGlt ZXIpOworCQlkZXZpY2UtPnJlcGVhdC50aW1lci5kYXRhID0gKGxvbmcpIGhpZGlucHV0LT5p bnB1dDsKKwkJZGV2aWNlLT5yZXBlYXQudGltZXIuZnVuY3Rpb24gPSBoaWRpbnB1dF9yZXBl YXRfZXZlbnQ7CisJfQorfQorCiBzdGF0aWMgdm9pZCBoaWRpbnB1dF9jb25maWd1cmVfdXNh Z2Uoc3RydWN0IGhpZF9pbnB1dCAqaGlkaW5wdXQsIHN0cnVjdCBoaWRfZmllbGQgKmZpZWxk LAogCQkJCSAgICAgc3RydWN0IGhpZF91c2FnZSAqdXNhZ2UpCiB7CkBAIC04MjQsNiArOTA0 LDkgQEAKIAkJCW1hcF9rZXkoQlROXzEpOwogCX0KIAorCWlmIChkZXZpY2UtPnF1aXJrcyAm IEhJRF9RVUlSS19DSElDX1BTRVVET0JVVFRPTlNfSEFDSykKKwkJaGlkaW5wdXRfcmVnaXN0 ZXJfcHNldWRvYnV0dG9ucyAoaGlkaW5wdXQsIGZpZWxkLCB1c2FnZSwgYml0LCBjaGljX2Jy b3dzZXJfbW91c2VfYnV0dG9ucywgMSk7CisKIAlpZiAoKGRldmljZS0+cXVpcmtzICYgKEhJ RF9RVUlSS18yV0hFRUxfTU9VU0VfSEFDS183IHwgSElEX1FVSVJLXzJXSEVFTF9NT1VTRV9I QUNLXzUpKSAmJgogCQkgKHVzYWdlLT50eXBlID09IEVWX1JFTCkgJiYgKHVzYWdlLT5jb2Rl ID09IFJFTF9XSEVFTCkpCiAJCQlzZXRfYml0KFJFTF9IV0hFRUwsIGJpdCk7CkBAIC05MjQs NiArMTAwNywxMiBAQAogCQlyZXR1cm47CiAJfQogCisJaWYgKCEoaGlkLT5xdWlya3MgJiBI SURfUVVJUktfQ0hJQ19QU0VVRE9CVVRUT05TX0hBQ0spICYmIAorCSAgICAoaGlkLT5xdWly a3MgJiBISURfUVVJUktfMldIRUVMX01PVVNFX0hBQ0tfT04pICYmICh1c2FnZS0+Y29kZSA9 PSBSRUxfV0hFRUwpKSB7CisJCWlucHV0X2V2ZW50KGlucHV0LCB1c2FnZS0+dHlwZSwgUkVM X0hXSEVFTCwgdmFsdWUpOworCQlyZXR1cm47CisJfQorCiAJaWYgKChoaWQtPnF1aXJrcyAm IEhJRF9RVUlSS18yV0hFRUxfTU9VU0VfSEFDS19PTikgJiYgKHVzYWdlLT5jb2RlID09IFJF TF9XSEVFTCkpIHsKIAkJaW5wdXRfZXZlbnQoaW5wdXQsIHVzYWdlLT50eXBlLCBSRUxfSFdI RUVMLCB2YWx1ZSk7CiAJCXJldHVybjsKQEAgLTk3Myw5ICsxMDYyLDIwIEBACiAJCXJldHVy bjsKIAl9CiAKKwkvKiBGb3IgcXVpcmtzIHdoZXJlIG9uZSBwaHlzaWNhbCBidXR0b24gbG9v a3MgbGlrZSAoYXQgbGVhc3QpIHR3byBvdGhlciBwaHlzaWNhbCBidXR0b25zICovCisJaWYg KCh1c2FnZS0+dHlwZSA9PSBFVl9LRVkpICYmICh1c2FnZS0+aGlkID4gMHgwMDA5MDAwMCkg JiYgKHVzYWdlLT5oaWQgPD0gMHgwMDA5MDAxMCkpIHsKKwkJaWYgKHZhbHVlKQorCQkJaGlk LT5idG5fc3RhdGUgfD0gMSA8PCAodXNhZ2UtPmhpZCAtIDB4MDAwOTAwMDEpOworCQllbHNl CisJCQloaWQtPmJ0bl9zdGF0ZSAmPSB+KDEgPDwgKHVzYWdlLT5oaWQgLSAweDAwMDkwMDAx KSk7CisJfQorCiAJaWYgKCh1c2FnZS0+dHlwZSA9PSBFVl9LRVkpICYmICh1c2FnZS0+Y29k ZSA9PSAwKSkgLyogS2V5IDAgaXMgInVuYXNzaWduZWQiLCBub3QgS0VZX1VOS05PV04gKi8K IAkJcmV0dXJuOwogCisJaWYgKCh1c2FnZS0+dHlwZSA9PSBFVl9LRVkpICYmIChoaWQtPnF1 aXJrcyAmIEhJRF9RVUlSS19DSElDX1BTRVVET0JVVFRPTlNfSEFDSykpIC8qIHNvbWUgYnV0 dG9ucyBtYXkgaGF2ZSBxdWlya3MgLSAqZG9uJ3QqIGdlbmVyYXRlIGV2ZW50cyBqdXN0IHll dCAqLworCQlyZXR1cm47CisKIAlpZiAoKHVzYWdlLT50eXBlID09IEVWX0FCUykgJiYgKGZp ZWxkLT5mbGFncyAmIEhJRF9NQUlOX0lURU1fUkVMQVRJVkUpICYmCiAJCQkodXNhZ2UtPmNv ZGUgPT0gQUJTX1ZPTFVNRSkpIHsKIAkJaW50IGNvdW50ID0gYWJzKHZhbHVlKTsKQEAgLTEw MDYsNiArMTEwNiw2MCBAQAogfQogRVhQT1JUX1NZTUJPTF9HUEwoaGlkaW5wdXRfcmVwb3J0 X2V2ZW50KTsKIAorc3RhdGljIHZvaWQgaGlkaW5wdXRfaGlkX3F1aXJrX3Byb2Nlc3NfcHNl dWRvYnV0dG9ucyAoc3RydWN0IGhpZF9kZXZpY2UgKmhpZCwgc3RydWN0IGlucHV0X2RldiAq aW5wdXQsCisJCQkJCQkgICAgICBjb25zdCBzdHJ1Y3QgaGlkX3BzZXVkb2J1dHRvbl9tYXBw aW5nc190ICptYXBwaW5nKQoreworCV9fdTE2IGJ1dHRvbnMgPSBoaWQtPmJ0bl9zdGF0ZTsK KwlfX3UxNiBwcmV2aW91cyA9IGhpZC0+YnRuX3ByZXZfc3RhdGU7CisJaW50IGk7CisKKwlo aWQtPmJ0bl9wcmV2X3N0YXRlID0gaGlkLT5idG5fc3RhdGU7CisKKwlmb3IgKGkgPSAwOyBt YXBwaW5nW2ldLm1hc2s7ICsraSkgeworCQkvKiBib3RoIGNsZWFyIC0+IGJvdGggc2V0ID0+ IGJ1dHRvbiBpcyBub3cgcHJlc3NlZCAqLworCQlpZiAoIShoaWQtPmJ0bl9xdWlya3MgJiAo MSA8PCBpKSkKKwkJICAgICYmICgocHJldmlvdXMgJiBtYXBwaW5nW2ldLm1hc2spID09IDAp CisJCSAgICAmJiAoKGJ1dHRvbnMgJiBtYXBwaW5nW2ldLm1hc2spID09IG1hcHBpbmdbaV0u bWFzaykpIHsKKwkJCWJ1dHRvbnMgJj0gfm1hcHBpbmdbaV0ubWFzazsKKwkJCWhpZC0+YnRu X3F1aXJrcyB8PSAxIDw8IGk7CisJCQlpbnB1dF9ldmVudCAoaW5wdXQsIG1hcHBpbmdbaV0u dHlwZSwgbWFwcGluZ1tpXS5idXR0b24sIG1hcHBpbmdbaV0udmFsdWUpOworCQkJLyogSWYg aXQncyBzb21ldGhpbmcgbGlrZSBhIHBzZXVkb3doZWVsLCBzdGFydCByZXBlYXRpbmcgaXQu ICovCisJCQlpZiAoKChtYXBwaW5nW2ldLmJ1dHRvbiA9PSBSRUxfV0hFRUwpIHx8IChtYXBw aW5nW2ldLmJ1dHRvbiA9PSBSRUxfSFdIRUVMKSkgJiYKKwkJCSAgICBoaWQtPnJlcGVhdC50 aW1lci5mdW5jdGlvbiAmJiBpbnB1dC0+cmVwW1JFUF9QRVJJT0RdICYmIGlucHV0LT5yZXBb UkVQX0RFTEFZXSkgeworCQkJCWhpZC0+cmVwZWF0LnR5cGUgPSBtYXBwaW5nW2ldLnR5cGU7 CisJCQkJaGlkLT5yZXBlYXQuYnV0dG9uID0gbWFwcGluZ1tpXS5idXR0b247CisJCQkJaGlk LT5yZXBlYXQudmFsdWUgPSBtYXBwaW5nW2ldLnZhbHVlOworCQkJCW1vZF90aW1lcigmaGlk LT5yZXBlYXQudGltZXIsIGppZmZpZXMgKyBtc2Vjc190b19qaWZmaWVzKGlucHV0LT5yZXBb UkVQX0RFTEFZXSkpOworCQkJfQorCQl9CisJCS8qIGJvdGggc2V0IC0+IGVpdGhlciBjbGVh ciA9PiBidXR0b24gaXMgbm93IHJlbGVhc2VkICovCisJCWVsc2UKKwkJaWYgKChoaWQtPmJ0 bl9xdWlya3MgJiAoMSA8PCBpKSkKKwkJICAgICYmICgocHJldmlvdXMgJiBtYXBwaW5nW2ld Lm1hc2spID09IG1hcHBpbmdbaV0ubWFzaykKKwkJICAgICYmICgoYnV0dG9ucyAmIG1hcHBp bmdbaV0ubWFzaykgIT0gbWFwcGluZ1tpXS5tYXNrKSkgeworCQkJYnV0dG9ucyAmPSB+bWFw cGluZ1tpXS5tYXNrOworCQkJaGlkLT5idG5fcXVpcmtzICY9IH4oMSA8PCBpKTsKKwkJCWlu cHV0X2V2ZW50IChpbnB1dCwgbWFwcGluZ1tpXS50eXBlLCBtYXBwaW5nW2ldLmJ1dHRvbiwg MCk7CisJCQlpZiAoKG1hcHBpbmdbaV0uYnV0dG9uID09IFJFTF9XSEVFTCkgfHwgKG1hcHBp bmdbaV0uYnV0dG9uID09IFJFTF9IV0hFRUwpKQorCQkJCWhpZC0+cmVwZWF0LnZhbHVlID0g MDsKKwkJfQorCX0KKworCWZvciAoaSA9IDA7IGkgPCAxNjsgKytpKQorCQlpZiAoKGJ1dHRv bnMgXiBwcmV2aW91cykgJiAoMSA8PCBpKSkKKwkJCWlucHV0X2V2ZW50IChpbnB1dCwgRVZf S0VZLCBCVE5fTU9VU0UgKyBpLCAoYnV0dG9ucyA+PiBpKSAmIDEpOworfQorCit2b2lkIGhp ZGlucHV0X2hpZF9xdWlya3Moc3RydWN0IGhpZF9kZXZpY2UgKmhpZCwgc3RydWN0IGhpZF9m aWVsZCAqZmllbGQpCit7CisJaWYgKCFmaWVsZC0+aGlkaW5wdXQpCisJCXJldHVybjsKKwkv KiBDaGljIGJyb3dzZXIgbW91c2UgKHNvbGQgYXMsIGF0IGxlYXN0LCBBZHZlbnQgNS1idXR0 b24pICovCisJaWYgKGhpZC0+cXVpcmtzICYgSElEX1FVSVJLX0NISUNfUFNFVURPQlVUVE9O U19IQUNLKQorCQloaWRpbnB1dF9oaWRfcXVpcmtfcHJvY2Vzc19wc2V1ZG9idXR0b25zICho aWQsIGZpZWxkLT5oaWRpbnB1dC0+aW5wdXQsIGNoaWNfYnJvd3Nlcl9tb3VzZV9idXR0b25z KTsKK30KK0VYUE9SVF9TWU1CT0xfR1BMKGhpZGlucHV0X2hpZF9xdWlya3MpOworCiBpbnQg aGlkaW5wdXRfZmluZF9maWVsZChzdHJ1Y3QgaGlkX2RldmljZSAqaGlkLCB1bnNpZ25lZCBp bnQgdHlwZSwgdW5zaWduZWQgaW50IGNvZGUsIHN0cnVjdCBoaWRfZmllbGQgKipmaWVsZCkK IHsKIAlzdHJ1Y3QgaGlkX3JlcG9ydCAqcmVwb3J0OwpAQCAtMTEyMCw2ICsxMjc0LDEwIEBA CiAJaWYgKGhpZGlucHV0KQogCQlpbnB1dF9yZWdpc3Rlcl9kZXZpY2UoaGlkaW5wdXQtPmlu cHV0KTsKIAorCWhpZC0+YnRuX3N0YXRlID0gMDsKKwloaWQtPmJ0bl9wcmV2X3N0YXRlID0g MDsKKwloaWQtPmJ0bl9xdWlya3MgPSAwOworCiAJcmV0dXJuIDA7CiB9CiBFWFBPUlRfU1lN Qk9MX0dQTChoaWRpbnB1dF9jb25uZWN0KTsKQEAgLTExMjksNiArMTI4NywxMSBAQAogCXN0 cnVjdCBoaWRfaW5wdXQgKmhpZGlucHV0LCAqbmV4dDsKIAogCWxpc3RfZm9yX2VhY2hfZW50 cnlfc2FmZShoaWRpbnB1dCwgbmV4dCwgJmhpZC0+aW5wdXRzLCBsaXN0KSB7CisJCS8qIFN0 b3AgYW55IHJlcGVhdCB0aW1lciB3aGljaCBtYXkgaGF2ZSBiZWVuIHJlZ2lzdGVyZWQuICov CisJCXN0cnVjdCBoaWRfZGV2aWNlICpkZXZpY2UgPSBoaWRpbnB1dC0+aW5wdXQtPnByaXZh dGU7CisJCWlmIChkZXZpY2UtPnJlcGVhdC50aW1lci5mdW5jdGlvbikKKwkJCWRlbF90aW1l cl9zeW5jKCZkZXZpY2UtPnJlcGVhdC50aW1lcik7CisJCS8qIFVucmVnaXN0ZXIgdGhlIGRl dmljZSBhbmQgY2xlYW4gdXAuICovCiAJCWxpc3RfZGVsKCZoaWRpbnB1dC0+bGlzdCk7CiAJ CWlucHV0X3VucmVnaXN0ZXJfZGV2aWNlKGhpZGlucHV0LT5pbnB1dCk7CiAJCWtmcmVlKGhp ZGlucHV0KTsKZGlmZiAtdXIgbGludXgtMi42LjIzLm9yaWcvZHJpdmVycy9oaWQvdXNiaGlk L2hpZC1xdWlya3MuYyBsaW51eC0yLjYuMjMvZHJpdmVycy9oaWQvdXNiaGlkL2hpZC1xdWly a3MuYwotLS0gbGludXgtMi42LjIzLm9yaWcvZHJpdmVycy9oaWQvdXNiaGlkL2hpZC1xdWly a3MuYwkyMDA3LTEyLTA2IDIzOjM5OjQwLjAwMDAwMDAwMCArMDAwMAorKysgbGludXgtMi42 LjIzL2RyaXZlcnMvaGlkL3VzYmhpZC9oaWQtcXVpcmtzLmMJMjAwNy0xMi0wNiAyMzo0MToz OC4wMDAwMDAwMDAgKzAwMDAKQEAgLTgyLDYgKzgyLDcgQEAKICNkZWZpbmUgVVNCX0RFVklD RV9JRF9DSEVSUllfQ1lNT1RJT04JMHgwMDIzCiAKICNkZWZpbmUgVVNCX1ZFTkRPUl9JRF9D SElDCQkweDA1ZmUKKyNkZWZpbmUgVVNCX0RFVklDRV9JRF9DSElDX0JST1dTRVJfTU9VU0Ug MHgwMDExCiAjZGVmaW5lIFVTQl9ERVZJQ0VfSURfQ0hJQ19HQU1FUEFECTB4MDAxNAogCiAj ZGVmaW5lIFVTQl9WRU5ET1JfSURfQ0lEQwkJMHgxNjc3CkBAIC0zNTUsNiArMzU2LDcgQEAK IAogCXsgVVNCX1ZFTkRPUl9JRF9BNFRFQ0gsIFVTQl9ERVZJQ0VfSURfQTRURUNIX1dDUDMy UFUsIEhJRF9RVUlSS18yV0hFRUxfTU9VU0VfSEFDS183IH0sCiAJeyBVU0JfVkVORE9SX0lE X0NZUFJFU1MsIFVTQl9ERVZJQ0VfSURfQ1lQUkVTU19NT1VTRSwgSElEX1FVSVJLXzJXSEVF TF9NT1VTRV9IQUNLXzUgfSwKKwl7IFVTQl9WRU5ET1JfSURfQ0hJQywgVVNCX0RFVklDRV9J RF9DSElDX0JST1dTRVJfTU9VU0UsIEhJRF9RVUlSS19DSElDX1BTRVVET0JVVFRPTlNfSEFD SyB9LAogCiAJeyBVU0JfVkVORE9SX0lEX0xPR0lURUNILCBVU0JfREVWSUNFX0lEX0xPR0lU RUNIX1JFQ0VJVkVSLCBISURfUVVJUktfQkFEX1JFTEFUSVZFX0tFWVMgfSwKIApkaWZmIC11 ciBsaW51eC0yLjYuMjMub3JpZy9pbmNsdWRlL2xpbnV4L2hpZC5oIGxpbnV4LTIuNi4yMy9p bmNsdWRlL2xpbnV4L2hpZC5oCi0tLSBsaW51eC0yLjYuMjMub3JpZy9pbmNsdWRlL2xpbnV4 L2hpZC5oCTIwMDctMTItMDYgMjM6Mzk6NDkuMDAwMDAwMDAwICswMDAwCisrKyBsaW51eC0y LjYuMjMvaW5jbHVkZS9saW51eC9oaWQuaAkyMDA3LTEyLTA2IDIzOjQzOjE1LjAwMDAwMDAw MCArMDAwMApAQCAtMjc2LDYgKzI3Niw3IEBACiAjZGVmaW5lIEhJRF9RVUlSS19ISURJTlBV VAkJCTB4MDAyMDAwMDAKICNkZWZpbmUgSElEX1FVSVJLX0xPR0lURUNIX0lHTk9SRV9ET1VC TEVEX1dIRUVMCTB4MDA0MDAwMDAKICNkZWZpbmUgSElEX1FVSVJLX0xPR0lURUNIX0VYUEFO REVEX0tFWU1BUAkweDAwODAwMDAwCisjZGVmaW5lIEhJRF9RVUlSS19DSElDX1BTRVVET0JV VFRPTlNfSEFDSwkweDAxMDAwMDAwCiAKIC8qCiAgKiBTZXBhcmF0ZSBxdWlya3MgZm9yIHJ1 bnRpbWUgcmVwb3J0IGRlc2NyaXB0b3IgZml4dXAKQEAgLTQ2Miw2ICs0NjMsMTYgQEAKIAl1 bnNpZ25lZCBsb25nIHBiX3ByZXNzZWRfZm5bTkJJVFMoS0VZX01BWCldOwogCXVuc2lnbmVk IGxvbmcgcGJfcHJlc3NlZF9udW1sb2NrW05CSVRTKEtFWV9NQVgpXTsKICNlbmRpZgorCisJ LyogRm9yIHF1aXJrcyB3aGVyZSBvbmUgcGh5c2ljYWwgYnV0dG9uIGxvb2tzIGxpa2UgKGF0 IGxlYXN0KSB0d28gb3RoZXIgcGh5c2ljYWwgYnV0dG9ucyAqLworCV9fdTE2IGJ0bl9zdGF0 ZSwgYnRuX3ByZXZfc3RhdGU7CQkJCS8qIEJ1dHRvbiBtYXAgZGF0YSAqLworCV9fdTMyIGJ0 bl9xdWlya3M7CQkJCQkJLyogV2hpY2ggb2YgdGhlIGV4dHJhIGJ1dHRvbnMgYXJlIGFjdGl2 ZSAqLworCisJc3RydWN0IHsKKwkJX191MTYgdHlwZSwgYnV0dG9uOworCQlfX3MxNiB2YWx1 ZTsKKwkJc3RydWN0IHRpbWVyX2xpc3QgdGltZXI7CisJfSByZXBlYXQ7CiB9OwogCiAjZGVm aW5lIEhJRF9HTE9CQUxfU1RBQ0tfU0laRSA0CkBAIC01MDQsNiArNTE1LDcgQEAKIAogZXh0 ZXJuIHZvaWQgaGlkaW5wdXRfaGlkX2V2ZW50KHN0cnVjdCBoaWRfZGV2aWNlICosIHN0cnVj dCBoaWRfZmllbGQgKiwgc3RydWN0IGhpZF91c2FnZSAqLCBfX3MzMik7CiBleHRlcm4gdm9p ZCBoaWRpbnB1dF9yZXBvcnRfZXZlbnQoc3RydWN0IGhpZF9kZXZpY2UgKmhpZCwgc3RydWN0 IGhpZF9yZXBvcnQgKnJlcG9ydCk7CitleHRlcm4gdm9pZCBoaWRpbnB1dF9oaWRfcXVpcmtz KHN0cnVjdCBoaWRfZGV2aWNlICosIHN0cnVjdCBoaWRfZmllbGQgKik7CiBleHRlcm4gaW50 IGhpZGlucHV0X2Nvbm5lY3Qoc3RydWN0IGhpZF9kZXZpY2UgKik7CiBleHRlcm4gdm9pZCBo aWRpbnB1dF9kaXNjb25uZWN0KHN0cnVjdCBoaWRfZGV2aWNlICopOwogCg== --87320080--2085559755--209819346--