Re: [patch] threading fix, tid-2.5.47-A3

Luca Barbieri (ldb@ldb.ods.org)
17 Nov 2002 20:54:35 +0100


--=-Sv1cP3XnblYwEofXh0Xq
Content-Type: text/plain
Content-Transfer-Encoding: quoted-printable

The new definition of the clone flags is binary incompatible with older
2.5 kernels.
How about this instead:
#define CLONE_PARENT_SETTID 0x00100000
#define CLONE_CHILD_CLEARTID 0x00200000
#define CLONE_DETACHED 0x00400000
#define CLONE_UNTRACED 0x00800000
#define CLONE_CHILD_SETTID 0x01000000

> -#if CONFIG_SMP || CONFIG_PREEMPT
> +asmlinkage void FASTCALL(schedule_tail(task_t *prev));
> asmlinkage void schedule_tail(task_t *prev)
> {
> finish_arch_switch(this_rq(), prev);
Maybe finish_arch_switch should only be called if CONFIG_SMP ||
CONFIG_PREEMPT, like what happened without this patch?

> + if (clone_flags & CLONE_PARENT_SETTID)
> + put_user(p->pid, parent_tidptr);
How about failing if put_user fails?

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

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.1 (GNU/Linux)

iD8DBQA91/P7djkty3ft5+cRAvWUAJ9+807ZXlPswxPRwAacme15zzX4dgCdFjcP
yCck+bmT8VcTTN9BP0abkek=
=AV9T
-----END PGP SIGNATURE-----

--=-Sv1cP3XnblYwEofXh0Xq--
-
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/