Print this page
5045 use atomic_{inc,dec}_* instead of atomic_add_*

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/i86pc/vm/htable.h
          +++ new/usr/src/uts/i86pc/vm/htable.h
↓ open down ↓ 18 lines elided ↑ open up ↑
  19   19   * CDDL HEADER END
  20   20   */
  21   21  /*
  22   22   * Copyright 2007 Sun Microsystems, Inc.  All rights reserved.
  23   23   * Use is subject to license terms.
  24   24   */
  25   25  
  26   26  #ifndef _VM_HTABLE_H
  27   27  #define _VM_HTABLE_H
  28   28  
  29      -#pragma ident   "%Z%%M% %I%     %E% SMI"
  30      -
  31   29  #ifdef  __cplusplus
  32   30  extern "C" {
  33   31  #endif
  34   32  
  35   33  #if defined(__GNUC__) && defined(_ASM_INLINES) && defined(_KERNEL)
  36   34  #include <asm/htable.h>
  37   35  #endif
  38   36  
  39   37  extern void atomic_andb(uint8_t *addr, uint8_t value);
  40   38  extern void atomic_orb(uint8_t *addr, uint8_t value);
↓ open down ↓ 244 lines elided ↑ open up ↑
 285  283   * access to a pagetable knowing only the pfn
 286  284   */
 287  285  extern x86pte_t *x86pte_mapin(pfn_t, uint_t, htable_t *);
 288  286  extern void x86pte_mapout(void);
 289  287  
 290  288  /*
 291  289   * these are actually inlines for "lock; incw", "lock; decw", etc. instructions.
 292  290   */
 293  291  #define HTABLE_INC(x)   atomic_inc16((uint16_t *)&x)
 294  292  #define HTABLE_DEC(x)   atomic_dec16((uint16_t *)&x)
 295      -#define HTABLE_LOCK_INC(ht)     atomic_add_32(&(ht)->ht_lock_cnt, 1)
 296      -#define HTABLE_LOCK_DEC(ht)     atomic_add_32(&(ht)->ht_lock_cnt, -1)
      293 +#define HTABLE_LOCK_INC(ht)     atomic_inc_32(&(ht)->ht_lock_cnt)
      294 +#define HTABLE_LOCK_DEC(ht)     atomic_dec_32(&(ht)->ht_lock_cnt)
 297  295  
 298  296  #ifdef __xpv
 299  297  extern void xen_flush_va(caddr_t va);
 300  298  extern void xen_gflush_va(caddr_t va, cpuset_t);
 301  299  extern void xen_flush_tlb(void);
 302  300  extern void xen_gflush_tlb(cpuset_t);
 303  301  extern void xen_pin(pfn_t, level_t);
 304  302  extern void xen_unpin(pfn_t);
 305  303  extern int xen_kpm_page(pfn_t, uint_t);
 306  304  
↓ open down ↓ 35 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX