--- linux-2.6.15/arch/um/sys-i386/tls.c~ 2006-01-11 20:04:35.528386774 -0500 +++ linux-2.6.15/arch/um/sys-i386/tls.c 2006-01-11 20:05:45.600027039 -0500 @@ -134,7 +134,7 @@ int load_TLS(int flags, struct task_stru if (!(flags & O_FORCE) && curr->flushed) continue; - ret = (flags & O_INDIRECT) ? indirect_set_thread_area(&curr->tls): do_set_thread_area(&curr->tls); + ret = CHOOSE_MODE_PROC( indirect_set_thread_area, do_set_thread_area, &curr->tls ); if (ret) goto out;