3

As per the Title I am recieving this error msg, while running my Qt Application.

Actually, I have an application designed under Qt4.7.4. The application crashes randomly while under operation. It happens randomly during different phase of operation. I went through reading "/var/log/syslog ", and found result as below :

Aug 29 16:17:01 localhost CRON[1484]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Aug 29 16:20:18 localhost kernel: [ 1472.204669] IAccessRemoteSc[1420]: segfault at ac4ecc4 ip 00ed71ef sp bfcdde2c error 4 in libc-2.10.1.so[e6c000+13e000]
Aug 29 17:17:01 localhost CRON[8814]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)
Aug 29 17:28:33 localhost kernel: [ 5567.372835] IAccessRemoteSc[1894]: segfault at a55d77c ip 008481ef sp bfa9271c error 4 in libc-2.10.1.so[7dd000+13e000]
Aug 29 17:29:01 localhost kernel: [ 5595.452673] IAccessRemoteSc[10231]: segfault at 11064954 ip 086591ef sp bf8b0dec error 4 in libc-2.10.1.so[85ee000+13e000]
Aug 29 17:31:12 localhost kernel: [ 5726.055671] IAccessRemoteSc[10291]: segfault at a0beb84 ip 00cbf1ef sp bffdfb0c error 4 in libc-2.10.1.so[c54000+13e000]
Aug 29 18:15:44 localhost kernel: [ 8399.369686] IAccessRemoteSc[10602]: segfault at 125 ip 00cd6df4 sp bfeef720 error 6 in libQtCore.so.4.7.4[b51000+2ca000]
Aug 29 18:17:01 localhost CRON[12697]: (root) CMD (   cd / && run-parts --report /etc/cron.hourly)

From the above message, the error is from libc-2.10.1.so and libQtCore.so.4.7.4.

I am using Ubuntu 9.10 version (as per our company standards)

I tried google search, but no clear reason/solutions have been mentioned.

So, Do any one have some idea about this error ??

Any idea/suggestion would be great help for me.

Peter
  • 14,559
  • 35
  • 55
skg
  • 948
  • 2
  • 19
  • 35
  • Try using `valgrind` (to help find memory corruption bugs in your program). Compile your program with `g++ -Wall -g`. Use the `gdb` debugger on it. Perhaps upgrade your C++ compiler (e.g. to GCC 4.8). But the error is most likely in your code, not in `libc` (which just happens to reveal it). – Basile Starynkevitch Sep 03 '13 at 08:24
  • @skg Which Locale you are using ? English ? – Ashif Sep 03 '13 at 08:56
  • Check, given link. What it says, changing Locale to English solve the issue. Please confirm. https://bbs.archlinux.org/viewtopic.php?id=130953 – Ashif Sep 03 '13 at 09:10
  • @BasileStarynkevitch, i tried valgrind. It does'nt give any memory leak error message in my application. Also I am compiling my code using Qt tool. – skg Sep 03 '13 at 10:03
  • @user231502, I am using default (English). – skg Sep 03 '13 at 10:05
  • Get a core dump of your application and then backtrack it in gdb. – RedX Sep 18 '13 at 06:34
  • @RedX, can you please explain it more ? I m sorry i am just started working on Linux few months back. Dont have deep idea about linux. – skg Sep 18 '13 at 06:40
  • See [Core dump file analysis](http://stackoverflow.com/questions/5115613/core-dump-file-analysis) and [Linux software debugging with GDB](http://www.ibm.com/developerworks/library/l-gdb/) – RedX Sep 18 '13 at 07:57

1 Answers1

2

I found good explaination about this error on stackoverflow forum itself. Click Here

I am also pasting the same below (bit modified as per the error i m facing):

Error 6 is ENXIO (No such device or address). It may be that libQtWebKit is habitually mishandling that error, or it may be that there's something else that's going on.

If this were a program, not a shared library

Run

addr2line -e yourSegfaultingProgram 00cd6df4 

(and repeat for the other instruction pointer values given) to see where the error is happening. Better, get a debug-instrumented build, and reproduce the problem under a debugger such as gdb.

Since it's a shared library

You're hosed, unfortunately; it's not possible to know where the libraries were placed in memory by the dynamic linker after-the-fact. Reproduce the problem under gdb.

What the error means

Here's the breakdown of the fields:

address - the location in memory the code is trying to access (it's likely that 10 and 11 are offsets from a pointer we expect to be set to a valid value but which is instead pointing to 0)

ip - instruction pointer, ie. where the code which is trying to do this lives

sp - stack pointer

error - value of errno, ie. last error code which was reported by a syscall

Also When system requests fail, error code are returned. To understand the nature of the error these codes need to be interpreted. They are recorded in:-

  /usr/include/asm/errno.h

Click Here to get the list of Errors and Meaning of each errors

Community
  • 1
  • 1
skg
  • 948
  • 2
  • 19
  • 35