-
Notifications
You must be signed in to change notification settings - Fork 59
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #1389 from hadfl/pkgupd
package updates
- Loading branch information
Showing
14 changed files
with
189 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,157 @@ | ||
PR created upstream: | ||
|
||
https://github.com/htop-dev/htop/pull/1371 | ||
|
||
From 4b87af0663f83ed90f044f975e519409c92b8bd9 Mon Sep 17 00:00:00 2001 | ||
From: Dominik Hassler <[email protected]> | ||
Date: Thu, 11 Jan 2024 17:44:34 +0000 | ||
Subject: [PATCH] fixes for illumos/Solaris platforms | ||
|
||
--- | ||
solaris/Platform.c | 6 +++--- | ||
solaris/SolarisMachine.c | 6 +++++- | ||
solaris/SolarisMachine.h | 1 + | ||
solaris/SolarisProcess.c | 1 - | ||
solaris/SolarisProcess.h | 1 + | ||
solaris/SolarisProcessTable.c | 11 ++++++----- | ||
6 files changed, 16 insertions(+), 10 deletions(-) | ||
|
||
diff --git a/solaris/Platform.c b/solaris/Platform.c | ||
index 5faa91ae7..3934f7896 100644 | ||
--- a/solaris/Platform.c | ||
+++ b/solaris/Platform.c | ||
@@ -220,7 +220,7 @@ double Platform_setCPUValues(Meter* this, unsigned int cpu) { | ||
|
||
v[CPU_METER_NICE] = cpuData->nicePercent; | ||
v[CPU_METER_NORMAL] = cpuData->userPercent; | ||
- if (super->settings->detailedCPUTime) { | ||
+ if (host->settings->detailedCPUTime) { | ||
v[CPU_METER_KERNEL] = cpuData->systemPercent; | ||
v[CPU_METER_IRQ] = cpuData->irqPercent; | ||
this->curItems = 4; | ||
@@ -258,13 +258,13 @@ void Platform_setSwapValues(Meter* this) { | ||
} | ||
|
||
void Platform_setZfsArcValues(Meter* this) { | ||
- const SolarisMachine* shost = (SolarisMachine*) this->host; | ||
+ const SolarisMachine* shost = (const SolarisMachine*) this->host; | ||
|
||
ZfsArcMeter_readStats(this, &shost->zfs); | ||
} | ||
|
||
void Platform_setZfsCompressedArcValues(Meter* this) { | ||
- const SolarisMachine* shost = (SolarisMachine*) this->host; | ||
+ const SolarisMachine* shost = (const SolarisMachine*) this->host; | ||
|
||
ZfsCompressedArcMeter_readStats(this, &shost->zfs); | ||
} | ||
diff --git a/solaris/SolarisMachine.c b/solaris/SolarisMachine.c | ||
index 4f740d321..5b2bdcd46 100644 | ||
--- a/solaris/SolarisMachine.c | ||
+++ b/solaris/SolarisMachine.c | ||
@@ -57,7 +57,7 @@ static void SolarisMachine_updateCPUcount(SolarisMachine* this) { | ||
|
||
if (s != super->activeCPUs) { | ||
change = true; | ||
- hsuper->activeCPUs = s; | ||
+ super->activeCPUs = s; | ||
} | ||
|
||
if (change) { | ||
@@ -310,6 +310,10 @@ Machine* Machine_new(UsersTable* usersTable, uid_t userId) { | ||
CRT_fatalError("Cannot get pagesize by sysconf(_SC_PAGESIZE)"); | ||
this->pageSizeKB = this->pageSize / 1024; | ||
|
||
+ this->kd = kstat_open(); | ||
+ if (!this->kd) | ||
+ CRT_fatalError("Cannot open kstat handle"); | ||
+ | ||
SolarisMachine_updateCPUcount(this); | ||
|
||
return super; | ||
diff --git a/solaris/SolarisMachine.h b/solaris/SolarisMachine.h | ||
index 2208a888e..b350e9196 100644 | ||
--- a/solaris/SolarisMachine.h | ||
+++ b/solaris/SolarisMachine.h | ||
@@ -19,6 +19,7 @@ in the source distribution for its full text. | ||
#include <sys/uio.h> | ||
|
||
#include "Hashtable.h" | ||
+#include "Machine.h" | ||
#include "UsersTable.h" | ||
|
||
#include "zfs/ZfsArcStats.h" | ||
diff --git a/solaris/SolarisProcess.c b/solaris/SolarisProcess.c | ||
index 449861b25..56acc7e5a 100644 | ||
--- a/solaris/SolarisProcess.c | ||
+++ b/solaris/SolarisProcess.c | ||
@@ -15,7 +15,6 @@ in the source distribution for its full text. | ||
#include <unistd.h> | ||
#include <sys/syscall.h> | ||
|
||
-#include "Process.h" | ||
#include "ProcessTable.h" | ||
#include "CRT.h" | ||
|
||
diff --git a/solaris/SolarisProcess.h b/solaris/SolarisProcess.h | ||
index 1a8d18c76..292a05f2d 100644 | ||
--- a/solaris/SolarisProcess.h | ||
+++ b/solaris/SolarisProcess.h | ||
@@ -20,6 +20,7 @@ in the source distribution for its full text. | ||
#define ERR (-1) | ||
|
||
#include "Machine.h" | ||
+#include "Process.h" | ||
|
||
|
||
typedef struct SolarisProcess_ { | ||
diff --git a/solaris/SolarisProcessTable.c b/solaris/SolarisProcessTable.c | ||
index 549c753cd..29c5d938f 100644 | ||
--- a/solaris/SolarisProcessTable.c | ||
+++ b/solaris/SolarisProcessTable.c | ||
@@ -24,6 +24,7 @@ in the source distribution for its full text. | ||
|
||
#include "CRT.h" | ||
#include "solaris/Platform.h" | ||
+#include "solaris/SolarisMachine.h" | ||
#include "solaris/SolarisProcess.h" | ||
|
||
|
||
@@ -112,8 +113,8 @@ static int SolarisProcessTable_walkproc(psinfo_t* _psinfo, lwpsinfo_t* _lwpsinfo | ||
|
||
// Setup process list | ||
ProcessTable* pt = (ProcessTable*) listptr; | ||
- SolarisProcessTable* spt = (SolarisProcessTable*) listptr; | ||
- Machine* host = pt->host; | ||
+ const Machine* host = pt->super.host; | ||
+ const SolarisMachine* shost = (const SolarisMachine*) host; | ||
|
||
id_t lwpid_real = _lwpsinfo->pr_lwpid; | ||
if (lwpid_real > 1023) { | ||
@@ -133,7 +134,7 @@ static int SolarisProcessTable_walkproc(psinfo_t* _psinfo, lwpsinfo_t* _lwpsinfo | ||
const Settings* settings = host->settings; | ||
|
||
// Common code pass 1 | ||
- proc->show = false; | ||
+ proc->super.show = false; | ||
sproc->taskid = _psinfo->pr_taskid; | ||
sproc->projid = _psinfo->pr_projid; | ||
sproc->poolid = _psinfo->pr_poolid; | ||
@@ -171,7 +172,7 @@ static int SolarisProcessTable_walkproc(psinfo_t* _psinfo, lwpsinfo_t* _lwpsinfo | ||
sproc->realpid = _psinfo->pr_pid; | ||
sproc->lwpid = lwpid_real; | ||
sproc->zoneid = _psinfo->pr_zoneid; | ||
- sproc->zname = SolarisProcessTable_readZoneName(spt->kd, sproc); | ||
+ sproc->zname = SolarisProcessTable_readZoneName(shost->kd, sproc); | ||
SolarisProcessTable_updateExe(_psinfo->pr_pid, proc); | ||
|
||
Process_updateComm(proc, _psinfo->pr_fname); | ||
@@ -218,7 +219,7 @@ static int SolarisProcessTable_walkproc(psinfo_t* _psinfo, lwpsinfo_t* _lwpsinfo | ||
pt->totalTasks += proc->nlwp + 1; | ||
} | ||
} | ||
- proc->show = !(settings->hideKernelThreads && proc->isKernelThread); | ||
+ proc->super.show = !(settings->hideKernelThreads && proc->isKernelThread); | ||
} else { // We are not in the master LWP, so jump to the LWP handling code | ||
proc->percent_cpu = ((uint16_t)_lwpsinfo->pr_pctcpu / (double)32768) * (double)100.0; | ||
Process_updateCPUFieldWidths(proc->percent_cpu); |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
illumos.patch |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.