From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from [140.186.70.92] (port=58318 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1OIoKz-0007z8-Ll for qemu-devel@nongnu.org; Sun, 30 May 2010 15:38:22 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from ) id 1OIoKy-0008HC-Jl for qemu-devel@nongnu.org; Sun, 30 May 2010 15:38:21 -0400 Received: from mail-px0-f173.google.com ([209.85.212.173]:51870) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from ) id 1OIoKy-0008H6-C9 for qemu-devel@nongnu.org; Sun, 30 May 2010 15:38:20 -0400 Received: by pxi2 with SMTP id 2so1312221pxi.4 for ; Sun, 30 May 2010 12:38:19 -0700 (PDT) MIME-Version: 1.0 In-Reply-To: <20100530134935.GC24302@redhat.com> References: <4C00C921.2060809@web.de> <20100529144641.GF3604@redhat.com> <20100529163709.GJ3604@redhat.com> <20100530060255.GJ5474@redhat.com> <20100530123316.GB24302@redhat.com> <20100530134935.GC24302@redhat.com> From: Blue Swirl Date: Sun, 30 May 2010 19:37:59 +0000 Message-ID: Subject: Re: [Qemu-devel] Re: [RFT][PATCH 07/15] qemu_irq: Add IRQ handlers with delivery feedback Content-Type: multipart/mixed; boundary=001636b2be3fdeb5b50487d4e11a List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: Gleb Natapov Cc: Jan Kiszka , qemu-devel@nongnu.org, Juan Quintela --001636b2be3fdeb5b50487d4e11a Content-Type: text/plain; charset=UTF-8 On Sun, May 30, 2010 at 1:49 PM, Gleb Natapov wrote: > On Sun, May 30, 2010 at 12:56:26PM +0000, Blue Swirl wrote: >> >> Well, I'd like to get the test program also trigger it. Now I'm getting: >> >> apic: write: 00000350 = 00000000 >> >> apic: apic_reset_irq_delivered: old coalescing 0 >> >> apic: apic_local_deliver: vector 3 delivery mode 0 >> >> apic: apic_set_irq: coalescing 1 >> >> apic: apic_get_irq_delivered: returning coalescing 1 >> >> apic: apic_reset_irq_delivered: old coalescing 1 >> >> apic: apic_local_deliver: vector 3 delivery mode 0 >> >> apic: apic_set_irq: coalescing 0 >> >> apic: apic_get_irq_delivered: returning coalescing 0 >> >> apic: apic_reset_irq_delivered: old coalescing 0 >> >> apic: apic_local_deliver: vector 3 delivery mode 0 >> >> apic: apic_set_irq: coalescing 0 >> >> > So interrupt is _alway_ coalesced. If apic_get_irq_delivered() returns > 0 it means the interrupt was not delivered. That seems strange. I changed the program so that the handler gets executed, also output a dot to serial from the handler. I changed the frequency to 2Hz. Now, if I leave out -rtc-td-hack, I get the dots at 2Hz as expected. With -rtc-td-hack, the dots come out much faster. I added DEBUG_COALESCING also to RTC, with that enabled I get: qemu -L . -bios coalescing.bin -d in_asm,int -no-hpet -rtc-td-hack -serial stdio cmos: coalesced irqs scaled to 0 cmos: coalesced irqs increased to 1 cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack .cmos: injecting on ack ..cmos: injecting from timer .cmos: coalesced irqs increased to 2 cmos: injecting on ack So, there are bogus injections. --001636b2be3fdeb5b50487d4e11a Content-Type: application/octet-stream; name="coalescing.S" Content-Disposition: attachment; filename="coalescing.S" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g9u9koxq0 CiAgICAgICAgLnNlY3Rpb24gLnRleHQsICJheCIKICAgICAgICAuY29kZTE2Z2NjCgojZGVmaW5l IE8ocG9ydCwgdmFsKSAgICAgICAgICAgIFwKICAgICAgICBtb3ZiICAgICR2YWwsICVhbDsgICAg ICBcCiAgICAgICAgb3V0ICAgICAlYWwsICRwb3J0CiNkZWZpbmUgTzE2UChwb3J0LCB2YWwpICAg ICAgICAgXAogICAgICAgIG1vdmIgICAgJHZhbCwgJWFsOyAgICAgIFwKICAgICAgICBtb3Z3ICAg ICRwb3J0LCAlZHg7ICAgICBcCiAgICAgICAgb3V0ICAgICAlYWwsICglZHgpCiNkZWZpbmUgUlRD X08ocG9ydCwgdmFsKSAgICAgICAgXAogICAgICAgIE8oMHg3MCwgcG9ydCk7ICAgICAgICAgIFwK ICAgICAgICBPKDB4NzEsIHZhbCkKI2RlZmluZSBSVENfSShwb3J0KSAgICAgICAgICAgICBcCiAg ICAgICAgTygweDcwLCBwb3J0KTsgICAgICAgICAgXAogICAgICAgIGluICAgICAgJDB4NzEsICVh bAoKICAgICAgICAub3JnIDB4MTAwMDAKICAgICAgICAuZ2xvYmwgc3RhcnQKc3RhcnQ6CiAgICAg ICAgLyogQTIwICovCiAgICAgICAgTygweDkyLCAweDAxKQoKICAgICAgICAvKiBJRFQgKi8KICAg ICAgICBsaWR0dyAgICVjczoweDIwMDAKCiAgICAgICAgLyogR0RUICovCiAgICAgICAgbGdkdHcg ICAlY3M6MHgyMDEwCgogICAgICAgIC8qIFN3aXRjaCB0byBwcm90ZWN0ZWQgbW9kZSAqLwogICAg ICAgIG1vdmwgICAgJWNyMCwgJWVheAogICAgICAgIG9ybCAgICAgJDEsICVlYXgKICAgICAgICBt b3ZsICAgICVlYXgsICVjcjAKICAgICAgICBsam1wbCAgICQ4LCAkMHhmNDAwMAogICAgICAgIC5v cmcgMHgxMTAwMAoKICAgICAgICAuY29kZTMyCgogICAgICAgIC8qIElOVCA3MCBoYW5kbGVyICov CiAgICAgICAgUlRDX0koMHhjKQogICAgICAgIE8oMHhhMCwgMHgyMCkKICAgICAgICBPKDB4MjAs IDB4MjApCiAgICAgICAgLyogT3V0cHV0IGEgZG90ICovCiAgICAgICAgTzE2UCgweDNmOCwgJy4n KQogICAgICAgIGlyZXQKCiAgICAgICAgLm9yZyAweDEyMDAwCgogICAgICAgIC8qIElEVEQgKi8K ICAgICAgICAuc2hvcnQgMHgwNDAwCiAgICAgICAgLmxvbmcgMHgwZjMwMDAKCiAgICAgICAgLm9y ZyAweDEyMDEwCgogICAgICAgIC8qIEdEVEQgKi8KICAgICAgICAuc2hvcnQgMHgwMDIwCiAgICAg ICAgLmxvbmcgMHhmMzQwMAoKICAgICAgICAub3JnIDB4MTMzODAKCiAgICAgICAgLyogSURUIGVu dHJ5IGZvciBJTlQgNzAgKi8KICAgICAgICAubG9uZyAweDAwMDgxMDAwLCAweDAwMGY4ZTAwCgog ICAgICAgIC5vcmcgMHgxMzQwOAoKICAgICAgICAvKiBHRFQgZW50cnkgZm9yIDFzdCBkZXNjcmlw dG9yLCBDUyAqLwogICAgICAgIC5zaG9ydCAweGZmZmYsIDB4MDAwMCwgMHg5YjAwLCAweDAwY2YK ICAgICAgICAvKiBHRFQgZW50cnkgZm9yIDJuZCBkZXNjcmlwdG9yLCBEUyBldGMuICovCiAgICAg ICAgLnNob3J0IDB4ZmZmZiwgMHgwMDAwLCAweDkzMDAsIDB4MDBjZgoKICAgICAgICAub3JnIDB4 MTQwMDAKICAgICAgICBtb3ZsICAgICQweDEwLCAlZWF4CiAgICAgICAgbW92dyAgICAlYXgsICVk cwogICAgICAgIG1vdncgICAgJWF4LCAlc3MKICAgICAgICBtb3ZsICAgICQweDEwMDAsICVlc3AK CiAgICAgICAgLyogTWFzdGVyIFBJQyAqLwogICAgICAgIC8qIElDVzEgKi8KICAgICAgICBPKDB4 MjAsIDB4MTEpCiAgICAgICAgLyogSUNXMiAqLwogICAgICAgIE8oMHgyMSwgMHgwOCkKICAgICAg ICAvKiBJQ1czICovCiAgICAgICAgTygweDIxLCAweDA0KQogICAgICAgIC8qIElDVzQgKi8KICAg ICAgICBPKDB4MjEsIDB4MDEpCiAgICAgICAgLyogT0NXMTogb25seSBzbGF2ZSBJUlFzICovCiAg ICAgICAgTygweDIxLCAweGZiKQoKICAgICAgICAvKiBTbGF2ZSBQSUMgKi8KICAgICAgICAvKiBJ Q1cxICovCiAgICAgICAgTygweGEwLCAweDExKQogICAgICAgIC8qIElDVzIgKi8KICAgICAgICBP KDB4YTEsIDB4NzApCiAgICAgICAgLyogSUNXMyAqLwogICAgICAgIE8oMHhhMSwgMHgwMikKICAg ICAgICAvKiBJQ1c0ICovCiAgICAgICAgTygweGExLCAweDAxKQogICAgICAgIC8qIE9DVzE6IG9u bHkgUlRDIElSUSAqLwogICAgICAgIE8oMHhhMSwgMHhmZSkKCiAgICAgICAgLyogU2VyaWFsICov CiAgICAgICAgLyogTENSICovCiAgICAgICAgTzE2UCgweDNmYiwgMHg4NykKICAgICAgICAvKiBE TE0gKi8KICAgICAgICBPMTZQKDB4M2Y5LCAweDAwKQogICAgICAgIC8qIERMTCAqLwogICAgICAg IE8xNlAoMHgzZjgsIDB4MGMpCiAgICAgICAgLyogTENSICovCiAgICAgICAgTzE2UCgweDNmYiwg MHgwNykKICAgICAgICAvKiBNQ1IgKi8KICAgICAgICBPMTZQKDB4M2ZjLCAweDBmKQoKICAgICAg ICAvKiBzZXQgdXAgQVBJQyBMVlQgKi8KICAgICAgICBtb3ZsICAgICQweDA3MDAsICVlYXgKICAg ICAgICBtb3YgICAgICVlYXgsIDB4ZmVlMDAzNTAKCiAgICAgICAgLyogUlRDOiBmcmVxdWVuY3kg Mkh6ICovCiAgICAgICAgUlRDX08oMHhhLCAweDJmKQogICAgICAgIC8qIEVuYWJsZSBJUlEgKi8K ICAgICAgICBSVENfTygweGIsIDB4NDApCgogICAgICAgIHN0aQogICAgICAgIG5vcAoxOgogICAg ICAgIGhsdAogICAgICAgIGptcCAgICAgMWIKCiAgICAgICAgLnNlY3Rpb24gLnJlc2V0LCAiYXgi CiAgICAgICAgLmdsb2JsICBlbnRyeQogICAgICAgIC5jb2RlMTZnY2MKZW50cnk6CiAgICAgICAg Y2xpCiAgICAgICAgbGptcCAgICAkMHhmMDAwLCAkMHgwMDAwCiAgICAgICAgbm9wCiAgICAgICAg bm9wCiAgICAgICAgbm9wCiAgICAgICAgbm9wCiAgICAgICAgbm9wCiAgICAgICAgbm9wCiAgICAg ICAgbm9wCiAgICAgICAgbm9wCiAgICAgICAgbm9wCiAgICAgICAgbm9wCgo= --001636b2be3fdeb5b50487d4e11a Content-Type: application/x-bzip2; name="coalescing.bin.bz2" Content-Disposition: attachment; filename="coalescing.bin.bz2" Content-Transfer-Encoding: base64 X-Attachment-Id: f_g9u9kw4t1 QlpoOTFBWSZTWYKAAbYAAIH///3c4QFwAcQAQABAAAEAYAoIgVgIaABAVEBAwEBFGUV/sADZaDSF PFMmhoADQ0MgGgDRtTE9QamlPSeoyBoYgZNDRoxNNAaPRMmgkkoaGQAAAAANAAAIPQzAJQskn3OS iMCQj4+4AAHgm/h3RgAAKbJ9lNecgAA2NBtq0Io/C5KWwgAB/s4EgQqnoP+RSqSsDmtHIa5I9kYx QLwu8IqgSMldTBfUDgHXmQFgC8z8cK3a8vbYNdKgkjog6izGqdSgEDFVMdQOi630jYZamJXKEOJM t58FPVlmYv7GJbEznXxgi+Ta2cUuOsegS3BA22COITUl1OQIiIiOIYjtaigKb/F3JFOFCQgoABtg --001636b2be3fdeb5b50487d4e11a--