mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [3.2-rc4 x86] (Compiler bug?) Uninitialized variable in ioapic_read_entry()
@ 2011-12-07 13:20 Tetsuo Handa
  2011-12-07 14:29 ` Steven Rostedt
  0 siblings, 1 reply; 2+ messages in thread
From: Tetsuo Handa @ 2011-12-07 13:20 UTC (permalink / raw)
  To: linux-kernel

Regarding commit e57253a8 "x86, ioapic: Restore the mask bit correctly in
eoi_ioapic_irq()", I got below warning:

  arch/x86/kernel/apic/io_apic.c: In function 'ioapic_read_entry':
  arch/x86/kernel/apic/io_apic.c:385: warning: 'eu' is used uninitialized in this function

 369: union entry_union {
 370:   struct { u32 w1, w2; };
 371:   struct IO_APIC_route_entry entry;
 372: };
 373:
 374: static struct IO_APIC_route_entry __ioapic_read_entry(int apic, int pin)
 375: {
 376:   union entry_union eu;
 377:
 378:   eu.w1 = io_apic_read(apic, 0x10 + 2 * pin);
 379:   eu.w2 = io_apic_read(apic, 0x11 + 2 * pin);
 380:   return eu.entry;
 381: }
 382:
 383: static struct IO_APIC_route_entry ioapic_read_entry(int apic, int pin)
 384: {
 385:   union entry_union eu;
 386:   unsigned long flags;
 387:   raw_spin_lock_irqsave(&ioapic_lock, flags);
 388:   eu.entry = __ioapic_read_entry(apic, pin);
 389:   raw_spin_unlock_irqrestore(&ioapic_lock, flags);
 390:   return eu.entry;
 391: }

I compared using several gcc versions.
It turned out that only gcc 4.4 shows this warning.

--- gcc (SUSE Linux) 4.6.2 in OpenSUSE 12.1 ---
  CC      arch/x86/kernel/apic/io_apic.o
--- gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4) on Fedora 14 ---
  CC      arch/x86/kernel/apic/io_apic.o
--- gcc (Debian 4.4.5-8) 4.4.5 on Debian Squeeze ---
  CC      arch/x86/kernel/apic/io_apic.o
arch/x86/kernel/apic/io_apic.c: In function ‘ioapic_read_entry’:
arch/x86/kernel/apic/io_apic.c:385: warning: ‘eu’ is used uninitialized in this function
--- gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3 on Ubuntu 10.04 ---
  CC      arch/x86/kernel/apic/io_apic.o
arch/x86/kernel/apic/io_apic.c: In function ‘ioapic_read_entry’:
arch/x86/kernel/apic/io_apic.c:385: warning: ‘eu’ is used uninitialized in this function
--- gcc (Debian 4.3.2-1.1) 4.3.2 on Debian Lenny ---
  CC      arch/x86/kernel/apic/io_apic.o
--- gcc (GCC) 4.2.4 (Ubuntu 4.2.4-1ubuntu4) on Ubuntu 8.04 ---
  CC      arch/x86/kernel/apic/io_apic.o
--- gcc (GCC) 4.1.2 20080704 (Red Hat 4.1.2-51) on CentOS 5 ---
  CC      arch/x86/kernel/apic/io_apic.o
--- gcc (GCC) 3.3.5 (Debian 1:3.3.5-13) on Debian Sarge ---
  CC      arch/x86/kernel/apic/io_apic.o
arch/x86/kernel/apic/io_apic.c: In function `setup_ir_ioapic_entry':
arch/x86/kernel/apic/io_apic.c:1354: warning: unsigned int format, different type arg (arg 11)

It turned out that gcc 4.3 and 4.5 do not inline __ioapic_read_entry() whereas
gcc 4.4 inlines __ioapic_read_entry().

--- gcc (Debian 4.3.2-1.1) 4.3.2 on Debian Lenny ---

00000040 <__ioapic_read_entry>:
      40:       56                      push   %esi
      41:       53                      push   %ebx
      42:       8d 58 05                lea    0x5(%eax),%ebx
      45:       8d 04 80                lea    (%eax,%eax,4),%eax
      48:       8b 0c c5 ac 08 00 00    mov    0x8ac(,%eax,8),%ecx
      4f:       c1 e3 0c                shl    $0xc,%ebx
      52:       8d 74 12 10             lea    0x10(%edx,%edx,1),%esi
      56:       81 e1 ff 0f 00 00       and    $0xfff,%ecx
      5c:       03 0d 00 00 00 00       add    0x0,%ecx
      62:       29 d9                   sub    %ebx,%ecx
      64:       89 31                   mov    %esi,(%ecx)
      66:       83 c1 10                add    $0x10,%ecx
      69:       8b 09                   mov    (%ecx),%ecx
      6b:       8b 04 c5 ac 08 00 00    mov    0x8ac(,%eax,8),%eax
      72:       8d 54 12 11             lea    0x11(%edx,%edx,1),%edx
      76:       25 ff 0f 00 00          and    $0xfff,%eax
      7b:       03 05 00 00 00 00       add    0x0,%eax
      81:       29 d8                   sub    %ebx,%eax
      83:       89 10                   mov    %edx,(%eax)
      85:       83 c0 10                add    $0x10,%eax
      88:       8b 10                   mov    (%eax),%edx
      8a:       89 c8                   mov    %ecx,%eax
      8c:       5b                      pop    %ebx
      8d:       5e                      pop    %esi
      8e:       c3                      ret
      8f:       90                      nop

000004e0 <ioapic_read_entry>:
     4e0:       83 ec 0c                sub    $0xc,%esp
     4e3:       89 74 24 04             mov    %esi,0x4(%esp)
     4e7:       89 c6                   mov    %eax,%esi
     4e9:       b8 4e 08 00 00          mov    $0x84e,%eax
     4ee:       89 1c 24                mov    %ebx,(%esp)
     4f1:       89 d3                   mov    %edx,%ebx
     4f3:       89 7c 24 08             mov    %edi,0x8(%esp)
     4f7:       e8 fc ff ff ff          call   4f8 <ioapic_read_entry+0x18>
     4fc:       89 da                   mov    %ebx,%edx
     4fe:       89 c7                   mov    %eax,%edi
     500:       89 f0                   mov    %esi,%eax
     502:       e8 39 fb ff ff          call   40 <__ioapic_read_entry>
     507:       89 c6                   mov    %eax,%esi
     509:       89 d3                   mov    %edx,%ebx
     50b:       b8 4e 08 00 00          mov    $0x84e,%eax
     510:       89 fa                   mov    %edi,%edx
     512:       e8 fc ff ff ff          call   513 <ioapic_read_entry+0x33>
     517:       89 f0                   mov    %esi,%eax
     519:       89 da                   mov    %ebx,%edx
     51b:       8b 1c 24                mov    (%esp),%ebx
     51e:       8b 74 24 04             mov    0x4(%esp),%esi
     522:       8b 7c 24 08             mov    0x8(%esp),%edi
     526:       83 c4 0c                add    $0xc,%esp
     529:       c3                      ret
     52a:       8d b6 00 00 00 00       lea    0x0(%esi),%esi

--- gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3 on Ubuntu 10.04 ---

00001d60 <ioapic_read_entry>:
    1d60:       83 ec 0c                sub    $0xc,%esp
    1d63:       89 1c 24                mov    %ebx,(%esp)
    1d66:       89 c3                   mov    %eax,%ebx
    1d68:       b8 4e 08 00 00          mov    $0x84e,%eax
    1d6d:       89 74 24 04             mov    %esi,0x4(%esp)
    1d71:       89 7c 24 08             mov    %edi,0x8(%esp)
    1d75:       89 d7                   mov    %edx,%edi
    1d77:       e8 fc ff ff ff          call   1d78 <ioapic_read_entry+0x18>
    1d7c:       8d 53 05                lea    0x5(%ebx),%edx
    1d7f:       8d 1c 9b                lea    (%ebx,%ebx,4),%ebx
    1d82:       8b 0c dd ac 08 00 00    mov    0x8ac(,%ebx,8),%ecx
    1d89:       c1 e2 0c                shl    $0xc,%edx
    1d8c:       8d 74 3f 10             lea    0x10(%edi,%edi,1),%esi
    1d90:       81 e1 ff 0f 00 00       and    $0xfff,%ecx
    1d96:       03 0d 00 00 00 00       add    0x0,%ecx
    1d9c:       29 d1                   sub    %edx,%ecx
    1d9e:       89 31                   mov    %esi,(%ecx)
    1da0:       8b 71 10                mov    0x10(%ecx),%esi
    1da3:       8b 0c dd ac 08 00 00    mov    0x8ac(,%ebx,8),%ecx
    1daa:       8d 7c 3f 11             lea    0x11(%edi,%edi,1),%edi
    1dae:       81 e1 ff 0f 00 00       and    $0xfff,%ecx
    1db4:       03 0d 00 00 00 00       add    0x0,%ecx
    1dba:       29 d1                   sub    %edx,%ecx
    1dbc:       89 39                   mov    %edi,(%ecx)
    1dbe:       8b 59 10                mov    0x10(%ecx),%ebx
    1dc1:       89 c2                   mov    %eax,%edx
    1dc3:       b8 4e 08 00 00          mov    $0x84e,%eax
    1dc8:       e8 fc ff ff ff          call   1dc9 <ioapic_read_entry+0x69>
    1dcd:       89 f0                   mov    %esi,%eax
    1dcf:       89 da                   mov    %ebx,%edx
    1dd1:       8b 1c 24                mov    (%esp),%ebx
    1dd4:       8b 74 24 04             mov    0x4(%esp),%esi
    1dd8:       8b 7c 24 08             mov    0x8(%esp),%edi
    1ddc:       83 c4 0c                add    $0xc,%esp
    1ddf:       c3                      ret

--- gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4) on Fedora 14 ---

00000020 <__ioapic_read_entry>:
      20:       56                      push   %esi
      21:       8d 48 05                lea    0x5(%eax),%ecx
      24:       8d 04 80                lea    (%eax,%eax,4),%eax
      27:       53                      push   %ebx
      28:       8d 1c c5 60 08 00 00    lea    0x860(,%eax,8),%ebx
      2f:       8b 43 0c                mov    0xc(%ebx),%eax
      32:       c1 e1 0c                shl    $0xc,%ecx
      35:       8d 74 12 10             lea    0x10(%edx,%edx,1),%esi
      39:       25 ff 0f 00 00          and    $0xfff,%eax
      3e:       03 05 00 00 00 00       add    0x0,%eax
      44:       29 c8                   sub    %ecx,%eax
      46:       89 30                   mov    %esi,(%eax)
      48:       8b 40 10                mov    0x10(%eax),%eax
      4b:       8d 74 12 11             lea    0x11(%edx,%edx,1),%esi
      4f:       8b 53 0c                mov    0xc(%ebx),%edx
      52:       81 e2 ff 0f 00 00       and    $0xfff,%edx
      58:       03 15 00 00 00 00       add    0x0,%edx
      5e:       29 ca                   sub    %ecx,%edx
      60:       89 32                   mov    %esi,(%edx)
      62:       8b 52 10                mov    0x10(%edx),%edx
      65:       5b                      pop    %ebx
      66:       5e                      pop    %esi
      67:       c3                      ret
      68:       90                      nop
      69:       8d b4 26 00 00 00 00    lea    0x0(%esi,%eiz,1),%esi

00000200 <ioapic_read_entry>:
     200:       83 ec 0c                sub    $0xc,%esp
     203:       89 1c 24                mov    %ebx,(%esp)
     206:       89 c3                   mov    %eax,%ebx
     208:       b8 62 12 00 00          mov    $0x1262,%eax
     20d:       89 74 24 04             mov    %esi,0x4(%esp)
     211:       89 d6                   mov    %edx,%esi
     213:       89 7c 24 08             mov    %edi,0x8(%esp)
     217:       e8 fc ff ff ff          call   218 <ioapic_read_entry+0x18>
     21c:       89 f2                   mov    %esi,%edx
     21e:       89 c7                   mov    %eax,%edi
     220:       89 d8                   mov    %ebx,%eax
     222:       e8 f9 fd ff ff          call   20 <__ioapic_read_entry>
     227:       89 c3                   mov    %eax,%ebx
     229:       89 d6                   mov    %edx,%esi
     22b:       b8 62 12 00 00          mov    $0x1262,%eax
     230:       89 fa                   mov    %edi,%edx
     232:       e8 fc ff ff ff          call   233 <ioapic_read_entry+0x33>
     237:       89 d8                   mov    %ebx,%eax
     239:       89 f2                   mov    %esi,%edx
     23b:       8b 1c 24                mov    (%esp),%ebx
     23e:       8b 74 24 04             mov    0x4(%esp),%esi
     242:       8b 7c 24 08             mov    0x8(%esp),%edi
     246:       83 c4 0c                add    $0xc,%esp
     249:       c3                      ret
     24a:       8d b6 00 00 00 00       lea    0x0(%esi),%esi

Also, it turned out that this warning does not apprar when compiled with
CONFIG_M586MMX and earlier. This warning appears when compiled with CONFIG_M686
and later.

I don't know whether this warning is a false positive or not.
Can somebody who understand assembly code check this?

Regards.

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [3.2-rc4 x86] (Compiler bug?) Uninitialized variable in ioapic_read_entry()
  2011-12-07 13:20 [3.2-rc4 x86] (Compiler bug?) Uninitialized variable in ioapic_read_entry() Tetsuo Handa
@ 2011-12-07 14:29 ` Steven Rostedt
  0 siblings, 0 replies; 2+ messages in thread
From: Steven Rostedt @ 2011-12-07 14:29 UTC (permalink / raw)
  To: Tetsuo Handa; +Cc: linux-kernel

On Wed, Dec 07, 2011 at 10:20:43PM +0900, Tetsuo Handa wrote:
> Regarding commit e57253a8 "x86, ioapic: Restore the mask bit correctly in
> eoi_ioapic_irq()", I got below warning:
> 
>   arch/x86/kernel/apic/io_apic.c: In function 'ioapic_read_entry':
>   arch/x86/kernel/apic/io_apic.c:385: warning: 'eu' is used uninitialized in this function
> 
>  369: union entry_union {
>  370:   struct { u32 w1, w2; };
>  371:   struct IO_APIC_route_entry entry;
>  372: };
>  373:
>  374: static struct IO_APIC_route_entry __ioapic_read_entry(int apic, int pin)
>  375: {
>  376:   union entry_union eu;
>  377:
>  378:   eu.w1 = io_apic_read(apic, 0x10 + 2 * pin);
>  379:   eu.w2 = io_apic_read(apic, 0x11 + 2 * pin);
>  380:   return eu.entry;
>  381: }
>  382:
>  383: static struct IO_APIC_route_entry ioapic_read_entry(int apic, int pin)
>  384: {
>  385:   union entry_union eu;
>  386:   unsigned long flags;
>  387:   raw_spin_lock_irqsave(&ioapic_lock, flags);
>  388:   eu.entry = __ioapic_read_entry(apic, pin);
>  389:   raw_spin_unlock_irqrestore(&ioapic_lock, flags);
>  390:   return eu.entry;
>  391: }

The above code looks fine. The only real differences is that the
"packed" attribute is not used by the above, but that really shouldn't
matter because gcc should always pack two u32 words together.

> 
> I compared using several gcc versions.
> It turned out that only gcc 4.4 shows this warning.
> 

[snip]

> 
> It turned out that gcc 4.3 and 4.5 do not inline __ioapic_read_entry() whereas
> gcc 4.4 inlines __ioapic_read_entry().
> 
> --- gcc (Debian 4.3.2-1.1) 4.3.2 on Debian Lenny ---

Lets compare:

> 
> 00000040 <__ioapic_read_entry>:
>       40:       56                      push   %esi
>       41:       53                      push   %ebx
>       42:       8d 58 05                lea    0x5(%eax),%ebx
>       45:       8d 04 80                lea    (%eax,%eax,4),%eax
>       48:       8b 0c c5 ac 08 00 00    mov    0x8ac(,%eax,8),%ecx
>       4f:       c1 e3 0c                shl    $0xc,%ebx
>       52:       8d 74 12 10             lea    0x10(%edx,%edx,1),%esi
>       56:       81 e1 ff 0f 00 00       and    $0xfff,%ecx
>       5c:       03 0d 00 00 00 00       add    0x0,%ecx
>       62:       29 d9                   sub    %ebx,%ecx
>       64:       89 31                   mov    %esi,(%ecx)
>       66:       83 c1 10                add    $0x10,%ecx
>       69:       8b 09                   mov    (%ecx),%ecx
>       6b:       8b 04 c5 ac 08 00 00    mov    0x8ac(,%eax,8),%eax
>       72:       8d 54 12 11             lea    0x11(%edx,%edx,1),%edx
>       76:       25 ff 0f 00 00          and    $0xfff,%eax
>       7b:       03 05 00 00 00 00       add    0x0,%eax
>       81:       29 d8                   sub    %ebx,%eax
>       83:       89 10                   mov    %edx,(%eax)
>       85:       83 c0 10                add    $0x10,%eax
>       88:       8b 10                   mov    (%eax),%edx
>       8a:       89 c8                   mov    %ecx,%eax
>       8c:       5b                      pop    %ebx
>       8d:       5e                      pop    %esi
>       8e:       c3                      ret
>       8f:       90                      nop
> 

[ snip ]

> 
> --- gcc (Ubuntu 4.4.3-4ubuntu5) 4.4.3 on Ubuntu 10.04 ---
> 
> 00001d60 <ioapic_read_entry>:
>     1d60:       83 ec 0c                sub    $0xc,%esp
>     1d63:       89 1c 24                mov    %ebx,(%esp)
>     1d66:       89 c3                   mov    %eax,%ebx
>     1d68:       b8 4e 08 00 00          mov    $0x84e,%eax
>     1d6d:       89 74 24 04             mov    %esi,0x4(%esp)
>     1d71:       89 7c 24 08             mov    %edi,0x8(%esp)
>     1d75:       89 d7                   mov    %edx,%edi
>     1d77:       e8 fc ff ff ff          call   1d78 <ioapic_read_entry+0x18>

to this:

>     1d7c:       8d 53 05                lea    0x5(%ebx),%edx
>     1d7f:       8d 1c 9b                lea    (%ebx,%ebx,4),%ebx
>     1d82:       8b 0c dd ac 08 00 00    mov    0x8ac(,%ebx,8),%ecx
>     1d89:       c1 e2 0c                shl    $0xc,%edx
>     1d8c:       8d 74 3f 10             lea    0x10(%edi,%edi,1),%esi
>     1d90:       81 e1 ff 0f 00 00       and    $0xfff,%ecx
>     1d96:       03 0d 00 00 00 00       add    0x0,%ecx
>     1d9c:       29 d1                   sub    %edx,%ecx
>     1d9e:       89 31                   mov    %esi,(%ecx)
>     1da0:       8b 71 10                mov    0x10(%ecx),%esi

almost identical, where the former does:

add $0x10,%eax
mov (%eax), %edx

the latter does:

mov 0x10(%ecx), %ebx

which is basically the same.


>     1da3:       8b 0c dd ac 08 00 00    mov    0x8ac(,%ebx,8),%ecx
>     1daa:       8d 7c 3f 11             lea    0x11(%edi,%edi,1),%edi
>     1dae:       81 e1 ff 0f 00 00       and    $0xfff,%ecx
>     1db4:       03 0d 00 00 00 00       add    0x0,%ecx
>     1dba:       29 d1                   sub    %edx,%ecx
>     1dbc:       89 39                   mov    %edi,(%ecx)
>     1dbe:       8b 59 10                mov    0x10(%ecx),%ebx

Again the shortcut is done.

>     1dc1:       89 c2                   mov    %eax,%edx
>     1dc3:       b8 4e 08 00 00          mov    $0x84e,%eax
>     1dc8:       e8 fc ff ff ff          call   1dc9 <ioapic_read_entry+0x69>
>     1dcd:       89 f0                   mov    %esi,%eax
>     1dcf:       89 da                   mov    %ebx,%edx
>     1dd1:       8b 1c 24                mov    (%esp),%ebx
>     1dd4:       8b 74 24 04             mov    0x4(%esp),%esi
>     1dd8:       8b 7c 24 08             mov    0x8(%esp),%edi
>     1ddc:       83 c4 0c                add    $0xc,%esp
>     1ddf:       c3                      ret
> 
> --- gcc (GCC) 4.5.1 20100924 (Red Hat 4.5.1-4) on Fedora 14 ---
> 
> 00000020 <__ioapic_read_entry>:
>       20:       56                      push   %esi
>       21:       8d 48 05                lea    0x5(%eax),%ecx
>       24:       8d 04 80                lea    (%eax,%eax,4),%eax
>       27:       53                      push   %ebx
>       28:       8d 1c c5 60 08 00 00    lea    0x860(,%eax,8),%ebx
>       2f:       8b 43 0c                mov    0xc(%ebx),%eax

I'm not sure why gcc did this differently.

The previous ones did:

mov    0x8ac(,%ebx,8),%ecx

Which is basically to load the contents at %ebx*8 + 0x8ac into %ecx

but the above does it in two steps:

%ebx = 0x860 + %eax * 8
load %eax with contest at %ebx + 0xc

Which is not the same address. Did you compile with the same options?

Maybe I just did my math wrong (I just woke up ;)


>       32:       c1 e1 0c                shl    $0xc,%ecx
>       35:       8d 74 12 10             lea    0x10(%edx,%edx,1),%esi
>       39:       25 ff 0f 00 00          and    $0xfff,%eax
>       3e:       03 05 00 00 00 00       add    0x0,%eax
>       44:       29 c8                   sub    %ecx,%eax
>       46:       89 30                   mov    %esi,(%eax)
>       48:       8b 40 10                mov    0x10(%eax),%eax
>       4b:       8d 74 12 11             lea    0x11(%edx,%edx,1),%esi
>       4f:       8b 53 0c                mov    0xc(%ebx),%edx
>       52:       81 e2 ff 0f 00 00       and    $0xfff,%edx
>       58:       03 15 00 00 00 00       add    0x0,%edx
>       5e:       29 ca                   sub    %ecx,%edx
>       60:       89 32                   mov    %esi,(%edx)
>       62:       8b 52 10                mov    0x10(%edx),%edx

Here it does the shortcut version too.


>       65:       5b                      pop    %ebx
>       66:       5e                      pop    %esi
>       67:       c3                      ret
>       68:       90                      nop
>       69:       8d b4 26 00 00 00 00    lea    0x0(%esi,%eiz,1),%esi
> 
> 00000200 <ioapic_read_entry>:
>      200:       83 ec 0c                sub    $0xc,%esp
>      203:       89 1c 24                mov    %ebx,(%esp)
>      206:       89 c3                   mov    %eax,%ebx
>      208:       b8 62 12 00 00          mov    $0x1262,%eax
>      20d:       89 74 24 04             mov    %esi,0x4(%esp)
>      211:       89 d6                   mov    %edx,%esi
>      213:       89 7c 24 08             mov    %edi,0x8(%esp)
>      217:       e8 fc ff ff ff          call   218 <ioapic_read_entry+0x18>
>      21c:       89 f2                   mov    %esi,%edx
>      21e:       89 c7                   mov    %eax,%edi
>      220:       89 d8                   mov    %ebx,%eax
>      222:       e8 f9 fd ff ff          call   20 <__ioapic_read_entry>
>      227:       89 c3                   mov    %eax,%ebx
>      229:       89 d6                   mov    %edx,%esi
>      22b:       b8 62 12 00 00          mov    $0x1262,%eax
>      230:       89 fa                   mov    %edi,%edx
>      232:       e8 fc ff ff ff          call   233 <ioapic_read_entry+0x33>
>      237:       89 d8                   mov    %ebx,%eax
>      239:       89 f2                   mov    %esi,%edx
>      23b:       8b 1c 24                mov    (%esp),%ebx
>      23e:       8b 74 24 04             mov    0x4(%esp),%esi
>      242:       8b 7c 24 08             mov    0x8(%esp),%edi
>      246:       83 c4 0c                add    $0xc,%esp
>      249:       c3                      ret
>      24a:       8d b6 00 00 00 00       lea    0x0(%esi),%esi
> 
> Also, it turned out that this warning does not apprar when compiled with
> CONFIG_M586MMX and earlier. This warning appears when compiled with CONFIG_M686
> and later.
> 
> I don't know whether this warning is a false positive or not.
> Can somebody who understand assembly code check this?

Don's sweat it. It looks like a false positive. Gcc just got a little confused by
the union there.

-- Steve

> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2011-12-07 14:29 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2011-12-07 13:20 [3.2-rc4 x86] (Compiler bug?) Uninitialized variable in ioapic_read_entry() Tetsuo Handa
2011-12-07 14:29 ` Steven Rostedt

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®