From f0c7a07b857fb8e0abaf66876593306fe62e5544 Mon Sep 17 00:00:00 2001 From: David du Colombier <0intro@gmail.com> Date: Thu, 25 Nov 1993 00:00:00 +0000 Subject: [PATCH] Plan 9 from Bell Labs 1993-11-25 --- pc/fault386.c | 2 -- port/alloc.c | 12 +++++++----- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pc/fault386.c b/pc/fault386.c index c7dd201e5d4d2a3411bdd636d31d98dcfd0bb549..1bb9beb52fcf7e7a242a80daa8f78bf68a82f89b 100644 --- a/pc/fault386.c +++ b/pc/fault386.c @@ -6,8 +6,6 @@ #include "ureg.h" #include "io.h" -int faulting; - static void fault386(Ureg *ur, void *arg) { diff --git a/port/alloc.c b/port/alloc.c index ddcb1c1854e16b3b1cc146b82c11f39945544f7b..60c8987d295d93a364c3354950eb57c029e2157a 100644 --- a/port/alloc.c +++ b/port/alloc.c @@ -261,8 +261,6 @@ malloc(ulong size) ulong next; int pow, n; Bucket *bp, *nbp; -ulong pc; -pc = getcallerpc(0); for(pow = 3; pow <= Maxpow; pow++) if(size <= (1<magic = Magic2n; -bp->pc = pc; + bp->pc = getcallerpc(((uchar*)&size) - sizeof(size)); memset(bp->data, 0, size); return bp->data; } @@ -321,7 +319,7 @@ bp->pc = pc; bp->size = pow; bp->magic = Magic2n; -bp->pc = pc; + bp->pc = getcallerpc(((uchar*)&size) - sizeof(size)); return bp->data; } @@ -331,11 +329,15 @@ smalloc(ulong size) char *s; void *p; int attempt; + Bucket *bp; for(attempt = 0; attempt < 1000; attempt++) { p = malloc(size); - if(p != nil) + if(p != nil) { + bp = (Bucket*)((ulong)p - bdatoff); + bp->pc = getcallerpc(((uchar*)&size) - sizeof(size)); return p; + } s = up->psstate; up->psstate = "Malloc"; qlock(&arena.rq);