From owner-cvs-src@FreeBSD.ORG Sat Dec 1 19:24:28 2007 Return-Path: Delivered-To: cvs-src@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id E5C7316A500; Sat, 1 Dec 2007 19:24:28 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [IPv6:2001:4f8:fff6::29]) by mx1.freebsd.org (Postfix) with ESMTP id CEED113C45D; Sat, 1 Dec 2007 19:24:28 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.14.1/8.14.1) with ESMTP id lB1JOS1B045534; Sat, 1 Dec 2007 19:24:28 GMT (envelope-from rwatson@repoman.freebsd.org) Received: (from rwatson@localhost) by repoman.freebsd.org (8.14.1/8.14.1/Submit) id lB1JOS19045533; Sat, 1 Dec 2007 19:24:28 GMT (envelope-from rwatson) Message-Id: <200712011924.lB1JOS19045533@repoman.freebsd.org> From: Robert Watson Date: Sat, 1 Dec 2007 19:24:28 +0000 (UTC) To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org X-FreeBSD-CVS-Branch: HEAD Cc: Subject: cvs commit: src/sys/sys linker.h src/sys/kern kern_linker.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Dec 2007 19:24:29 -0000 rwatson 2007-12-01 19:24:28 UTC FreeBSD src repository Modified files: sys/sys linker.h sys/kern kern_linker.c Log: The kernel linker includes a number of utility functions to look up symbol information in support of DDB(4); these functions bypass normal linker locking as they may run in contexts where locking is unsafe (such as the kernel debugger). Add a new interface linker_ddb_search_symbol_name(), which looks up a symbol name and offset given an address, and also linker_search_symbol_name() which does the same but *does* follow the locking conventions of the linker. Unlike existing functions, these functions place the name in a caller-provided buffer, which is stable even after linker locks have been released. These functions will be used in upcoming revisions to stack(9) to support kernel stack trace generation in contexts as part of a live, rather than suspended, kernel. Revision Changes Path 1.153 +87 -13 src/sys/kern/kern_linker.c 1.50 +8 -0 src/sys/sys/linker.h