10-16-2009
function trace back and address to line number conversion
Hi,
I am new to AIX and I am developing a small tool for our product which helps debug memory leaks etc.
Q1)Is there a way in which i can get a function trace back as to the call (lets say malloc() )has been made in which file--> in which function.
I tried using the
#pragma options ( i might be making a mistake in the sub options for tbtable would need guidance here too)
and
-qtbtable=full
which says that a full stack trace would be appended as a text file at the end of the object file that we create if we create the obj file using the -g option.
But I dont seem to see any stack trace at the end of the obj file.
Can someone tell me what possibly could be my mistake? or suggest a better way of getting a stack trace
now using __builtin_return_address() i can get the code address from where the fucntion call ( malloc() ) has been made.
Q2)Is there any function which will help me find the line number of the function call ( malloc() ).
On HP UX we have addr2line() function which does this thing... on AIX i dont have an idea which function does it.
Thank you very much in advance.
Regards
10 More Discussions You Might Find Interesting
1. UNIX for Advanced & Expert Users
m using unix c with curses
im trying out the conversion of an existing code in c to i18n for the japanese language.
the problem is that, the input which is given as the japanese characters is not taken correctly.
and what it outputs is question marks(i.e. ???), equivalent to the number o f... (4 Replies)
Discussion started by: nirnay_s
4 Replies
2. UNIX for Dummies Questions & Answers
Hello,
does somebody knows about a function that would convert a date like:
YYMMDD into a date like YYYY-MM-DD ?
Thank you for your ideas
:) (9 Replies)
Discussion started by: Cecile
9 Replies
3. Shell Programming and Scripting
Does anyone know if there is a util out there to run through a shell script and be able to trace the function call tree. I have inherited some code and the original author was ****mad**** keen on functions - even ones called only once!
If anyone knows of anything I would appreciate it - web... (3 Replies)
Discussion started by: ajcannon
3 Replies
4. Shell Programming and Scripting
Hi,
I have a huge file & I want to add a specific text in column. But I want to add this text from a specific line number to a specific line number & another text in to another range of line numbers.
To be more specific: lets say my file has 1000 lines & 4 Columns. I want to add text "Hello"... (2 Replies)
Discussion started by: Ezy
2 Replies
5. Programming
Is/are there any function(s) in C that convert(s) character/ASCII/Decimal to binary and vice versa?
what about bcopy and strcpy? (1 Reply)
Discussion started by: Peevish
1 Replies
6. UNIX for Dummies Questions & Answers
Hello Everyone.
I am trying to display contains of a file from a specific line to a specific line(let say, from line number 3 to line number 5). For this I got the shell script as shown below:
if ; then
if ; then
tail +$1 $3 | head -n $2
else
... (5 Replies)
Discussion started by: grc
5 Replies
7. Shell Programming and Scripting
I have a file which consist of some class 4 IP address as
172.16.112.50
172.16.112.50
172.16.112.50
172.16.112.100
192.168.1.30
172.16.112.100
172.16.112.50
172.16.112.50
172.16.112.50
i want to store them in pure decimal notations instead of the given dotted decimal formats
e.g.... (2 Replies)
Discussion started by: vaibhavkorde
2 Replies
8. IP Networking
hi,
i want to get the hostname for the specified IP address.
# host www.google.com
www.google.com has address 173.194.69.104
www.google.com has address 173.194.69.105
www.google.com has address 173.194.69.106
www.google.com has address 173.194.69.147
www.google.com has address... (3 Replies)
Discussion started by: kavitha rao
3 Replies
9. Shell Programming and Scripting
Hi,
Using solaris 10 5.10 o/s
I am learning awk as I work here on the job.
What I need to do is isolate the trace file for the last 24 hours. After that I need to open those trace files and search for 'TNS-|ORA-' message from each one. These trace files MAY HAVE an occurance of them. I... (5 Replies)
Discussion started by: bdby
5 Replies
10. UNIX for Beginners Questions & Answers
I am looking at a log file which just tells me the filename and the line number inside that file that has the Error. What I am interested is knowing the encapsulating function. For example, here are the contents of the log file
Error: foo.file on line wxy
Error: foo.file... (3 Replies)
Discussion started by: kaaliakahn
3 Replies
LEARN ABOUT DEBIAN
stack_create
STACK(9) BSD Kernel Developer's Manual STACK(9)
NAME
stack -- kernel thread stack tracing routines
SYNOPSIS
#include <sys/param.h>
#include <sys/stack.h>
In the kernel configuration file:
options DDB
options STACK
struct stack *
stack_create(void);
void
stack_destroy(struct stack *st);
int
stack_put(struct stack *st, vm_offset_t pc);
void
stack_copy(struct stack *src, struct stack dst);
void
stack_zero(struct stack *st);
void
stack_print(struct stack *st);
void
stack_print_ddb(struct stack *st);
void
stack_print_short(struct stack *st);
void
stack_print_short_ddb(struct stack *st);
void
stack_sbuf_print(struct sbuf sb*, struct stack *st);
void
stack_sbuf_print_ddb(struct sbuf sb*, struct stack *st);
void
stack_save(struct stack *st);
DESCRIPTION
The stack KPI allows querying of kernel stack trace information and the automated generation of kernel stack trace strings for the purposes
of debugging and tracing. To use the KPI, at least one of options DDB and options STACK must be compiled into the kernel.
Each stack trace is described by a struct stack. Before a trace may be created or otherwise manipulated, storage for the trace must be allo-
cated with stack_create(), which may sleep. Memory associated with a trace is freed by calling stack_destroy().
A trace of the current kernel thread's call stack may be captured using stack_save().
stack_print() and stack_print_short() may be used to print a stack trace using the kernel printf(9), and may sleep as a result of acquiring
sx(9) locks in the kernel linker while looking up symbol names. In locking-sensitive environments, the unsynchronized stack_print_ddb() and
stack_print_short_ddb() variants may be invoked. This function bypasses kernel linker locking, making it usable in ddb(4), but not in a live
system where linker data structures may change.
stack_sbuf_print() may be used to construct a human-readable string, including conversion (where possible) from a simple kernel instruction
pointer to a named symbol and offset. The argument sb must be an initialized struct sbuf as described in sbuf(9). This function may sleep
if an auto-extending struct sbuf is used, or due to kernel linker locking. In locking-sensitive environments, such as ddb(4), the unsynchro-
nized stack_sbuf_print_ddb() variant may be invoked to avoid kernel linker locking; it should be used with a fixed-length sbuf.
The utility functions stack_zero, stack_copy, and stack_put may be used to manipulate stack data structures directly.
SEE ALSO
ddb(4), printf(9), sbuf(9), sx(9)
AUTHORS
The stack(9) function suite was created by Antoine Brodin. stack(9) was extended by Robert Watson for general-purpose use outside of ddb(4).
BSD
June 24, 2009 BSD