opnsense-src/sys
Bill Paul d3eb09f083 subr_ndis.c:
- fix ndis_time() so that it returns a time based on the proper
  epoch (wacky though it may be)
- implement NdisInitializeString() and NdisFreeString(), and add
  stub for NdisMRemoveMiniport()

ntoskrnl_var.h:
- add missing member to the general_lookaside struct (gl_listentry)

subr_ntoskrnl.c:
- Fix arguments to the interlocked push/pop routines: 'head' is an
  slist_header *, not an slist_entry *
- Kludge up _fastcall support for the push/pop routines. The _fastcall
  convention is similar to _stdcall, except the first two available
  DWORD-sized arguments are passed in %ecx and %edx, respectively.
  One kludge for this __attribute__ ((regparm(3))), however this
  isn't entirely right, as it assumes %eax, %ecx and %edx will be
  used (regparm(2) assumes %eax and %edx). Another kludge is to
  declare the two fastcall-ed args as local register variables and
  explicitly assign them to %ecx and %edx, but experimentation showed
  that gcc would not guard %ecx and %edx against being clobbered.
  Thus, I came up with a 3rd kludge, which is to use some inline
  assembly of the form:

	void		*arg1;
	void		*arg2;

	__asm__("movl %%ecx, %%ecx" : "=c" (arg1));
	__asm__("movl %%edx, %%edx" : "=d" (arg2));

  This lets gcc know that we're going to reference %ecx and %edx and
  that it should make an effort not to let it get trampled. This wastes
  an instruction (movl %reg, %reg is a no-op) but insures proper
  behavior. It's possible there's a better way to do this though:
  this is the first time I've used inline assembler in this fashion.

The above fixes to ntoskrnl_var.h an subr_ntoskrnl.c make lookaside
lists work for the two drivers I have that use them, one of which
is an NDIS 5.0 miniport and another which is 5.1.
2003-12-13 07:41:12 +00:00
..
alpha Move the bktr(4) <arch>/include/ioctl_{bt848,meteor}.h files to dev/bktr 2003-12-08 07:22:42 +00:00
amd64 MFi386: remove APIC_IRQ* defines that are no longer used. 2003-12-11 02:48:25 +00:00
arm Add sysentvec->sv_fixlimits() hook so that we can catch cases on 64 bit 2003-09-25 01:10:26 +00:00
boot - Change the lookup() function to report success or failure using the carry 2003-12-11 22:42:50 +00:00
cam Move the ciss quirk to the right section, also update the comment 2003-12-08 06:29:38 +00:00
coda - Implement selwakeuppri() which allows raising the priority of a 2003-11-09 09:17:26 +00:00
compat subr_ndis.c: 2003-12-13 07:41:12 +00:00
conf Commit the first cut of Project Evil, also known as the NDISulator. 2003-12-11 22:34:37 +00:00
contrib Changes to the import script to handle the compiler/debugger import. 2003-12-09 03:13:37 +00:00
crypto avoid module name conflict with opencrypto/rijndael.c. 2003-11-12 04:22:37 +00:00
ddb Reworked rev.1.14. Use the ELF symbol type again to summarily reject 2003-09-28 06:02:33 +00:00
dev Spell btkr as bktr. 2003-12-12 21:18:04 +00:00
fs Make msdosfs long filenames matching case insensitive again. 2003-12-08 08:32:20 +00:00
geom Correct usage of mtx_init() API. This is not a functional change since 2003-12-07 23:20:53 +00:00
gnu Fixed a reference to a nonexistent variable in previous commit. Renaming 2003-11-05 11:56:58 +00:00
i4b Based on an excellent suggestion from tanimura@ define I4BPRI and use it 2003-11-10 14:20:34 +00:00
i386 - Call mp_topology() after all CPUs have been probed. 2003-12-11 03:49:02 +00:00
ia64 Assimilate ia64 back into the fold with the common freebsd32/ia32 code. 2003-12-11 01:05:09 +00:00
isa Significantly reduce the "jitter" that is typical for PS/2 mice 2003-12-11 11:28:11 +00:00
isofs/cd9660 DuH! 2003-10-18 14:10:28 +00:00
kern Although sometimes to the uninitiated, it may seem like goup, KSEGOUP 2003-12-12 21:25:56 +00:00
libkern Make msdosfs long filenames matching case insensitive again. 2003-12-08 08:32:20 +00:00
modules Turn off build of if_ndis.ko by default, since it depends on an 2003-12-12 04:45:15 +00:00
net Declare gre(4) as being of IFT_TUNNEL, Like God Intended. 2003-12-09 06:39:25 +00:00
net80211 o insure the current channel is in a good state before starting an AP scan 2003-11-13 05:23:58 +00:00
netatalk Eliminate a duplicate free when deleting an interface address. This 2003-11-28 04:19:41 +00:00
netatm Introduce a MAC label reference in 'struct inpcb', which caches 2003-11-18 00:39:07 +00:00
netgraph The last argument to mtx_init() should be MTX_DEF, not 0. This is not a 2003-12-08 01:18:04 +00:00
netinet Do not panic when flushing dummynet firewall rules 2003-12-06 09:01:25 +00:00
netinet6 validate the argument for multicast routing socket options 2003-12-10 18:17:05 +00:00
netipsec Introduce a MAC label reference in 'struct inpcb', which caches 2003-11-18 00:39:07 +00:00
netipx Introduce a MAC label reference in 'struct inpcb', which caches 2003-11-18 00:39:07 +00:00
netkey don't touch after free. 2003-12-10 05:01:41 +00:00
netnatm Introduce a MAC label reference in 'struct inpcb', which caches 2003-11-18 00:39:07 +00:00
netncp The present defaults for the open and close for device drivers which 2003-09-27 12:01:01 +00:00
netsmb - Support for multibyte charsets in LIBICONV. 2003-09-26 20:26:25 +00:00
nfs University of Michigan's Citi NFSv4 kernel client code. 2003-11-14 20:54:10 +00:00
nfs4client This patch fixes two little portability (to !GCC compilers) problems: 2003-12-11 11:30:26 +00:00
nfsclient Use function pointers to remove the depenancy cross dependancy on nfs4 2003-11-22 02:21:49 +00:00
nfsserver Update a comment about needing to fix NFS server credential use 2003-11-17 00:56:53 +00:00
opencrypto eliminate an unnecessary 8Kbyte bzero that was being done for each 2003-11-19 22:42:34 +00:00
pc98 The dgb driver is redundant with the digi driver in the tree. It uses 2003-12-07 04:18:52 +00:00
pccard - Implement selwakeuppri() which allows raising the priority of a 2003-11-09 09:17:26 +00:00
pci Attempt to get the short cable fix to work better on the if_sis: 2003-12-12 10:15:39 +00:00
posix4 sched_setscheduler: Return EINVAL when a invalid policy is specified, 2003-09-13 18:46:24 +00:00
powerpc imac revA-D and beige G3 OpenFirmware uses the "ide" string for 2003-12-10 08:58:48 +00:00
rpc Change the definition of NULL on ia64 (for LP64 compilations) from 2003-12-07 21:10:06 +00:00
security interpvnodelabel can be NULL in mac_test_execve_transition(). This 2003-12-10 18:48:05 +00:00
sparc64 Fix all users of mp_maxid to use the same semantics, namely: 2003-12-03 14:57:26 +00:00
sys Regen 2003-12-10 22:18:54 +00:00
tools Changes for new SMP-safe kobj method dispatch algorithm. 2003-10-16 13:29:26 +00:00
ufs Set fs_ronly to the correct value in ffs_reload() when reloading the file 2003-12-07 05:16:52 +00:00
vm Remove trailing whitespace. 2003-12-08 02:45:45 +00:00
Makefile Revert exclusion for amd64 that stopped boot/ being built. 2003-06-26 03:52:48 +00:00