[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-bugs-dist
Subject: [valgrind] [Bug 356122] New: Apparent infinite loop calling the GLib g_get_user_special_dir() functi
From: Daniel Trebbien via KDE Bugzilla <bugzilla_noreply () kde ! org>
Date: 2015-11-30 17:44:52
Message-ID: bug-356122-17878 () http ! bugs ! kde ! org/
[Download RAW message or body]
https://bugs.kde.org/show_bug.cgi?id=356122
Bug ID: 356122
Summary: Apparent infinite loop calling the GLib
g_get_user_special_dir() function
Product: valgrind
Version: 3.10.0
Platform: Homebrew (Mac OS X)
OS: OS X
Status: UNCONFIRMED
Severity: major
Priority: NOR
Component: general
Assignee: jseward@acm.org
Reporter: dtrebbien@gmail.com
Simply calling the GLib g_get_user_special_dir() function on a Mac OS 10.11.1
system seemingly causes Valgrind to enter an infinite loop using 100% CPU.
```
#include <glib.h>
#include <stdlib.h>
int main()
{
g_get_user_special_dir(G_USER_DIRECTORY_DOCUMENTS);
return EXIT_SUCCESS;
}
```
Compiled with:
cc -g -o get_user_special_dir.bin `pkg-config --cflags glib-2.0`
get_user_special_dir.c `pkg-config --libs glib-2.0`
Ran with:
valgrind ./get_user_special_dir.bin
Trimmed output:
```
==4088== Memcheck, a memory error detector
==4088== Copyright (C) 2002-2015, and GNU GPL'd, by Julian Seward et al.
==4088== Using Valgrind-3.11.0 and LibVEX; rerun with -h for copyright info
==4088== Command: ./get_user_special_dir.bin
==4088==
==4088== Conditional jump or move depends on uninitialised value(s)
==4088== at 0x7FFF5FC24A27: bcmp (in /usr/lib/dyld)
...
==4088==
==4088== Use of uninitialised value of size 8
==4088== at 0x7FFF5FC24A3F: bcmp (in /usr/lib/dyld)
...
==4088==
==4088== Use of uninitialised value of size 8
==4088== at 0x7FFF5FC24A44: bcmp (in /usr/lib/dyld)
...
==4088==
==4088== Conditional jump or move depends on uninitialised value(s)
==4088== at 0x7FFF5FC11907:
ImageLoaderMachO::validateFirstPages(linkedit_data_command const*, int,
unsigned char const*, unsigned long, long long, ImageLoader::LinkContext
const&) (in /usr/lib/dyld)
...
==4088==
--4088-- UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option
--4088-- UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option (repeated 2 times)
--4088-- UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option (repeated 4 times)
--4088-- UNKNOWN mach_msg unhandled MACH_SEND_TRAILER option (repeated 8 times)
Killed: 9
```
(I had to force-quit valgrind.)
Using:
- GLib 2.46.2 (installed via Homebrew 'el_capitan' bottle)
- Valgrind 3.11.0 (also installed via Homebrew 'el_capitan' bottle)
I tried the above on an Ubuntu 14.04.3 LTS 'Trusty Tahr' system with Valgrind
3.10.0, but did not observe the 100% CPU utilization problem.
Reproducible: Always
Steps to Reproduce:
1. Install the pkg-config, glib, and valgrind Homebrew packages.
2. Save the following as get_user_special_dir.c:
```
#include <glib.h>
#include <stdlib.h>
int main()
{
g_get_user_special_dir(G_USER_DIRECTORY_DOCUMENTS);
return EXIT_SUCCESS;
}
```
3. Compile get_user_special_dir.c via:
cc -g -o get_user_special_dir.bin `pkg-config --cflags glib-2.0`
get_user_special_dir.c `pkg-config --libs glib-2.0`
4. Run via:
valgrind ./get_user_special_dir.bin
5. After a few seconds, open the Activity Monitor app and observe that the
valgrind process is utilizing 100% CPU.
Actual Results:
100% CPU utilization and valgrind seems like it would never finish (I'm not
sure because I kill the process each time after a few minutes).
Expected Results:
valgrind should run and complete.
Using:
- GLib 2.46.2 (installed via Homebrew 'el_capitan' bottle)
- Valgrind 3.11.0 (also installed via Homebrew 'el_capitan' bottle)
I tried the above on an Ubuntu 14.04.3 LTS 'Trusty Tahr' system with Valgrind
3.10.0, but did not observe the 100% CPU utilization problem.
--
You are receiving this mail because:
You are watching all bug changes.
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic