M port/alloc.c => port/alloc.c +1 -1
@@ 360,7 360,7 @@ poolread(char *va, int count, ulong offset)
return n;
}
-static void
+void
tagwithpc(void *v, ulong pc)
{
Bhdr *h;
M port/portfns.h => port/portfns.h +1 -0
@@ 304,6 304,7 @@ void srvrecover(Chan*, Chan*);
int swapcount(ulong);
int swapfull(void);
void swapinit(void);
+void tagwithpc(void*, ulong);
vlong todget(vlong*);
void todfix(void);
void todsetfreq(vlong);
M port/qio.c => port/qio.c +1 -0
@@ 974,6 974,7 @@ qwrite(Queue *q, void *vp, int len)
n = Maxatomic;
b = allocb(n);
+ tagwithpc(b, (up->text[0]<<24)|(up->text[1]<<16)|(up->text[2]<<8)|up->text[3]);
if(waserror()){
freeb(b);
nexterror();