Date: Thu, 15 Apr 2004 17:04:28 -0700 (PDT) From: Bill Paul <wpaul@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/sys/compat/ndis kern_ndis.c ntoskrnl_var.h subr_hal.c subr_ndis.c subr_ntoskrnl.c Message-ID: <200404160004.i3G04SnL050513@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
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 Log: - Use memory barrier with atomic operations in ntoskrnl_lock_dpc() and ntoskrnl_unlocl_dpc(). - 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
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200404160004.i3G04SnL050513>