On Tue, 8 Apr 2014, Thomas Bogendoerfer wrote: > > That is rather dangerous, if you do not dare debugging this yourself, can > > you build arch/mips/mm/page.c with -DDEBUG somehow so that it dumps the > > I didn't get that to work :-( I'm fairly sure you can pass that down with CPPFLAGS_page.o (or maybe CFLAGS_page.o), e.g.: $ make CPPFLAGS_page.o=-DDEBUG arch/mips/mm/page.o $ make vmlinux but if that fails for some reason you could always just paste: #define DEBUG at the top of page.c, before headers are included. ;) You might have to tweak the default console log level, I reckon there's a config option these days, or otherwise just put "debug" somewhere on the kernel command line. > > machine code generated by these two helpers and we can see what's going on > > here and maybe where the overflow is? > > but adding more info to the debug message showed it's a simm field > overflow. > > It didn't like > > uasm_i_lui(&buf, AT, 0xa000); > > which is only created for R4600 rev 2.0 CPUs. Aha, in GAS LUI accepts an unsigned 16-bit immediate, so I think our kernel should do the same. > Will send a fix for that. Great, thanks! Maciej