On Wed, 16 May 2007 18:40:47 +0100
[EMAIL PROTECTED] (Mel Gorman) wrote:

> On (16/05/07 08:16), H. Peter Anvin didst pronounce:
> > Andy Whitcroft wrote:
> > > Getting this on both x86 and x86_64 boxes, they are the older boxen so
> > > likely older compilers:
> > 
> > Please give the gcc version number.
> > 
> > >   CC      arch/x86_64/boot/memory.o
> > > arch/i386/boot/memory.c: In function `detect_memory':
> > > arch/i386/boot/memory.c:32: error: can't find a register in class `DREG'
> > > while reloading `asm'
> > > 
> > > Seems to come from git-netsetup, but that tree isn't pulled into your
> > > git version of -mm so I can't be more specific.
> > 
> > Does the following patch work for you?
> > 
> 
> With the patch, elm3b6 from test.kernel.org builds and boots. It's
> x86_64. elm3b132 which is x86 fails with
> 
>   CC      arch/i386/boot/video-bios.o
>   HOSTCC  arch/i386/boot/tools/build
>   AS      arch/i386/boot/compressed/head.o
>   CC      arch/i386/boot/compressed/misc.o
>   OBJCOPY arch/i386/boot/compressed/vmlinux.bin
>   LD      arch/i386/boot/setup.elf
> ld:arch/i386/boot/setup.ld:47: syntax error

        ASSERT(_end <= 0x8000, "Setup too big!")

Which compiler/binutils are you running over there?

> make[1]: *** [arch/i386/boot/setup.elf] Error 1
> make[1]: *** Waiting for unfinished jobs....
>   GZIP    arch/i386/boot/compressed/vmlinux.bin.gz
> include/asm/processor.h: In function `native_get_debugreg':
> include/asm/processor.h:531: warning: asm operand 0 probably doesn't
> match constraints
> include/asm/processor.h: In function `native_set_debugreg':
> include/asm/processor.h:558: warning: asm operand 0 probably doesn't
> match constraints

        static inline unsigned long native_get_debugreg(int regno)
        {
                unsigned long val = 0;  /* Damn you, gcc! */
        
                switch (regno) {
                case 0:
                        asm("movl %%db0, %0" :"=r" (val)); break;
                case 1:
                        asm("movl %%db1, %0" :"=r" (val)); break;
                case 2:
                        asm("movl %%db2, %0" :"=r" (val)); break;
                case 3:
                        asm("movl %%db3, %0" :"=r" (val)); break;
                case 6:
                        asm("movl %%db6, %0" :"=r" (val)); break;
                case 7:
                        asm("movl %%db7, %0" :"=r" (val)); break;
                default:
-->                     BUG();
                }
                return val;
        }

weird.

There are no significant changes in processor.h relative to 2.6.22-rc1.

If the file-n-line aren't screwed up, it's disliking

#define BUG()                                                           \
        do {                                                            \
                asm volatile("1:\tud2\n"                                \
                             ".pushsection __bug_table,\"a\"\n"         \
                             "2:\t.long 1b, %c0\n"                      \
                             "\t.word %c1, 0\n"                         \
                             "\t.org 2b+%c2\n"                          \
                             ".popsection"                              \
                             : : "i" (__FILE__), "i" (__LINE__),        \
                             "i" (sizeof(struct bug_entry)));           \
                for(;;) ;                                               \
        } while(0)

and we haven't changedanything in there recently either.
        
>   LD      arch/i386/boot/compressed/piggy.o
>   LD      arch/i386/boot/compressed/vmlinux
> make: *** [bzImage] Error 2
> 05/16/07-17:27:44 Build the kernel. Failed rc = 2
> 05/16/07-17:27:44 build: kernel build Failed rc = 1
> Failed and terminated the run
> 
> I haven't checked yet if that has anything to do with git-newsetup or
> not.

It built and ran 2.6.22-rc1-git4 happily.


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to