On Mon, 21 Feb 2000, Ralf Baechle wrote:
> On Mon, Feb 21, 2000 at 10:54:45AM +0100, Geert Uytterhoeven wrote:
> > > Modified files:
> > > include/asm-mips: uaccess.h
> > > include/asm-mips64: uaccess.h
> > >
> > > Log message:
> > > Fix copy_from_user() in modules and 64-bit kernel.
> > Now the assembler complains with
> > Warning: Used $at without ".set noat"
> I just tried to build an Indy kernel and did not get this warning.
I guess it depends on the configuration. From looking at the list of files I
got complaints for, I do believe you didn't get them when building for an Indy.
Can you try to compile the module for the loop block device? The problem
happens near the call to copy_from_user() in loop_set_status(). The generated
code is (warning position indicated with `>>>'):
la $1, __copy_user
>>> addu $1, $13, $7
move $7, $6
li $2,-14 # 0xfffffff2
I guess the problem is the nested .set noat/at construct, where __MODULE_JAL
does .set at while copy_from_user() assumes we're still in noat mode?
Geert Uytterhoeven ------------- Sony Software Development Center Europe (SDCE)
Geert.Uytterhoeven@sonycom.com ------------------- Sint-Stevens-Woluwestraat 55
Voice +32-2-7248638 Fax +32-2-7262686 ---------------- B-1130 Brussels, Belgium