Print this page
5513 KM_NORMALPRI should be documented in kmem_alloc(9f) and kmem_cache_create(9f) man pages
14465 Present KM_NOSLEEP_LAZY as documented interface
Change-Id: I002ec28ddf390650f1fcba1ca94f6abfdb241439
        
*** 28,40 ****
                 Number of bytes to allocate.
  
  
         flag
                 Determines whether caller can sleep for memory. Possible flags
!                are KM_SLEEP to allow sleeping until memory is available, or
!                KM_NOSLEEP to return NULL immediately if memory is not
!                available.
  
  
         buf
                 Pointer to allocated memory.
  
--- 28,46 ----
                 Number of bytes to allocate.
  
  
         flag
                 Determines whether caller can sleep for memory. Possible flags
!                are KM_SLEEP to allow sleeping until memory is available,
!                KM_NOSLEEP to return NULL if memory is not available even after
!                some reclamation attempts, and KM_NOSLEEP_LAZY to return NULL
!                without reclamation attempts.  KM_NOSLEEP_LAZY is actually two
!                flags combined: (KM_NOSLEEP | KM_NORMALPRI), the latter flag
!                indicating not to attempt reclamation before giving up and
!                returning NULL.  If any mention of KM_NOSLEEP appears in this
!                man page by itself, it applies equally to KM_NOSLEEP_LAZY as
!                well.
  
  
         buf
                 Pointer to allocated memory.
  
*** 43,56 ****
         The kmem_alloc() function allocates size bytes of kernel memory and
         returns a pointer to the allocated memory. The allocated memory is at
         least double-word aligned, so it can hold any C data structure. No
         greater alignment can be assumed. flag determines whether the caller
         can sleep for memory.  KM_SLEEP allocations may sleep but are
!        guaranteed to succeed.  KM_NOSLEEP allocations are guaranteed not to
!        sleep but may fail (return NULL) if no memory is currently available.
!        The initial contents of memory allocated using kmem_alloc() are random
!        garbage.
  
  
         The kmem_zalloc() function is like kmem_alloc() but returns zero-filled
         memory.
  
--- 49,64 ----
         The kmem_alloc() function allocates size bytes of kernel memory and
         returns a pointer to the allocated memory. The allocated memory is at
         least double-word aligned, so it can hold any C data structure. No
         greater alignment can be assumed. flag determines whether the caller
         can sleep for memory.  KM_SLEEP allocations may sleep but are
!        guaranteed to succeed.  KM_NOSLEEP and KM_NOSLEEP_LAZY allocations are
!        guaranteed not to sleep but may fail (return NULL) if no memory is
!        currently available. KM_NOSLEEP will first attempt to aggressively
!        reclaim memory from otherwise unused blocks, while KM_NOSLEEP_LAZY will
!        not attempt any reclamation. The initial contents of memory allocated
!        using kmem_alloc() are random garbage.
  
  
         The kmem_zalloc() function is like kmem_alloc() but returns zero-filled
         memory.