Re: 2.4.20 copy_from/to_user

Gianni Tedesco (gianni@ecsc.co.uk)
17 Dec 2002 12:52:57 +0000


--=-sjR02yAnPyL18LZRpY+g
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

On Tue, 2002-12-17 at 10:42, Margit Schubert-While wrote:
> Maybe talking through the top of my hat , however -
> copy_from_user and copy_to_user are used all over the place and the
> return tested to see if an EFAULT should be generated.
> Looking at include/asm-i386/uaccess.h and arch/i386/lib/usercopy.c
> I don't see how these return anything but the 3rd (length) param.

Kernel glibly copies data until a exception occurs, when that happens it
looks at the address of the faulting instruction and jumps to some fixup
code, which somehow makes the function returns the truncated value.

grep for ".section .fixup" and ".section .__ex_table." in those files.

--=20
// Gianni Tedesco (gianni at ecsc dot co dot uk)
lynx --source www.scaramanga.co.uk/gianni-at-ecsc.asc | gpg --import
8646BE7D: 6D9F 2287 870E A2C9 8F60 3A3C 91B5 7669 8646 BE7D

--=-sjR02yAnPyL18LZRpY+g
Content-Type: application/pgp-signature; name=signature.asc
Content-Description: This is a digitally signed message part

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.6 (GNU/Linux)
Comment: For info see http://www.gnupg.org

iD8DBQA9/x4okbV2aYZGvn0RAoQWAJsHMAfntBtpPRzlhQAgRIWpRyMoRQCbBl39
FzuW35irxezjkywnMN5nwKs=
=fYa3
-----END PGP SIGNATURE-----

--=-sjR02yAnPyL18LZRpY+g--

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