08-14-2013
There is nothing magical about a bad pointer problem going undetected for years. Depending on what the problem is, the same source code built using a different compiler, running on different hardware, or even running it at a different time of day may mask a problem until the right sequence of events happens in your program to expose the problem. 99.44% of the time (at least in my experience looking at bug reports against Solaris systems), the bug is in your code. The rest of the time, it may be a bug in the kernel, in a system library, or a hardware problem.
Without carefully analyzing your code, there is no way to guess at what the problem might be. You basically need to look at every line of code that allocates space, every line of code that uses a pointer (or an array subscript), and every line of code that frees space to verify that the pointer/array subscript is in bounds for the space allocated to that space/array) and that allocated space is not referenced after it is freed.
If you show us your code, we might spot the problem in seconds, or we might never figure it out. If you don't show us your code, there isn't anything we can do to help you other than suggest that you set breakpoints in your code, dump variables that seem to be corrupted, and add debugging statements until you identify the problem and fix it. But, be aware that adding a line of debugging code can easily change the way your program runs just enough to hide a problem. I.e., debugging bad pointers can be really hard.
You have not said anything yet that sounds like there was a bug on your old Solaris system nor that there is a bug on your new Linux system (although subtle differences in the ways functions are defined to behave on the two systems may well be your problem).
10 More Discussions You Might Find Interesting
1. Shell Programming and Scripting
All,
So, I have an ldif file that contains about 6500 users worth of data. Some users have a block of text I'd like to remove, while some don't.
Example (block of text in question is the block starting with "authAuthority: ;Kerberosv5"):
User with text block:
# username, users,... (7 Replies)
Discussion started by: staze
7 Replies
2. Shell Programming and Scripting
Hi Guys,
I'm a complete shell scripting newbie and need some help with comparing a file against a master file and outputting the results.
master.txt would look something like this:
000123
000345
000341
000927
000762
000235
000155
000452
000846
000623
file.txt would look like... (1 Reply)
Discussion started by: ven
1 Replies
3. Shell Programming and Scripting
I have a file I need to monitor with a perl script with the following format. I need to send off a 0 if it is above 95 in the 5th colum and a 1 if it is below. Any help on a simple perl script would be great.
75424958 999975 983170 /dev/rmetrochunk00 98.32
760c2dd8 ... (3 Replies)
Discussion started by: jlaigo2
3 Replies
4. Shell Programming and Scripting
Hi there! Need help on some issue, I have data like this:
123
456
789
012
i need it to be like this:
123789
456012
Anyone has any idea how to do this? Thanks!
Regards,
Ken
How to use code tags (8 Replies)
Discussion started by: kennethtls
8 Replies
5. Shell Programming and Scripting
Hi All,
My requirement is to write a shell script to compare two large csv files.
I've created sample files for explaining my problem
i.e., a.csv and b.csv
contents of files:
-----------------
a.csv
------
Type,Memory (Kb),Location HD,Size (Mb),Serial #
XT,640,D402,0,MG0010... (2 Replies)
Discussion started by: vasavi
2 Replies
6. Shell Programming and Scripting
Hi
I have a file with different filesystems with there sizes. I need to split them in chucks of 1TB.
The file looks like
vf_MTLHQNASF07_Wkgp2 187428400 10601AW1
vf_MTLHQNASF07_Wkgp2 479504596 10604AW1
vf_MTLHQNASF07_Wkgp2 19940 10605AID
vf_MTLHQNASF07_Wkgp2 1242622044... (4 Replies)
Discussion started by: bombcan
4 Replies
7. Shell Programming and Scripting
I am going to provide a chunks of codes that I do not understand. Please help with them in a layman's terms.
1) ${DEBUG:-0}
--------------------------------------------------------------------------
2) print "${1}"
... (7 Replies)
Discussion started by: lg123
7 Replies
8. Shell Programming and Scripting
I have two files for comparison which are extracts from set of xml files.
file1 has:
Comparing File: BRCSH1to320140224CC3.xml
:: TZZZ:BR
:: TAZZ:OUT
UIZZ:0 :: ERAZ:1.000000
UIZZ:0 :: CTZZ:B
UIZZ:0 :: CCAZ:MYR
Comparing File: BRMY20140224CC18REG013SPFNSY13.xml
:: TZZZ:BR
:: TAZZ:INB... (1 Reply)
Discussion started by: vamsi gunda
1 Replies
9. Shell Programming and Scripting
All,
I have an application that is not working properly and the company is 'in the process' of fixing it. In the meantime, I want to write a bash script work-around. However, what I thought was going to be simple is seemingly not.
Need:
- Move files from one directory to another in... (3 Replies)
Discussion started by: hburnswell
3 Replies
10. UNIX for Beginners Questions & Answers
@sorted = sort { $a <=> $b } @unsorted;
I am having hard time understanding how this works? I know the output but interested to know the working.
Thanks in advance. (2 Replies)
Discussion started by: Tanu
2 Replies
INTRO(9) BSD Kernel Developer's Manual INTRO(9)
NAME
intro -- introduction to system kernel interfaces
DESCRIPTION
This section contains information about the interfaces and subroutines in the kernel.
PROTOTYPES ANSI-C AND ALL THAT
Yes please.
We would like all code to be fully prototyped.
If your code compiles cleanly with cc -Wall we would feel happy about it. It is important to understand that this is not a question of just
shutting up cc, it is a question about avoiding the things it complains about. To put it bluntly, do not hide the problem by casting and
other obfuscating practices, solve the problem.
INDENTATION AND STYLE
Believe it or not, there actually exists a guide for indentation and style. It is not generally applied though.
We would appreciate if people would pay attention to it, and at least not violate it blatantly.
We do not mind it too badly if you have your own style, but please make sure we can read it too.
Please take time to read style(9) for more information.
NAMING THINGS
Some general rules exist:
1. If a function is meant as a debugging aid in DDB, it should be enclosed in
#ifdef DDB
#endif /* DDB */
And the name of the procedure should start with the prefix DDB_ to clearly identify the procedure as a debugger routine.
SCOPE OF SYMBOLS
It is important to carefully consider the scope of symbols in the kernel. The default is to make everything static, unless some reason
requires the opposite.
There are several reasons for this policy, the main one is that the kernel is one monolithic name-space, and pollution is not a good idea
here either.
For device drivers and other modules that do not add new internal interfaces to the kernel, the entire source should be in one file if possi-
ble. That way all symbols can be made static.
If for some reason a module is split over multiple source files, then try to split the module along some major fault-line and consider using
the number of global symbols as your guide. The fewer the better.
SEE ALSO
style(9)
HISTORY
The intro section manual page appeared in FreeBSD 2.2.
BSD
December 13, 1995 BSD