I'm trying to upgrade my ndis driver from version 3.100.64.0 to 4.40.19.0, but when I try to load the driver I get a Fatal trap 12 error. #fetch ftp://ftp.hp.com/pub/softpaq/sp33001-33500/sp33008.exe #cabextract -q -L -F 'bcmwl5*' sp33008.exe #ndisgen bcmwl5.inf bcmwl564.sys #kldloadd ./bcmwl564_sys.ko no match for strrchr no match for MmFreeContiguousMemorySpecifyCache no match for MmAllocateContiguousMemorySpecifyCache no match for MmGetPhysicalAddress ichsmb0: <SMBus Controller> port 0x8400-0x840f mem 0xc0003000-0xc0003fff at device 20.0 on pci0 device_attach: ichsmb0 attach returned 6 ndis0: <Broadcom 802.11b/g WLAN> mem 0xc0204000-0xc0205fff irq 21 at device 20.0 on pci6 ndis0: NDIS API Version: 5.1 fpudna in kernel mode! ntoskrnl dummy called... Fatal trap 12: page fault while in kernel mode cpuid = 0; apic id = 00 fault virtual address = 0x1a fault code = supervisor read, page not present instruction pointer = 0x8:0xffffffffa2b1b1eb stack pointer = 0x10:0xffffffffa2a6f100 frame pointer = 0x10:0xffffffffa2b82140 code segment = base 0x0, limit 0xfffff, type 0x1b = DPL 0, pres 1, long 1, def32 0, gran 1 processor eflags = intrrupt enabled, resume, IOPL=0 current process = 1503 (kldload) [thread pid 1503 tid 100099] stopped at 0xffffffffa2b1b1eb: cmpb (%rax, %rdx, 1), %cl db>bt tracing pid 1503 tid 100099 td 0xffffff002f569810 bcmwl564_sys_drv_data_start() at 0xffffffffa2b1b1eb (null)() at 0x11600000000 NOTE: This fatal trap 12 was caused by the missing strrchr function, after implementing only that function, and recompiling the ndis.ko module the driver nolonger crashed the kernel. I was able to create the first 3 functions for the NDIS compatibility layer, but I'm not sure how to find the Physical address from the Virtual Address for the MmGetPhysicalAddress function. Implemented Functions: stricmp strrchr MmAllocateContiguousMemory MmAllocateContiguousMemorySpecifyCache MmFreeContiguousMemory MmFreeContiguousMemorySpecifyCache Unimplemented Functions: memchr - implemented but causes "cast discards qualifiers from pointer target type" (copied from lib/libc/string/memchr.c) MmGetPhysicalAddress - needs to be implemented Any ideas as to how to fix memchr, and implement MmGetPhysicalAddress? Scot -- DISCLAIMER: No electrons were mamed while sending this message. Only slightly bruised.
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:03 UTC