On Wed, 30 Oct 2002, Jos� Fonseca wrote:
> 
> But it doesn't seem I can get away of assembly due to the exception
> table. So the only way is to do it portably is to call __copy_user
> inside my routine for every read, or do you have any other suggestion
> you can give me?

If you want to do this a word at a time, you can always use

        u32 *user_ptr = xxx;
        u32 *dst = yyy;

        err = __get_user(word, user_ptr++);
        .. check the word ..
        *dst++ = word;

which should generate reasonably efficient code (do a "access_ok()" for
the whole area first, don't do it for each word).

Later on, you may want to re-code it in assembly if you feel it matters 
(the networking layer does that for the copy-and-checksum routines). 

                Linus



-------------------------------------------------------
This sf.net email is sponsored by: Influence the future
of Java(TM) technology. Join the Java Community
Process(SM) (JCP(SM)) program now.
http://ads.sourceforge.net/cgi-bin/redirect.pl?sunm0004en
_______________________________________________
Dri-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/dri-devel

Reply via email to