Changeset 16
- Timestamp:
- 05/13/06 20:37:27 (7 years ago)
- Files:
-
- trunk/Doxyfile.in (added)
- trunk/Makefile.am (modified) (2 diffs)
- trunk/TODO (modified) (1 diff)
- trunk/configure.ac (modified) (2 diffs)
- trunk/umem.c (modified) (2 diffs)
- trunk/umem.h (modified) (1 diff)
- trunk/umem.spec (deleted)
- trunk/umem.spec.in (added)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/Makefile.am
r13 r16 1 EXTRA_DIST = COPYRIGHT OPENSOLARIS.LICENSE umem.spec 1 EXTRA_DIST = COPYRIGHT OPENSOLARIS.LICENSE umem.spec Doxyfile 2 2 3 3 lib_LTLIBRARIES = libumem.la … … 34 34 TESTS = umem_test 35 35 36 html-local: 37 mkdir -p docs 38 doxygen Doxyfile 39 40 clean-local: 41 rm -rf docs 42 43 .PHONY: rpm 44 rpm: $(distdir).tar.bz2 45 rpmbuild -ta $< 46 36 47 # malloc.c 37 48 trunk/TODO
r11 r16 11 11 * ec_debug_vprintf -> something else? 12 12 13 * doxygen'ate the headers/code, to produce reference docs.14 15 * rpm spec file.16 17 13 * test suite. 18 14 19 15 * static library support. 16 17 * doxygen'ate the headers/code, to produce reference docs. 18 19 * HAVE_DOT in Doxyfile.in should be detected by configure. trunk/configure.ac
r6 r16 1 1 AC_INIT([umem], [1.0], [], [umem]) 2 AM_INIT_AUTOMAKE 2 AM_INIT_AUTOMAKE([dist-bzip2]) 3 3 4 4 AC_PROG_CC … … 11 11 12 12 AC_CONFIG_HEADERS([config.h]) 13 AC_CONFIG_FILES([Makefile ])13 AC_CONFIG_FILES([Makefile Doxyfile umem.spec]) 14 14 15 15 AC_OUTPUT trunk/umem.c
r2 r16 30 30 /* #pragma ident "@(#)umem.c 1.11 05/06/08 SMI" */ 31 31 32 /* 32 /*! 33 * \mainpage Main Page 34 * 35 * \section README 36 * 37 * \include README 38 * 39 * \section Nuances 40 * 41 * There is a nuance in the behaviour of the umem port compared 42 * with umem on Solaris. 43 * 44 * On Linux umem will not return memory back to the OS until umem fails 45 * to allocate a chunk. On failure, umem_reap() will be called automatically, 46 * to return memory to the OS. If your code is going to be running 47 * for a long time on Linux and mixes calls to different memory allocators 48 * (e.g.: malloc()) and umem, your code will need to call 49 * umem_reap() periodically. 50 * 51 * This doesn't happen on Solaris, because malloc is replaced 52 * with umem calls, meaning that umem_reap() is called automatically. 53 * 54 * \section References 55 * 56 * http://docs.sun.com/app/docs/doc/816-5173/6mbb8advq?a=view 57 * 58 * http://access1.sun.com/techarticles/libumem.html 59 * 60 * \section Overview 61 * 62 * \code 33 63 * based on usr/src/uts/common/os/kmem.c r1.64 from 2001/12/18 34 64 * … … 333 363 * the nofail callback does a non-local exit, we will leak the 334 364 * partially-constructed buffer. 365 * \endcode 335 366 */ 336 367 trunk/umem.h
r2 r16 49 49 extern void umem_free_align(void *, size_t); 50 50 51 /* 51 /*! 52 52 * Flags for umem_cache_create() 53 53 */ 54 /*@{*/ 54 55 #define UMC_NOTOUCH 0x00010000 55 56 #define UMC_NODEBUG 0x00020000 56 57 #define UMC_NOMAGAZINE 0x00040000 57 58 #define UMC_NOHASH 0x00080000 59 /*@}*/ 58 60 59 61 struct umem_cache; /* cache structure is opaque to umem clients */
