|
|
@@ -8,6 +8,7 @@ import (
|
|
|
"fmt"
|
|
|
"net/http"
|
|
|
"os/exec"
|
|
|
+ "runtime"
|
|
|
"strconv"
|
|
|
"strings"
|
|
|
|
|
|
@@ -108,7 +109,7 @@ func GetUSB(w http.ResponseWriter, r *http.Request) {
|
|
|
}
|
|
|
|
|
|
func GetCPUInfo(w http.ResponseWriter, r *http.Request) {
|
|
|
- cmdin := `cat /proc/cpuinfo | grep -m1 "model name"`
|
|
|
+ cmdin := `cat /proc/cpuinfo | grep -m1 "[mM]odel [nN]ame"`
|
|
|
cmd := exec.Command("bash", "-c", cmdin)
|
|
|
hardware, err := cmd.CombinedOutput()
|
|
|
if err != nil {
|
|
|
@@ -126,7 +127,7 @@ func GetCPUInfo(w http.ResponseWriter, r *http.Request) {
|
|
|
cmd = exec.Command("bash", "-c", cmdin)
|
|
|
speed, err := cmd.CombinedOutput()
|
|
|
if err != nil {
|
|
|
- cmdin = `cat /proc/cpuinfo | grep -m1 "cpu MHz"`
|
|
|
+ cmdin = `cat /proc/cpuinfo | grep -m1 "[cC][pP][uU] MHz"`
|
|
|
cmd = exec.Command("bash", "-c", cmdin)
|
|
|
intelSpeed, err := cmd.CombinedOutput()
|
|
|
if err != nil {
|
|
|
@@ -135,13 +136,16 @@ func GetCPUInfo(w http.ResponseWriter, r *http.Request) {
|
|
|
speed = intelSpeed
|
|
|
}
|
|
|
|
|
|
- cmdin = `cat /proc/cpuinfo | grep -m1 "Hardware"`
|
|
|
- cmd = exec.Command("bash", "-c", cmdin)
|
|
|
- cpuhardware, err := cmd.CombinedOutput()
|
|
|
- if err != nil {
|
|
|
+ //On LoongArch, /proc/cpuinfo has a "Hardware Watchpoint" field, which is not the hardware model we need.
|
|
|
+ if runtime.GOARCH != "loong64" {
|
|
|
+ cmdin = `cat /proc/cpuinfo | grep -m1 "Hardware"`
|
|
|
+ cmd = exec.Command("bash", "-c", cmdin)
|
|
|
+ cpuhardware, err := cmd.CombinedOutput()
|
|
|
+ if err != nil {
|
|
|
|
|
|
- } else {
|
|
|
- hardware = cpuhardware
|
|
|
+ } else {
|
|
|
+ hardware = cpuhardware
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
//On ARM
|