freebsd-dev/sys/compat
Bill Paul 6f4481422e More minor cleanups and one small bug fix:
- In ntoskrnl_var.h, I had defined compat macros for
  ntoskrnl_acquire_spinlock() and ntoskrnl_release_spinlock() but
  never used them. This is fortunate since they were stale. Fix them
  to work properly. (In Windows/x86 KeAcquireSpinLock() is a macro that
  calls KefAcquireSpinLock(), which lives in HAL.dll. To imitate this,
  ntoskrnl_acquire_spinlock() is just a macro that calls hal_lock(),
  which lives in subr_hal.o.)

- Add macros for ntoskrnl_raise_irql() and ntoskrnl_lower_irql() that
  call hal_raise_irql() and hal_lower_irql().

- Use these macros in kern_ndis.c, subr_ndis.c and subr_ntoskrnl.c.

- Along the way, I realised subr_ndis.c:ndis_lock() was not calling
  hal_lock() correctly (it was using the FASTCALL2() wrapper when
  in reality this routine is FASTCALL1()). Using the
  ntoskrnl_acquire_spinlock() fixes this. Not sure if this actually
  caused any bugs since hal_lock() would have just ignored what
  was in %edx, but it was still bogus.

This hides many of the uses of the FASTCALLx() macros which makes the
code a little cleaner. Should not have any effect on generated object
code, other than the one fix in ndis_lock().
2004-08-04 18:22:50 +00:00
..
freebsd32 Regen 2004-07-14 00:03:51 +00:00
ia32 /usr/libexec/ld-elf.so.1 -> /libexec/ld-elf32.so.1 2004-07-16 20:53:00 +00:00
linprocfs Remove ps_argsopen from this check, because of two reasons: 2004-04-01 00:04:23 +00:00
linux Use kernel_vmount() instead of vfs_nmount(). 2004-07-27 21:38:42 +00:00
ndis More minor cleanups and one small bug fix: 2004-08-04 18:22:50 +00:00
netbsd Move the non-MD machine/dvcfg.h and machine/physio_proc.h to a common 2004-03-13 19:46:27 +00:00
pecoff Change the types of vn_rdwr_inchunks()'s len and aresid arguments to 2004-06-05 02:18:28 +00:00
svr4 Do a pass over all modules in the kernel and make them return EOPNOTSUPP 2004-07-15 08:26:07 +00:00