Red Hat Bugzilla – Bug 141451
glibc errors after upgrade to kernel-2.6.9-1.681_FC3.i686.rpm
Last modified: 2007-11-30 17:10:56 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.5)
Description of problem:
After upgrading the kernel from the kernel-2.6.9-1.667 that FC3
installed with to kernel-2.6.9-1.681_FC3, the monitor program for my
UPS started to not function. The following are the messages that are
Note: The below was edited only to delete logon/system name information.
*** glibc detected *** double free or corruption: 0x08215c40 ***
[bulldog]$ MALLOC_CHECK=1 ./monitor
*** glibc detected *** double free or corruption: 0x08215b60 ***
[bulldog]$ MALLOC_CHECK_=1 ./monitor
malloc: using debugging hooks
*** glibc detected *** free(): invalid pointer: 0x08224c08 ***
When I use the MALLOC_CHECK_=1 command, the program will run. Since
this error did not exist with the .667 kernel, I suspect something
changed with the .681 kernel that broke the way the program executes.
The program is Bulldog Sentry for the Belkin line of UPS devices.
This problem only affects the monitor program, not the UPSD service.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
1. Attempt to launch the monitor program
Actual Results: Program ends abruptly.
Expected Results: program should have launched normally
The program will launch and run when the MALLOC_CHECK_=1 ./monitor
command is used in a terminal window, although it will still show the
error when I exit from the program. I wrote tech support at Belkin,
and received a reply back that they have no history of this type of
problem with the program.
I am running on an Elitegroup KT600-A motherboard with an AMD Athlon
XP 2600+ processor, 512Mb RAM
That is most likely a bug in the monitor program.
Try running valgrind --tool=memcheck ./monitor
or ef ./monitor
(assuming you have valgrind and ElectricFence packages installed)
to see if there are memory management bugs in the application.
As a workaround, you can try MALLOC_CHECK_=0 ./monitor, but it would be really
better to find out the memory corruption and report it to the vendor.
Created attachment 107718 [details]
Output of Electric Fence
Created attachment 107719 [details]
Ouptut of valgrind --tool=memcheck
With ElectricFence, if you see segfault, you usually want to see in the debugger
where it segfaulted and why (usually that is access to a freed memory, buffer
Anyway, from looking at the valgrind output, you are just very lucky the program
ever worked at least somehow.
Just file a bugreport with the provider of that app and include all the
details you gathered.
What I don't understand is that the program worked fine before I upgraded to
kernel 681. What changed there that now makes this program show this error?
Usually, when everything is working, and one thing changes and things break, the
thing that changed is the cause, unless there was a longstanding bug finally
fixed there that now manifests a bug in the program.
I have submitted the same output to the Belkin technician. With his permission,
I will give you his contact information since I have no idea (not being a
programmer) what the output of the files means.