freebsd-dev/sys/compat/ndis
Bill Paul 621b33fc5b Fix an amd64 issue I overlooked. When setting up a callout to
ndis_timercall() in NdisMInitializeTimer(), we can't use the raw
function pointer. This is because ntoskrnl_run_dpc() expects to
invoke a function with Microsoft calling conventions. On i386,
this works because ndis_timercall() is declared with the __stdcall
attribute, but this is a no-op on amd64. To do it correctly, we
have to generate a wrapper for ndis_timercall() and us the wrapper
instead of of the raw function pointer.

Fix this by adding ndis_timercall() to the funcptr table in subr_ndis.c,
and create ndis_findwrap() to extract the wrapped function from the
table in NdisMInitializeTimer() instead of just passing ndis_timercall()
to KeInitializeDpc() directly.
2005-03-31 16:38:48 +00:00
..
cfg_var.h Start each of the license/copyright comments with /*- 2005-01-05 22:34:37 +00:00
hal_var.h Add support for Windows/x86-64 binaries to Project Evil. 2005-02-16 05:41:18 +00:00
kern_ndis.c Remove a couple of #ifdef 0'ed code blocks left over from Atheros debugging. 2005-03-30 02:50:06 +00:00
kern_windrv.c In windrv_load(), I was allocating the driver object using 2005-03-01 17:21:25 +00:00
ndis_var.h Finally bring an end to the great "make the Atheros NDIS driver 2005-03-27 10:14:36 +00:00
ntoskrnl_var.h Tweak to hopefully make lookaside lists work on amd64: in Windows, the 2005-03-28 17:36:06 +00:00
pe_var.h Fix a couple of u_int_foos that should have been uint_foos. 2005-02-18 04:33:34 +00:00
resource_var.h Add support for Windows/x86-64 binaries to Project Evil. 2005-02-16 05:41:18 +00:00
subr_hal.c Fix for amd64. 2005-03-28 20:13:14 +00:00
subr_ndis.c Fix an amd64 issue I overlooked. When setting up a callout to 2005-03-31 16:38:48 +00:00
subr_ntoskrnl.c Fix a possible mutex leak in KeSetTimerEx(): if timer is NULL, we 2005-03-30 16:22:48 +00:00
subr_pe.c Couple of lessons learned during USB driver testing: 2005-02-24 17:58:27 +00:00
subr_usbd.c - Correct one aspect of the driver_object/device_object/IRP framework: 2005-02-24 21:49:14 +00:00
usbd_var.h - Correct one aspect of the driver_object/device_object/IRP framework: 2005-02-24 21:49:14 +00:00
winx64_wrap.S Make the Win64 -> ELF64 template a little smaller by using a string 2005-02-18 03:22:37 +00:00