From 7e80107bbec27650bd3be7f844b6ca2a13ab7cc0 Mon Sep 17 00:00:00 2001 From: Clayton Craft Date: Sat, 11 Feb 2023 14:37:14 -0800 Subject: [PATCH] misc: add TimeFunc() This allows it to be re-used easily when things are broken up into more packages later. --- cmd/mkinitfs/main.go | 7 +------ internal/misc/misc.go | 14 +++++++++++++- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/cmd/mkinitfs/main.go b/cmd/mkinitfs/main.go index ec6c146..149aeaa 100644 --- a/cmd/mkinitfs/main.go +++ b/cmd/mkinitfs/main.go @@ -23,11 +23,6 @@ import ( "gitlab.com/postmarketOS/postmarketos-mkinitfs/pkgs/deviceinfo" ) -func timeFunc(start time.Time, name string) { - elapsed := time.Since(start) - log.Printf("%s completed in: %s", name, elapsed) -} - func main() { deviceinfoFile := "/etc/deviceinfo" if !exists(deviceinfoFile) { @@ -45,7 +40,7 @@ func main() { outDir := flag.String("d", "/boot", "Directory to output initfs(-extra) and other boot files") flag.Parse() - defer timeFunc(time.Now(), "mkinitfs") + defer misc.TimeFunc(time.Now(), "mkinitfs") kernVer, err := getKernelVersion() if err != nil { diff --git a/internal/misc/misc.go b/internal/misc/misc.go index 14f28cc..dace252 100644 --- a/internal/misc/misc.go +++ b/internal/misc/misc.go @@ -4,10 +4,12 @@ package misc import ( - "golang.org/x/sys/unix" "log" "os" "path/filepath" + "time" + + "golang.org/x/sys/unix" ) // Converts a relative symlink target path (e.g. ../../lib/foo.so), that is @@ -74,3 +76,13 @@ func RemoveDuplicates(in []string) (out []string) { return } + +// Prints the execution time of a function, not meant to be very +// sensitive/accurate, but good enough to gauge rough run times. +// Meant to be called as: +// +// defer misc.TimeFunc(time.Now(), "foo") +func TimeFunc(start time.Time, name string) { + elapsed := time.Since(start) + log.Printf("%s completed in: %s", name, elapsed) +}