cvs commit: src/sys/compat/ndis kern_ndis.c ntoskrnl_var.h subr_hal.c subr_ndis.c subr_ntoskrnl.c

Bill Paul wpaul at
Thu Apr 15 17:04:29 PDT 2004

wpaul       2004/04/15 17:04:28 PDT

  FreeBSD src repository

  Modified files:
    sys/compat/ndis      kern_ndis.c ntoskrnl_var.h subr_hal.c 
                         subr_ndis.c subr_ntoskrnl.c 
  - Use memory barrier with atomic operations in ntoskrnl_lock_dpc() and
  - hal_raise_irql(), hal_lower_irql() and hal_irql() didn't work right
    on SMP (priority inheritance makes things... interesting). For now,
    use only two states: DISPATCH_LEVEL (PI_REALTIME) and PASSIVE_LEVEL
    (everything else). Tested on a dual PIII box.
  - Use ndis_thsuspend() in ndis_sleep() instead of tsleep(). (I added
    ndis_thsuspend() and ndis_thresume() to replace kthread_suspend()
    and kthread_resume(); the former will preserve a thread's priority
    when it wakes up, the latter will not.)
  - Change use of tsleep() in ndis_stop_thread() to prevent priority
    change on wakeup.
  Revision  Changes    Path
  1.52      +1 -1      src/sys/compat/ndis/kern_ndis.c
  1.14      +2 -2      src/sys/compat/ndis/ntoskrnl_var.h
  1.11      +13 -41    src/sys/compat/ndis/subr_hal.c
  1.56      +1 -2      src/sys/compat/ndis/subr_ndis.c
  1.35      +3 -9      src/sys/compat/ndis/subr_ntoskrnl.c

More information about the cvs-src mailing list