aboutsummaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorPaul Eggert2011-02-17 23:41:43 -0800
committerPaul Eggert2011-02-17 23:41:43 -0800
commit7d315eb67800796d7d7f39030eb7682340d985e5 (patch)
tree0204c6ba2532b67b02cbfcede3e09dcae29206fa /lib
parentb803a8094fb59410c5bb2cb421e5905e71a99b8b (diff)
downloademacs-7d315eb67800796d7d7f39030eb7682340d985e5.tar.gz
emacs-7d315eb67800796d7d7f39030eb7682340d985e5.zip
Import IRIX 6.5 getloadavg fixes from gnulib.
* configure, lib/getloadavg.c, m4/getloadavg.m4: Regenerate.
Diffstat (limited to 'lib')
-rw-r--r--lib/getloadavg.c20
1 files changed, 11 insertions, 9 deletions
diff --git a/lib/getloadavg.c b/lib/getloadavg.c
index 28e2ea0164b..d324451ef15 100644
--- a/lib/getloadavg.c
+++ b/lib/getloadavg.c
@@ -508,7 +508,7 @@ getloadavg (double loadavg[], int nelem)
508 elem = -1; 508 elem = -1;
509# endif 509# endif
510 510
511# if !defined (LDAV_DONE) && defined (HAVE_LIBKSTAT) 511# if !defined (LDAV_DONE) && defined (HAVE_LIBKSTAT) /* Solaris <= 2.6 */
512/* Use libkstat because we don't have to be root. */ 512/* Use libkstat because we don't have to be root. */
513# define LDAV_DONE 513# define LDAV_DONE
514 kstat_ctl_t *kc; 514 kstat_ctl_t *kc;
@@ -559,6 +559,7 @@ getloadavg (double loadavg[], int nelem)
559# endif /* HAVE_LIBKSTAT */ 559# endif /* HAVE_LIBKSTAT */
560 560
561# if !defined (LDAV_DONE) && defined (hpux) && defined (HAVE_PSTAT_GETDYNAMIC) 561# if !defined (LDAV_DONE) && defined (hpux) && defined (HAVE_PSTAT_GETDYNAMIC)
562 /* HP-UX */
562/* Use pstat_getdynamic() because we don't have to be root. */ 563/* Use pstat_getdynamic() because we don't have to be root. */
563# define LDAV_DONE 564# define LDAV_DONE
564# undef LOAD_AVE_TYPE 565# undef LOAD_AVE_TYPE
@@ -575,7 +576,7 @@ getloadavg (double loadavg[], int nelem)
575 576
576# endif /* hpux && HAVE_PSTAT_GETDYNAMIC */ 577# endif /* hpux && HAVE_PSTAT_GETDYNAMIC */
577 578
578# if ! defined LDAV_DONE && defined HAVE_LIBPERFSTAT 579# if ! defined LDAV_DONE && defined HAVE_LIBPERFSTAT /* AIX */
579# define LDAV_DONE 580# define LDAV_DONE
580# undef LOAD_AVE_TYPE 581# undef LOAD_AVE_TYPE
581/* Use perfstat_cpu_total because we don't have to be root. */ 582/* Use perfstat_cpu_total because we don't have to be root. */
@@ -592,6 +593,7 @@ getloadavg (double loadavg[], int nelem)
592# endif 593# endif
593 594
594# if !defined (LDAV_DONE) && (defined (__linux__) || defined (__CYGWIN__)) 595# if !defined (LDAV_DONE) && (defined (__linux__) || defined (__CYGWIN__))
596 /* Linux without glibc, Cygwin */
595# define LDAV_DONE 597# define LDAV_DONE
596# undef LOAD_AVE_TYPE 598# undef LOAD_AVE_TYPE
597 599
@@ -648,7 +650,7 @@ getloadavg (double loadavg[], int nelem)
648 650
649# endif /* __linux__ || __CYGWIN__ */ 651# endif /* __linux__ || __CYGWIN__ */
650 652
651# if !defined (LDAV_DONE) && defined (__NetBSD__) 653# if !defined (LDAV_DONE) && defined (__NetBSD__) /* NetBSD < 0.9 */
652# define LDAV_DONE 654# define LDAV_DONE
653# undef LOAD_AVE_TYPE 655# undef LOAD_AVE_TYPE
654 656
@@ -680,7 +682,7 @@ getloadavg (double loadavg[], int nelem)
680 682
681# endif /* __NetBSD__ */ 683# endif /* __NetBSD__ */
682 684
683# if !defined (LDAV_DONE) && defined (NeXT) 685# if !defined (LDAV_DONE) && defined (NeXT) /* NeXTStep */
684# define LDAV_DONE 686# define LDAV_DONE
685 /* The NeXT code was adapted from iscreen 3.2. */ 687 /* The NeXT code was adapted from iscreen 3.2. */
686 688
@@ -842,6 +844,7 @@ getloadavg (double loadavg[], int nelem)
842# endif /* OSF_MIPS */ 844# endif /* OSF_MIPS */
843 845
844# if !defined (LDAV_DONE) && (defined (__MSDOS__) || defined (WINDOWS32)) 846# if !defined (LDAV_DONE) && (defined (__MSDOS__) || defined (WINDOWS32))
847 /* DJGPP */
845# define LDAV_DONE 848# define LDAV_DONE
846 849
847 /* A faithful emulation is going to have to be saved for a rainy day. */ 850 /* A faithful emulation is going to have to be saved for a rainy day. */
@@ -851,7 +854,7 @@ getloadavg (double loadavg[], int nelem)
851 } 854 }
852# endif /* __MSDOS__ || WINDOWS32 */ 855# endif /* __MSDOS__ || WINDOWS32 */
853 856
854# if !defined (LDAV_DONE) && defined (OSF_ALPHA) 857# if !defined (LDAV_DONE) && defined (OSF_ALPHA) /* OSF/1 */
855# define LDAV_DONE 858# define LDAV_DONE
856 859
857 struct tbl_loadavg load_ave; 860 struct tbl_loadavg load_ave;
@@ -863,7 +866,7 @@ getloadavg (double loadavg[], int nelem)
863 : (load_ave.tl_avenrun.l[elem] / (double) load_ave.tl_lscale)); 866 : (load_ave.tl_avenrun.l[elem] / (double) load_ave.tl_lscale));
864# endif /* OSF_ALPHA */ 867# endif /* OSF_ALPHA */
865 868
866# if ! defined LDAV_DONE && defined __VMS 869# if ! defined LDAV_DONE && defined __VMS /* VMS */
867 /* VMS specific code -- read from the Load Ave driver. */ 870 /* VMS specific code -- read from the Load Ave driver. */
868 871
869 LOAD_AVE_TYPE load_ave[3]; 872 LOAD_AVE_TYPE load_ave[3];
@@ -907,6 +910,7 @@ getloadavg (double loadavg[], int nelem)
907# endif /* ! defined LDAV_DONE && defined __VMS */ 910# endif /* ! defined LDAV_DONE && defined __VMS */
908 911
909# if ! defined LDAV_DONE && defined LOAD_AVE_TYPE && ! defined __VMS 912# if ! defined LDAV_DONE && defined LOAD_AVE_TYPE && ! defined __VMS
913 /* IRIX, other old systems */
910 914
911 /* UNIX-specific code -- read the average from /dev/kmem. */ 915 /* UNIX-specific code -- read the average from /dev/kmem. */
912 916
@@ -948,9 +952,7 @@ getloadavg (double loadavg[], int nelem)
948 } 952 }
949# endif /* !SUNOS_5 */ 953# endif /* !SUNOS_5 */
950# else /* sgi */ 954# else /* sgi */
951 int ldav_off; 955 ptrdiff_t ldav_off = sysmp (MP_KERNADDR, MPKA_AVENRUN);
952
953 ldav_off = sysmp (MP_KERNADDR, MPKA_AVENRUN);
954 if (ldav_off != -1) 956 if (ldav_off != -1)
955 offset = (long int) ldav_off & 0x7fffffff; 957 offset = (long int) ldav_off & 0x7fffffff;
956# endif /* sgi */ 958# endif /* sgi */