From nobody Thu Jan 27 10:07:06 2022 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 687E4197A933; Thu, 27 Jan 2022 10:07:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4Jkx8V2Pv2z3r2v; Thu, 27 Jan 2022 10:07:06 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1643278026; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rXnru7EsiEklrgIuUQ/dZBwdL3F01Ys9uHLwlgs0V1c=; b=VnjMwyOBC2oY2kpmvmPJWeknFZGi+J7vqeRp+8xnjH9tPbyLoIy5sLR5Ff1XhQNU0ZfZq5 Zom8MrRHBJIQi09Gq45G3nXg+zWBJClCdr89Y2WfK5H27PhxuI+/7ZLNznZnyqbONtR8kp mz+uBXl1v/D9Xfrsz9FZkghNpOd1Ck15oeT088bOEidUCFJejX++shQbhFUVtd3khNBgWl XhTMyAbhXJaDQMcys4Bs0gTQ6Gtp20ELVqmkjPx+d+A8HjuCzS8eGcHI2v30qjCAGATyu7 0vLtom2vO6WdPfIKXBoVX4J/q5fbYbSr3ngfON1f2UYZeVuEjfC/TJVwcyu71g== Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (Client did not present a certificate) by mxrelay.nyi.freebsd.org (Postfix) with ESMTPS id 3390514AF8; Thu, 27 Jan 2022 10:07:06 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from gitrepo.freebsd.org ([127.0.1.44]) by gitrepo.freebsd.org (8.16.1/8.16.1) with ESMTP id 20RA760j092064; Thu, 27 Jan 2022 10:07:06 GMT (envelope-from git@gitrepo.freebsd.org) Received: (from git@localhost) by gitrepo.freebsd.org (8.16.1/8.16.1/Submit) id 20RA76OD092063; Thu, 27 Jan 2022 10:07:06 GMT (envelope-from git) Date: Thu, 27 Jan 2022 10:07:06 GMT Message-Id: <202201271007.20RA76OD092063@gitrepo.freebsd.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org From: Emmanuel Vadot Subject: git: 19d26be3f3b3 - stable/13 - loader: tslog: Add more log for module loading List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-dev-commits-src-all@freebsd.org X-BeenThere: dev-commits-src-all@freebsd.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: manu X-Git-Repository: src X-Git-Refname: refs/heads/stable/13 X-Git-Reftype: branch X-Git-Commit: 19d26be3f3b3b52487c085f8f02927e8eef5c52b Auto-Submitted: auto-generated ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1643278026; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=rXnru7EsiEklrgIuUQ/dZBwdL3F01Ys9uHLwlgs0V1c=; b=TDeftSofi/tp4BsgSA4EObTOEn2XmCKvuSWqr/V6OrtZ38nNCkHdmP0bMx6g0nNh7Xf2DS 8v5eECypVyJFo0dPKa6pN1MindLaP+dsJFGC5qdTePdkC4dOuXVcgY1WfANn7oekoX4L9d qVGINIrfOXhVKNL6HwPt4c6u+6h9XO+FfAa7zpx9VzA6n5dyIpz1U0A4ZhiHDHBG8ogfbp vCpCy8Ne05IEQ2uJuDr+nnLe+q3McFiK1WI4CWIEKfg8h4f15pvJ8pvh3NLPiLzm7mQacD HvMlElb0Tb6rHVVzoz2647TLgKj1vXvU8hIeaDuRsII69dnLpltkfESm1UOSjA== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1643278026; a=rsa-sha256; cv=none; b=triDoPh5IveTJU8cWtPG0vF98plC1aXTStZHbCfpCO/jPDGOywXhHbeGo5cy31NagGhKzf TE7RNpqxCGt1A2JjtgE3brOW6R4jSvqDKa5tjuMspBhk5+ApTn4Z5RklHWQdEpDqCZfRdL QuySZI+IJungWEHsxoLLHTpSAYhNLG1lgLaJJ61onHyqhlP+YUNYpJgBqGyZXAOS4VYIUB McNW3KTvdjqotheJKPSr1TA/lG17eivbmDdZXW3ADrweOQFO+0x8hzRmerBUK9lzXhn6Sv fGUvW9/GR2ParbQOPWjGgtEisc8xOKXGxlJtfuNCmNTRJqHeFk8EDP5iHLTNlQ== ARC-Authentication-Results: i=1; mx1.freebsd.org; none X-ThisMailContainsUnwantedMimeParts: N The branch stable/13 has been updated by manu: URL: https://cgit.FreeBSD.org/src/commit/?id=19d26be3f3b3b52487c085f8f02927e8eef5c52b commit 19d26be3f3b3b52487c085f8f02927e8eef5c52b Author: Emmanuel Vadot AuthorDate: 2021-12-30 14:49:24 +0000 Commit: Emmanuel Vadot CommitDate: 2022-01-27 10:06:43 +0000 loader: tslog: Add more log for module loading This helps mesuring what's happening when we load the kernel/modules/mfsroot. This also adds TSENTER2 which uses the third argument of TSRAW, same as in the kernel. MFC after: 2 weeks Sponsored by: Beckhoff Automation GmbH & Co. KG Differential Revision: https://reviews.freebsd.org/D33699 (cherry picked from commit 01cad731921bb60b4f6e04c1cac987eea7af9d08) --- stand/common/module.c | 22 ++++++++++++++++++++++ stand/libsa/stand.h | 1 + 2 files changed, 23 insertions(+) diff --git a/stand/common/module.c b/stand/common/module.c index f28771396af0..fdc65541b1a5 100644 --- a/stand/common/module.c +++ b/stand/common/module.c @@ -552,6 +552,7 @@ file_load(char *filename, vm_offset_t dest, struct preloaded_file **result) int error; int i; + TSENTER2(filename); if (archsw.arch_loadaddr != NULL) dest = archsw.arch_loadaddr(LOAD_RAW, filename, dest); @@ -578,6 +579,7 @@ file_load(char *filename, vm_offset_t dest, struct preloaded_file **result) break; } } + TSEXIT(); return (error); } @@ -739,9 +741,11 @@ file_loadraw(const char *fname, char *type, int insert) int verror; #endif + TSENTER2(fname); /* We can't load first */ if ((file_findfile(NULL, NULL)) == NULL) { command_errmsg = "can't load file before kernel"; + TSEXIT(); return(NULL); } @@ -750,6 +754,7 @@ file_loadraw(const char *fname, char *type, int insert) if (name == NULL) { snprintf(command_errbuf, sizeof(command_errbuf), "can't find '%s'", fname); + TSEXIT(); return(NULL); } @@ -757,6 +762,7 @@ file_loadraw(const char *fname, char *type, int insert) snprintf(command_errbuf, sizeof(command_errbuf), "can't open '%s': %s", name, strerror(errno)); free(name); + TSEXIT(); return(NULL); } @@ -768,6 +774,7 @@ file_loadraw(const char *fname, char *type, int insert) free(name); free(vctx); close(fd); + TSEXIT(); return(NULL); } #else @@ -777,6 +784,7 @@ file_loadraw(const char *fname, char *type, int insert) name, ve_error_get()); free(name); close(fd); + TSEXIT(); return(NULL); } #endif @@ -801,6 +809,7 @@ file_loadraw(const char *fname, char *type, int insert) #ifdef LOADER_VERIEXEC_VECTX free(vctx); #endif + TSEXIT(); return(NULL); } laddr += got; @@ -813,6 +822,7 @@ file_loadraw(const char *fname, char *type, int insert) free(name); close(fd); free(vctx); + TSEXIT(); return(NULL); } #endif @@ -824,6 +834,7 @@ file_loadraw(const char *fname, char *type, int insert) "no memory to load %s", name); free(name); close(fd); + TSEXIT(); return (NULL); } fp->f_name = name; @@ -839,6 +850,7 @@ file_loadraw(const char *fname, char *type, int insert) "no memory to load %s", name); free(name); close(fd); + TSEXIT(); return (NULL); } /* recognise space consumption */ @@ -848,6 +860,7 @@ file_loadraw(const char *fname, char *type, int insert) if (insert != 0) file_insert_tail(fp); close(fd); + TSEXIT(); return(fp); } @@ -863,8 +876,10 @@ mod_load(char *modname, struct mod_depend *verinfo, int argc, char *argv[]) int err; char *filename; + TSENTER2(modname); if (file_havepath(modname)) { printf("Warning: mod_load() called instead of mod_loadkld() for module '%s'\n", modname); + TSEXIT(); return (mod_loadkld(modname, argc, argv)); } /* see if module is already loaded */ @@ -876,6 +891,7 @@ mod_load(char *modname, struct mod_depend *verinfo, int argc, char *argv[]) #endif snprintf(command_errbuf, sizeof(command_errbuf), "warning: module '%s' already loaded", mp->m_name); + TSEXIT(); return (0); } /* locate file with the module on the search path */ @@ -883,10 +899,12 @@ mod_load(char *modname, struct mod_depend *verinfo, int argc, char *argv[]) if (filename == NULL) { snprintf(command_errbuf, sizeof(command_errbuf), "can't find '%s'", modname); + TSEXIT(); return (ENOENT); } err = mod_loadkld(filename, argc, argv); free(filename); + TSEXIT(); return (err); } @@ -902,6 +920,7 @@ mod_loadkld(const char *kldname, int argc, char *argv[]) char *filename; vm_offset_t loadaddr_saved; + TSENTER2(kldname); /* * Get fully qualified KLD name */ @@ -909,6 +928,7 @@ mod_loadkld(const char *kldname, int argc, char *argv[]) if (filename == NULL) { snprintf(command_errbuf, sizeof(command_errbuf), "can't find '%s'", kldname); + TSEXIT(); return (ENOENT); } /* @@ -919,6 +939,7 @@ mod_loadkld(const char *kldname, int argc, char *argv[]) snprintf(command_errbuf, sizeof(command_errbuf), "warning: KLD '%s' already loaded", filename); free(filename); + TSEXIT(); return (0); } @@ -945,6 +966,7 @@ mod_loadkld(const char *kldname, int argc, char *argv[]) if (err) file_discard(fp); free(filename); + TSEXIT(); return (err); } diff --git a/stand/libsa/stand.h b/stand/libsa/stand.h index 172b54c33b30..99b55e2282e4 100644 --- a/stand/libsa/stand.h +++ b/stand/libsa/stand.h @@ -486,6 +486,7 @@ void hexdump(caddr_t region, size_t len); /* tslog.c */ #define TSRAW(a, b, c) tslog(a, b, c) #define TSENTER() TSRAW("ENTER", __func__, NULL) +#define TSENTER2(x) TSRAW("ENTER", __func__, x) #define TSEXIT() TSRAW("EXIT", __func__, NULL) #define TSLINE() TSRAW("EVENT", __FILE__, __XSTRING(__LINE__)) void tslog(const char *, const char *, const char *);