none
KERNEL_SECURITY_CHECK_FAILURE BSoD on RNDIS Device After Feature Update 1709 RRS feed

  • Question

  • Hi, I have a device that uses RNDIS to communicate with a desktop application. The driver for it has been working for years, including on Windows 10. The driver is simply an INF file that calls rndis6.sys with the correct fields changed for the USB vendor and product ID, as well as device name. After installing Feature Update 1709, when the device is connected to a Windows 10 PC and turned on, the device starts to enumerate with Windows and then a BSoD happens with the error KERNEL_SECURITY_CHECK_FAILURE. I've rolled back Windows to just before the update and confirmed that 1709 has broken the driver. 

    I think this issue covers what actually happened in 1709 to break RNDIS: https://social.technet.microsoft.com/Forums/windows/en-US/9a44310c-c85a-4794-a927-198021b12b9f/1709-bug-with-rndismp6sysusb80236sys-dhcp-client-does-not-work?forum=win10itpronetworking I'm not too well versed in writing INF files so I'm not sure what I'm missing from mine, but I'm hoping this problem can be fixed with a correct INF. I generate my device.cat file from an INF using inf2cat. Then I sign the cat file and build the installer with IExpress.exe. Any help would be greatly appreciated!

    ; USB RNDIS driver installation file.
    
    [Version]
    Signature           = "$Windows NT$"
    Class               = Net
    ClassGUID           = {4d36e972-e325-11ce-bfc1-08002be10318}
    Provider            = %VENDOR%
    DriverVer=06/15/2015,7.0.6000.2015
    CatalogFile        = device.cat
    
    [Manufacturer]
    %VENDOR%         = RndisDevices,NT.5.1,NTx86,NTamd64,NTia64
    
    ; Decoration for x86 architecture
    [RndisDevices.NTx86]
    %RndisDevice%    = RNDIS.NT.6.0, USB\VID_1234&PID_5678
    
    ; Decoration for x64 architecture
    [RndisDevices.NTamd64]
    %RndisDevice%    = RNDIS.NT.6.0, USB\VID_1234&PID_5678
    
    ; Decoration for ia64 architecture
    [RndisDevices.NTia64]
    %RndisDevice%    = RNDIS.NT.6.0, USB\VID_1234&PID_5678
    
    [RndisDevices.NT.5.1]
    %RndisDevice%    = RNDIS.NT.5.1, USB\VID_1234&PID_5678
    
    ;@@@ This is the common setting for setup
    [ControlFlags]
    ExcludeFromSelect=*
    
    ; DDInstall section
    [RNDIS.NT.5.1]
    Characteristics = 0x84   ; NCF_PHYSICAL + NCF_HAS_UI
    BusType         = 15
    include         = netrndis.inf
    needs           = Usb_Rndis.ndi
    AddReg          = Rndis_AddReg_Win7
    
    [RNDIS.NT.5.1.Services]
    include     = netrndis.inf
    needs       = Usb_Rndis.ndi.Services
    
    ; References the in-build Netrndis.inf
    [RNDIS.NT.6.0]
    Characteristics = 0x84   ; NCF_PHYSICAL + NCF_HAS_UI
    BusType         = 15
    ; NEVER REMOVE THE FOLLOWING REFERENCE FOR NETRNDIS.INF
    include         = netrndis.inf
    needs           = usbrndis6.ndi
    AddReg          = Rndis_AddReg_Win7
    *IfType            = 6    ; IF_TYPE_ETHERNET_CSMACD.
    *MediaType         = 16   ; NdisMediumNative802_11
    *PhysicalMediaType = 14   ; NdisPhysicalMedium802_3
    *IfConnectorPresent = 0	; BOOLEAN
    *ConnectionType     = 1 ; NET_IF_CONNECTION_TYPE
    *DirectionType      = 0 ; NET_IF_DIRECTION_TYPE
    *AccessType         = 0 ; NET_IF_ACCESS_TYPE
    *HardwareLoopback   = 0 ; BOOLEAN
    
    ; DDInstal.Services section
    [RNDIS.NT.6.0.Services]
    include     = netrndis.inf
    needs       = usbrndis6.ndi.Services
    
    ; Optional registry settings. You can modify as needed.
    [RNDIS_AddReg_Win7] 
    HKR, NDI\params\Win7Property, ParamDesc,  0, %Win7_Property%
    HKR, NDI\params\Win7Property, type,       0, "edit"
    HKR, NDI\params\Win7Property, LimitText,  0, "12"
    HKR, NDI\params\Win7Property, UpperCase,  0, "1"
    HKR, NDI\params\Win7Property, default,    0, " "
    HKR, NDI\params\Win7Property, optional,   0, "1"
    
    ; No sys copyfiles - the sys files are already in-build 
    ; (part of the operating system).
    
    ; Modify these strings for your device as needed.
    [Strings]
    ; DO NOT MODIFY ServiceDisplayName!!
    ServiceDisplayName    = "USB RNDIS Adapter"
    VENDOR                = "My Company"
    RndisDevice           = "My Device"
    Win7_Property         = "My Device"
    
    

    Monday, January 29, 2018 11:43 PM

All replies

  • Hi skrawn,

    Thank you for your post.

    I have forwarded this information to the appropriate department through our internal channel.

    It is caused by the driver and firmware after installing the update.

    For this issue, I suggest that you post it on Windows Hardware WDK and Driver Development forum. It’s a right place to give you more help.

    https://social.msdn.microsoft.com/Forums/windowsdesktop/en-US/home?forum=wdk

    Regards,


    Please remember to mark the replies as answers if they help.
    If you have feedback for TechNet Subscriber Support, contact tnmff@microsoft.com.

    Wednesday, January 31, 2018 8:20 AM
    Moderator
  • Thanks Carl. I moved this to the Driver forum. You can close/remove it.
    Wednesday, January 31, 2018 2:46 PM
  • Hello Carl,

    are there any news about this issue? We habe Windows 10 V1803 on our coumpters, an the problem (bugcheck 0x139 when connecting our USB-RNDIS-device) is still present. The link mentoined in the initial post provides a workaround, but that did no work for us. What else can we do to get around this?

    Have much thanks in before.

    Best regards,
    Willi K.

    Wednesday, December 12, 2018 9:59 AM