summaryrefslogtreecommitdiff
blob: 503ed3576a70d7eaf0249bd44b6c2591769247ce (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
https://hg.openindiana.org/upstream/oracle/userland-gate/file/23c55a2f8a8e/components/top/patches/04.percent_cpu.patch

--- top-3.8beta1/machine/m_sunos5.c.orig	Tue Nov  8 11:23:08 2011
+++ top-3.8beta1/machine/m_sunos5.c	Tue Nov  8 11:23:11 2011
@@ -152,8 +152,17 @@
  * one of the spare slots in the prinfo structure.
  */
 
-#define percent_cpu(pp) (*(double *)dbl_align(&pp->pr_filler[0]))
+#if OSREV > 59
+/* 
+ * on Solaris 10, psinfo.pr_filler is 4 bytes and not double-aligned, so we must * move our scratch space to the larger pr.lwp_pr_filler which is 20 bytes
+ * XXX this is a time bomb and will likely break in future Solaris releases.
+ */
+#define percent_cpu(pp) (*(double *)dbl_align(&pp->pr_lwp.pr_filler[0]))
+#else
+#define percent_cpu(pp) (*(double *)dbl_align(&pp->pr_filler[0]))
+#endif
 
+
 /* definitions for indices in the nlist array */
 #define X_V			 0
 #define X_MPID			 1