summaryrefslogtreecommitdiffstats
path: root/sys/compat/linux/linux_futex.c
diff options
context:
space:
mode:
authordchagin <dchagin@FreeBSD.org>2015-05-24 15:54:58 +0000
committerdchagin <dchagin@FreeBSD.org>2015-05-24 15:54:58 +0000
commitf18b3d51fa76d8d28f216bd46d2f0a5088cfc570 (patch)
tree35b3b7280c8c40a1e2ee373c55b63a07ecb0a7ea /sys/compat/linux/linux_futex.c
parentb08f3f43f9e901fdb2194f84eb02093e60665bab (diff)
downloadFreeBSD-src-f18b3d51fa76d8d28f216bd46d2f0a5088cfc570.zip
FreeBSD-src-f18b3d51fa76d8d28f216bd46d2f0a5088cfc570.tar.gz
Refund the proc emuldata struct for future use. For now move flags from
thread emuldata to proc emuldata as it was originally intended. As we can have both 64 & 32 bit Linuxulator running any eventhandler can be called twice for us. To prevent this move eventhandlers code from linux_emul.c to the linux_common.ko module. Differential Revision: https://reviews.freebsd.org/D1073
Diffstat (limited to 'sys/compat/linux/linux_futex.c')
-rw-r--r--sys/compat/linux/linux_futex.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/sys/compat/linux/linux_futex.c b/sys/compat/linux/linux_futex.c
index 2c1187e..3338b46 100644
--- a/sys/compat/linux/linux_futex.c
+++ b/sys/compat/linux/linux_futex.c
@@ -653,7 +653,7 @@ int
linux_sys_futex(struct thread *td, struct linux_sys_futex_args *args)
{
int clockrt, nrwake, op_ret, ret;
- struct linux_emuldata *em;
+ struct linux_pemuldata *pem;
struct waiting_proc *wp;
struct futex *f, *f2;
struct l_timespec timeout;
@@ -973,12 +973,12 @@ linux_sys_futex(struct thread *td, struct linux_sys_futex_args *args)
* Glibc versions prior to 2.3.3 fall back to FUTEX_WAKE when
* FUTEX_REQUEUE returned EINVAL.
*/
- em = em_find(td);
- if ((em->flags & LINUX_XDEPR_REQUEUEOP) == 0) {
+ pem = pem_find(td->td_proc);
+ if ((pem->flags & LINUX_XDEPR_REQUEUEOP) == 0) {
linux_msg(td,
"linux_sys_futex: "
"unsupported futex_requeue op\n");
- em->flags |= LINUX_XDEPR_REQUEUEOP;
+ pem->flags |= LINUX_XDEPR_REQUEUEOP;
LIN_SDT_PROBE0(futex, linux_sys_futex,
deprecated_requeue);
}
OpenPOWER on IntegriCloud