diff options
author | deischen <deischen@FreeBSD.org> | 2003-10-12 16:50:45 +0000 |
---|---|---|
committer | deischen <deischen@FreeBSD.org> | 2003-10-12 16:50:45 +0000 |
commit | b5f43f9f8851cec6326b74bc40bfb9643eb70000 (patch) | |
tree | 42ff2456cfdf3ff31e176d94b7663b9a591b6a8b | |
parent | 25f9f8ac4954ebaf912d6dd73a472efdf29eb704 (diff) | |
download | FreeBSD-src-b5f43f9f8851cec6326b74bc40bfb9643eb70000.zip FreeBSD-src-b5f43f9f8851cec6326b74bc40bfb9643eb70000.tar.gz |
Don't forget to initialize the fake tcb when the kcb is allocated.
-rw-r--r-- | lib/libkse/arch/sparc64/sparc64/pthread_md.c | 3 | ||||
-rw-r--r-- | lib/libpthread/arch/sparc64/sparc64/pthread_md.c | 3 |
2 files changed, 6 insertions, 0 deletions
diff --git a/lib/libkse/arch/sparc64/sparc64/pthread_md.c b/lib/libkse/arch/sparc64/sparc64/pthread_md.c index 2006069..b012651 100644 --- a/lib/libkse/arch/sparc64/sparc64/pthread_md.c +++ b/lib/libkse/arch/sparc64/sparc64/pthread_md.c @@ -76,6 +76,9 @@ _kcb_ctor(struct kse *kse) kcb = malloc(sizeof(struct kcb)); if (kcb != NULL) { bzero(kcb, sizeof(struct kcb)); + kcb->kcb_faketcb.tcb_isfake = 1; + kcb->kcb_faketcb.tcb_tmbx.tm_flags = TMF_NOUPCALL; + kcb->kcb_curtcb = &kcb->kcb_faketcb; kcb->kcb_kse = kse; } return (kcb); diff --git a/lib/libpthread/arch/sparc64/sparc64/pthread_md.c b/lib/libpthread/arch/sparc64/sparc64/pthread_md.c index 2006069..b012651 100644 --- a/lib/libpthread/arch/sparc64/sparc64/pthread_md.c +++ b/lib/libpthread/arch/sparc64/sparc64/pthread_md.c @@ -76,6 +76,9 @@ _kcb_ctor(struct kse *kse) kcb = malloc(sizeof(struct kcb)); if (kcb != NULL) { bzero(kcb, sizeof(struct kcb)); + kcb->kcb_faketcb.tcb_isfake = 1; + kcb->kcb_faketcb.tcb_tmbx.tm_flags = TMF_NOUPCALL; + kcb->kcb_curtcb = &kcb->kcb_faketcb; kcb->kcb_kse = kse; } return (kcb); |