Bug#642762: xulrunner-6.0: console flooded with unaligned access messages on ia64 (IA-64/IPF/Itanium) platform
Émeric Maschino
emeric.maschino at gmail.com
Mon Sep 26 21:10:20 UTC 2011
Mike,
2011/9/25 Mike Hommey <mh at glandium.org>:
> nsISupportsImpl.cpp:44 is:
> while (entries->iid) {
>
> entries is 0x70004008fb8, and its type is a pointer to:
>
> struct QITableEntry
> {
> const nsIID *iid;
> PROffset32 offset;
> };
>
> I fail to see how this can be unaligned...
>
> What is the corresponding address of that particular SIGBUS?
Reporting and helping debugging unaligned access is new to me and I
can't find any decent howto on the web. So, I'm not sure to fully
understand what exactly you need :-(.
Do you simply want to check that the memory address of the SIGBUS is
indeed pointing to NS_TableDrivenQI()?
In an other debug session, here is what I've recorded:
(gdb) run
Starting program: /usr/lib/iceweasel/firefox-bin
[Thread debugging using libthread_db enabled]
[New Thread 0x700088c71e0 (LWP 4310)]
[New Thread 0x700091331e0 (LWP 4311)]
Program received signal SIGBUS, Bus error.
0x00000700033b3130 in NS_TableDrivenQI (aThis=0x70007174f40, entries=0x70004008f
b8, aIID=..., aInstancePtr=0x70007168c58) at /build/buildd-iceweasel_6.0.2-1-ia6
4-HBKkq9/iceweasel-6.0.2/build-xulrunner/xpcom/build/nsISupportsImpl.cpp:44
44 /build/buildd-iceweasel_6.0.2-1-ia64-HBKkq9/iceweasel-6.0.2/build-xulrun
ner/xpcom/build/nsISupportsImpl.cpp: Aucun fichier ou dossier de ce type.
in /build/buildd-iceweasel_6.0.2-1-ia64-HBKkq9/iceweasel-6.0.2/build-xul
runner/xpcom/build/nsISupportsImpl.cpp
(gdb) x 0x700033b3130
0x700033b3130 <NS_TableDrivenQI(void*, QITableEntry const*, nsID const&, void**)
+48>: 0x44208809
(gdb) x 0x70004008fb8
0x70004008fb8 <_ZZN15nsSupportsArray14QueryInterfaceERK4nsIDPPvE5table>:
0x0390ab74
(gdb) p entries
$1 = (const QITableEntry *) 0x70004008fb8
(gdb) p entries->iid
$2 = (const nsIID *) 0x7000390ab74
(gdb) p entries->offset
$3 = 0
Does it answer your question or not at all?
FYI, no unaligned access message is logged (neither in the console
/var/log/kern.log, /var/log/messages or /var/log/syslog) while in GDB.
Is this what you would like that I try to catch while running
Iceweasel in GDB?
Émeric
More information about the pkg-mozilla-maintainers
mailing list