From owner-cvs-src@FreeBSD.ORG Thu Jul 14 17:40:02 2005 Return-Path: X-Original-To: cvs-src@FreeBSD.org Delivered-To: cvs-src@FreeBSD.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id AC07616A41C; Thu, 14 Jul 2005 17:40:02 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from repoman.freebsd.org (repoman.freebsd.org [216.136.204.115]) by mx1.FreeBSD.org (Postfix) with ESMTP id 732E643D45; Thu, 14 Jul 2005 17:40:02 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from repoman.freebsd.org (localhost [127.0.0.1]) by repoman.freebsd.org (8.13.1/8.13.1) with ESMTP id j6EHe21L099163; Thu, 14 Jul 2005 17:40:02 GMT (envelope-from rwatson@repoman.freebsd.org) Received: (from rwatson@localhost) by repoman.freebsd.org (8.13.1/8.13.1/Submit) id j6EHe25K099162; Thu, 14 Jul 2005 17:40:02 GMT (envelope-from rwatson) Message-Id: <200507141740.j6EHe25K099162@repoman.freebsd.org> From: Robert Watson Date: Thu, 14 Jul 2005 17:40:02 +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/lib/libmemstat Makefile libmemstat.3 memstat.c memstat.h memstat_all.c memstat_internal.h memstat_malloc.c memstat_uma.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: Thu, 14 Jul 2005 17:40:02 -0000 rwatson 2005-07-14 17:40:02 UTC FreeBSD src repository Added files: lib/libmemstat Makefile libmemstat.3 memstat.c memstat.h memstat_all.c memstat_internal.h memstat_malloc.c memstat_uma.c Log: Add libmemstat(3), a library for use by debugging and monitoring applications in tracking kernel memory statistics. It provides an abstracted interface to uma(9) and malloc(9) statistics, wrapped around the recently added binary stream sysctls for the allocators. Using this interface, it is easy to build monitoring tools, query specific memory types for usage information, etc. Facilities are provided for binding caller-provided data to memory types, incremental updates of memory types, and queries that span multiple allocators. Support for additional allocators is (relatively) easy to add. The API for libmemstat(3) will probably change some over time as consumers are written, and requirements evolve. It is written to avoid encoding ABIs for data structure layout into consuming applications for this reason. MFC after: 1 week Revision Changes Path 1.1 +23 -0 src/lib/libmemstat/Makefile (new) 1.1 +238 -0 src/lib/libmemstat/libmemstat.3 (new) 1.1 +366 -0 src/lib/libmemstat/memstat.c (new) 1.1 +134 -0 src/lib/libmemstat/memstat.h (new) 1.1 +47 -0 src/lib/libmemstat/memstat_all.c (new) 1.1 +124 -0 src/lib/libmemstat/memstat_internal.h (new) 1.1 +240 -0 src/lib/libmemstat/memstat_malloc.c (new) 1.1 +230 -0 src/lib/libmemstat/memstat_uma.c (new)