diff options
author | hunt <hunt> | 2006-11-15 18:38:20 +0000 |
---|---|---|
committer | hunt <hunt> | 2006-11-15 18:38:20 +0000 |
commit | be44c42327d90bde20c2e44f8405c794a2e3ffa5 (patch) | |
tree | 3c139ce6268dfb84107677a2d1dcce416299302f | |
parent | 42c808f9b3c9f39c213c4d2799714627c57d7b9f (diff) | |
download | systemtap-steved-be44c42327d90bde20c2e44f8405c794a2e3ffa5.tar.gz systemtap-steved-be44c42327d90bde20c2e44f8405c794a2e3ffa5.tar.xz systemtap-steved-be44c42327d90bde20c2e44f8405c794a2e3ffa5.zip |
*** empty log message ***
-rw-r--r-- | runtime/stpd/symbols.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/runtime/stpd/symbols.c b/runtime/stpd/symbols.c index 2f964866..8533f4f8 100644 --- a/runtime/stpd/symbols.c +++ b/runtime/stpd/symbols.c @@ -148,8 +148,8 @@ void do_kernel_symbols(void) cleanup_and_exit(0); } *(int *)data_base = STP_SYMBOLS; - dataptr = data = data_base + sizeof(int); - datamax = dataptr + MAX_SYMBOLS*32 - sizeof(int); + dataptr = data = data_base + sizeof(long); + datamax = dataptr + MAX_SYMBOLS*32 - sizeof(long); *(int *)sym_base = STP_SYMBOLS; syms = (struct _stp_symbol *)(sym_base + sizeof(long)); @@ -195,15 +195,16 @@ void do_kernel_symbols(void) #endif /* send header */ - *(int *)buf = num_syms; - *(int *)(buf+4) = (unsigned)(dataptr - data); - send_request(STP_SYMBOLS, buf, 8); + *(int *)buf = STP_SYMBOLS; + *(int *)(buf+sizeof(long)) = num_syms; + *(int *)(buf+sizeof(long)+sizeof(int)) = (unsigned)(dataptr - data); + send_data(buf, 2*sizeof(int)+sizeof(long)); /* send syms */ send_data(sym_base, num_syms*sizeof(struct _stp_symbol)+sizeof(long)); /* send data */ - send_data(data_base, dataptr-data+sizeof(int)); + send_data(data_base, dataptr-data+sizeof(long)); free(data_base); free(sym_base); |