mirror of
git://gcc.gnu.org/git/gcc.git
synced 2025-04-11 01:30:55 +08:00
Avoid unstructured procfs on Solaris
* os_dep.c [GC_SOLARIS_THREADS] (GC_dirty_init): Use /proc/<pid>/pagedata instead of PIOCOPENPD. From-SVN: r227254
This commit is contained in:
parent
973d2e01cb
commit
58f51f5069
@ -1,3 +1,8 @@
|
||||
2015-08-27 Rainer Orth <ro@CeBiTec.Uni-Bielefeld.DE>
|
||||
|
||||
* os_dep.c [GC_SOLARIS_THREADS] (GC_dirty_init): Use
|
||||
/proc/<pid>/pagedata instead of PIOCOPENPD.
|
||||
|
||||
2015-07-24 Michael Darling <darlingm@gmail.com>
|
||||
|
||||
PR other/66259
|
||||
|
@ -3184,13 +3184,11 @@ void GC_dirty_init()
|
||||
(GC_words_allocd + GC_words_allocd_before_gc));
|
||||
# endif
|
||||
}
|
||||
sprintf(buf, "/proc/%d", getpid());
|
||||
fd = open(buf, O_RDONLY);
|
||||
if (fd < 0) {
|
||||
sprintf(buf, "/proc/%d/pagedata", getpid());
|
||||
GC_proc_fd = open(buf, O_RDONLY);
|
||||
if (GC_proc_fd < 0) {
|
||||
ABORT("/proc open failed");
|
||||
}
|
||||
GC_proc_fd = syscall(SYS_ioctl, fd, PIOCOPENPD, 0);
|
||||
close(fd);
|
||||
syscall(SYS_fcntl, GC_proc_fd, F_SETFD, FD_CLOEXEC);
|
||||
if (GC_proc_fd < 0) {
|
||||
ABORT("/proc ioctl failed");
|
||||
|
Loading…
x
Reference in New Issue
Block a user