Re: Networking releated threads crashing with Q4 QFEs installed.

Tech-Archive recommends: Speed Up your PC by fixing your registry

From: Danny (danny_at_nospam.com)
Date: 03/18/04


Date: Thu, 18 Mar 2004 11:02:01 -0500

Hi Michael,

We cannot use this driver as a solution because we need a driver that can
detect the old firmware and flash the card to the new firmware. However, I
will try the driver that comes with PB on a card that has already been
flashed.

I have found that including the firmware in the binary image as an array of
(500K) bytes is what is causing the problem. We have separated it out into a
data file and load it using NdisOpenFile and it seems to be working well.
Like I said before, this problem is only seen with Q4 QFEs.

Cheers
Danny

"Michael Sisson [MS]" <msiss_at_microsoft_dot_com> wrote in message
news:OI%23PmQKDEHA.1456@TK2MSFTNGP09.phx.gbl...
> I haven't been able to find a WinCE 4.2 driver for this card on the Intel
> web site.
>
> Would you mind an experiment? Create a new workspace and , instead of
adding
> the Intel driver, use the Platform Settings dialog to set the build flag
> BSP_NIC_ISLP2NDS with a value of 1.
>
> Does it build? Will your device recognize the card when inserted?
>
> Michael [MS]
> Windows CE Sustained Engineering
> This posting is provided "AS IS" with no warranties, and confers no
rights.
>
>
> "Danny" <danny@nospam.com> wrote in message
> news:e4IRvH2CEHA.684@tk2msftngp13.phx.gbl...
> > Thanks for you quick response.
> >
> > The card we are using is an Intel PRO/Wireless 2011B LAN CF Card. The
> latest
> > driver (the one I am having problems with) actually puts new firmware on
> the
> > card an makes it report itself as a Intersil Prism ISL37101P SSF
Adapter.
> So
> > I guess you could say it is an Intersil Prism card. However, one thing
> that
> > I have noticed is that this driver requires the /Zm200 compiler flag.
This
> > is needed because it returns the following error message "fatal error
> C1076:
> > compiler limit: internal heap limit reached; use /Zm to specify a higher
> > limit" when compiling the file that contains the new firmware (as an
array
> > of 568712 bytes). Could this problem be due to this unually large amount
> of
> > global data?
> >
> > Cheers
> > Danny
> >
> > "Michael Sisson [MS]" <msiss_at_microsoft_dot_com> wrote in message
> > news:ey7O33sCEHA.308@TK2MSFTNGP11.phx.gbl...
> > > Hello, sir,
> > >
> > > We have not seen this with the cards we normally test with. What
> > network
> > > card are you using? Please include manufacturer and model.
> > >
> > > Thanks,
> > > Michael [MS]
> > > Windows CE Sustained Engineering
> > > This posting is provided "AS IS" with no warranties, and confers no
> > rights.
> > >
> > >
> > > "Danny" <danny@nospam.com> wrote in message
> > > news:ea0D5JrCEHA.2052@TK2MSFTNGP11.phx.gbl...
> > > > Hi All,
> > > >
> > > > After installing Q4 QFE's for PB 4.2 and the ARMV4I processor my
> > platforms
> > > > are now experiencing crashing on power up. The crashing occurs in
> > > different
> > > > locations but it is always in a networking related thread and in a
> heap
> > > > management function. In Q4 there was one QFE (031203_KB812950) that
> > modify
> > > > these functions. I have not tried installing one QFE at a time and
> > confirm
> > > > this is the QFE from that quarterly that caused the problem because
> that
> > > > would take a long time, and from the description it is the most
likely
> > > > candidate. There was a note in the readme file for this QFE that
> > mentions
> > > > modifications that are required for the platform to support the new
> > > > features. However, are any modifications require if you do require
the
> > new
> > > > features? Has anyone else seen this problem? Could this be a problem
> > with
> > > > one of my drivers? I only notice this problem when I have a specific
> > > 802.11
> > > > radio installed. I have included call stack captures from some of
the
> > > > locations were the crash happens most often.
> > > >
> > > > Cheers
> > > > Danny
> > > >
> > > >
> > > >
> > > >
> > >
> >
>
############################################################################
> > > > ##################
> > > > COREDLL!MergeFreeItems(region * 0x00000000, item * 0xfffffa00) line
> 630
> > +
> > > 4
> > > > bytes
> > > > COREDLL!Int_HeapFree(void * 0x00000000, unsigned long 0xfffffa00,
void
> *
> > > > 0x00000610) line 1375
> > > > COREDLL!HeapFree(void * 0x00000000, unsigned long 0xfffffa00, void *
> > > > 0x00000610) line 1306
> > > > CXPORT!CTEFreeMem(unsigned char * 0x00000000) line 2018
> > > > NDIS!NdisOpenFile(int * 0x00000000, void * * 0xfffffa00, unsigned
int
> *
> > > > 0x00000610, _UNICODE_STRING * 0x00000610, _LARGE_INTEGER {...})
line
> > 3100
> > > > IMWEBN51!CW10OpenFile(_CW10_ADAPTER * 0x00000000, _UNICODE_STRING *
> > > > 0xfffffa00, void * * 0x00000610, unsigned char * * 0x00000610,
> unsigned
> > > int
> > > > * 0x0637e8b0) line 1056
> > > > IMWEBN51!CW10LoadFirmware(_CW10_ADAPTER * 0x00000000) line 146
> > > > IMWEBN51!CW10RegisterAdapter(_CW10_ADAPTER * 0x00000000, void *
> > > 0xfffffa00)
> > > > line 1045 + 8 bytes
> > > > IMWEBN51!CW10Initialize(int * 0x00000000, unsigned int * 0xfffffa00,
> int
> > *
> > > > 0x00000610, unsigned int 0x00000610, void * 0x0003a690, void *
> > 0x0637efe4)
> > > > line 741 + 8 bytes
> > > > NDIS!ndisMInitializeAdapter(_NDIS_M_DRIVER_BLOCK * 0x00000000,
> > > > _NDIS_WRAPPER_CONFIGURATION_HANDLE * 0xfffffa00, _UNICODE_STRING *
> > > > 0x00000610, void * 0x00000610) line 737
> > > > NDIS!ndisInitializeAdapter(_NDIS_M_DRIVER_BLOCK * 0x00000000,
> > > > _CEDEVICE_OBJECT * 0xfffffa00, _UNICODE_STRING * 0x00000610, void *
> > > > 0x00000610) line 1100 + 28 bytes
> > > > NDIS!ndisPnPStartDevice(_CEDEVICE_OBJECT * 0x00000000, _IRP *
> > 0xfffffa00)
> > > > line 3250 + 28 bytes
> > > > NDIS!ndisAddDevice(_CEDRIVER_OBJECT * 0x00000000, _UNICODE_STRING *
> > > > 0xfffffa00, _CEDEVICE_OBJECT * 0x00000610, unsigned long 0x00000610)
> > line
> > > > 3624 + 12 bytes
> > > > NDIS!CeDeviceCreateDeviceForLoadedDriver(_CEDRIVER_OBJECT *
> 0x00000000,
> > > > unsigned short * 0xfffffa00, unsigned long 0x00000610, unsigned long
> > > > 0x00000610, long (_CEDRIVER_OBJECT *, _UNICODE_STRING *,
> > _CEDEVICE_OBJECT
> > > *,
> > > > unsigned long)* 0x03bce608 ndisAddDevice(_CEDRIVER_OBJECT *,
> > > _UNICODE_STRING
> > > > *, _CEDEVICE_OBJECT *, unsigned long), _CEDEVICE_OBJECT * *
> 0x0637f09c)
> > > > line 214 + 40 by
> > > > NDIS!CeDeviceLoadDriverAndCreateDevice(unsigned short * 0x00000000,
> > > unsigned
> > > > short * 0xfffffa00, unsigned short * 0x00000610, unsigned short *
> > > > 0x00000610, unsigned long 0x00000008, unsigned long 0x00000001, long
> > > > (_CEDRIVER_OBJECT *, _UNICODE_STRING *, _CEDEVICE_OBJECT *, unsigned
> > > long)*
> > > > ...) line 260 + 32 bytes
> > > > NDIS!ndisAddPCCardDevice(unsigned short * 0x00000000) line 1709
> > > > NDIS!NDS_Init(unsigned long 0x00000000) line 544 + 8 bytes
> > > > DEVICE!RegisterDeviceEx(const unsigned short * 0x00000000, unsigned
> long
> > > > 0xfffffa00, const unsigned short * 0x00000610, unsigned long
> 0x00000610,
> > > > unsigned long 0x0637f50c, unsigned long 0x00000000, unsigned long
> > > > 0x00000000, void * 0x00000000) line 493 + 20 bytes
> > > > DEVICE!StartOneDriver(const unsigned short * 0x00000000, unsigned
long
> > > > 0xfffffa00, const _REGINI * 0x00000610, unsigned long 0x00000610,
void
> *
> > > > 0x0637f70c) line 1032
> > > > DEVICE!FS_ActivateDeviceEx(const unsigned short * 0x00000000, const
> > > _REGINI
> > > > * 0xfffffa00, unsigned long 0x00000610, void * 0x00000610) line 690
> > > > COREDLL!xxx_ActivateDeviceEx(const unsigned short * 0x00000000,
const
> > void
> > > *
> > > > 0xfffffa00, unsigned long 0x00000610, void * 0x00000610) line 48
> > > > PCMCIA!LoadPCCardDriver(_CARD_SOCKET_HANDLE {...}, unsigned short *
> > > > 0x00000000, unsigned short * 0xfffffa00, unsigned short *
0x00000610)
> > > line
> > > > 536 + 24 bytes
> > > > PCMCIA!FindPCCardDriver(_CARD_SOCKET_HANDLE {...}, unsigned short *
> > > > 0x00000000) line 628 + 36 bytes
> > > > PCMCIA!FindDriversThread(void * 0x00000000) line 709
> > > > COREDLL!ThreadBaseFunc(void * 0x00000000, unsigned long 0xfffffa00)
> > line
> > > > 419
> > > >
> > > >
> > >
> >
>
############################################################################
> > > > ##################################3
> > > >
> > > > COREDLL!FindFreeItemInRegion(void * 0x00000000, region * 0x03d03b6c,
> int
> > > > 0x06178008) line 841 + 8 bytes
> > > > COREDLL!FindFreeItem(void * 0x00000000, heap * 0x03d03b6c, unsigned
> long
> > > > 0x06178008, region * * 0x00000510) line 941 + 16 bytes
> > > > COREDLL!Int_HeapAlloc(void * 0x00000000, unsigned long 0x03d03b6c,
> > > unsigned
> > > > long 0x06178008) line 1256 + 20 bytes
> > > > COREDLL!HeapAlloc(void * 0x00000000, unsigned long 0x03d03b6c,
> unsigned
> > > long
> > > > 0x06178008) line 1198
> > > > CXPORT!CTEAllocMem(unsigned long 0x00000000) line 1955 + 20 bytes
> > > > NDIS!NdisAllocateMemoryWithTag(void * * 0x00000000, unsigned int
> > > 0x03d03b6c,
> > > > unsigned long 0x06178008) line 194 + 8 bytes
> > > > IMWEBN51!NewImageBlock(_CW10_ADAPTER * 0x00000000) line 100
> > > > IMWEBN51!DecodeHexFile(_CW10_ADAPTER * 0x00000000, unsigned char *
> > > > 0x03d03b6c, unsigned int 0x06178008, unsigned long * 0x00000510,
> > > > Image_Block_Desc_Struct * * 0x001855ec, Image_Block_Desc_Struct * *
> > > > 0x0634e870, Image_Block_Desc_Struct * * 0x0634e874) line 271 + 8
> bytes
> > > > IMWEBN51!CW10BuildImage(_CW10_ADAPTER * 0x00000000, unsigned char *
> > > > 0x03d03b6c, unsigned int 0x06178008, char * 0x00000510, unsigned
char
> *
> > > > 0x0634e8e0, unsigned long * 0x001855f4, Image_Block_Desc_Struct * *
> > > > 0x001855ec) line 650 + 36 bytes
> > > > IMWEBN51!CW10LoadFirmware(_CW10_ADAPTER * 0x00000000) line 192 + 76
> > bytes
> > > > IMWEBN51!CW10RegisterAdapter(_CW10_ADAPTER * 0x00000000, void *
> > > 0x03d03b6c)
> > > > line 1045 + 8 bytes
> > > > IMWEBN51!CW10Initialize(int * 0x00000000, unsigned int * 0x03d03b6c,
> int
> > *
> > > > 0x06178008, unsigned int 0x00000510, void * 0x0003a740, void *
> > 0x0634efe4)
> > > > line 741 + 8 bytes
> > > > NDIS!ndisMInitializeAdapter(_NDIS_M_DRIVER_BLOCK * 0x00000000,
> > > > _NDIS_WRAPPER_CONFIGURATION_HANDLE * 0x03d03b6c, _UNICODE_STRING *
> > > > 0x06178008, void * 0x00000510) line 737
> > > > NDIS!ndisInitializeAdapter(_NDIS_M_DRIVER_BLOCK * 0x00000000,
> > > > _CEDEVICE_OBJECT * 0x03d03b6c, _UNICODE_STRING * 0x06178008, void *
> > > > 0x00000510) line 1100 + 28 bytes
> > > > NDIS!ndisPnPStartDevice(_CEDEVICE_OBJECT * 0x00000000, _IRP *
> > 0x03d03b6c)
> > > > line 3250 + 28 bytes
> > > > NDIS!ndisAddDevice(_CEDRIVER_OBJECT * 0x00000000, _UNICODE_STRING *
> > > > 0x03d03b6c, _CEDEVICE_OBJECT * 0x06178008, unsigned long 0x00000510)
> > line
> > > > 3624 + 12 bytes
> > > > NDIS!CeDeviceCreateDeviceForLoadedDriver(_CEDRIVER_OBJECT *
> 0x00000000,
> > > > unsigned short * 0x03d03b6c, unsigned long 0x06178008, unsigned long
> > > > 0x00000510, long (_CEDRIVER_OBJECT *, _UNICODE_STRING *,
> > _CEDEVICE_OBJECT
> > > *,
> > > > unsigned long)* 0x03bce608 ndisAddDevice(_CEDRIVER_OBJECT *,
> > > _UNICODE_STRING
> > > > *, _CEDEVICE_OBJECT *, unsigned long), _CEDEVICE_OBJECT * *
> 0x0634f09c)
> > > > line 214 + 40 by
> > > > NDIS!CeDeviceLoadDriverAndCreateDevice(unsigned short * 0x00000000,
> > > unsigned
> > > > short * 0x03d03b6c, unsigned short * 0x06178008, unsigned short *
> > > > 0x00000510, unsigned long 0x00000008, unsigned long 0x00000001, long
> > > > (_CEDRIVER_OBJECT *, _UNICODE_STRING *, _CEDEVICE_OBJECT *, unsigned
> > > long)*
> > > > ...) line 260 + 32 bytes
> > > > NDIS!ndisAddPCCardDevice(unsigned short * 0x00000000) line 1709
> > > > NDIS!NDS_Init(unsigned long 0x00000000) line 544 + 8 bytes
> > > > DEVICE!RegisterDeviceEx(const unsigned short * 0x00000000, unsigned
> long
> > > > 0x03d03b6c, const unsigned short * 0x06178008, unsigned long
> 0x00000510,
> > > > unsigned long 0x0634f50c, unsigned long 0x00000000, unsigned long
> > > > 0x00000000, void * 0x00000000) line 493 + 20 bytes
> > > > DEVICE!StartOneDriver(const unsigned short * 0x00000000, unsigned
long
> > > > 0x03d03b6c, const _REGINI * 0x06178008, unsigned long 0x00000510,
void
> *
> > > > 0x0634f70c) line 1032
> > > > DEVICE!FS_ActivateDeviceEx(const unsigned short * 0x00000000, const
> > > _REGINI
> > > > * 0x03d03b6c, unsigned long 0x06178008, void * 0x00000510) line 690
> > > > COREDLL!xxx_ActivateDeviceEx(const unsigned short * 0x00000000,
const
> > void
> > > *
> > > > 0x03d03b6c, unsigned long 0x06178008, void * 0x00000510) line 48
> > > > PCMCIA!LoadPCCardDriver(_CARD_SOCKET_HANDLE {...}, unsigned short *
> > > > 0x00000000, unsigned short * 0x03d03b6c, unsigned short *
0x06178008)
> > > line
> > > > 536 + 24 bytes
> > > > PCMCIA!FindPCCardDriver(_CARD_SOCKET_HANDLE {...}, unsigned short *
> > > > 0x00000000) line 628 + 36 bytes
> > > > PCMCIA!FindDriversThread(void * 0x00000000) line 709
> > > > COREDLL!ThreadBaseFunc(void * 0x00000000, unsigned long 0x03d03b6c)
> > line
> > > > 419
> > > >
> > > >
> >
#########################################################################
> > > >
> > > > CXPORT!CTEFreeMem(unsigned char * 0x00000000) line 2003
> > > > NDIS!NdisFreeMemory(void * 0x00000000, unsigned int 0x01fc42f8,
> unsigned
> > > int
> > > > 0x00000001) line 246
> > > > NDISUIO!ndisuioFreeBindResources(_NDISUIO_OPEN_CONTEXT * 0x00000000)
> > line
> > > > 1049
> > > > NDISUIO!ndisuioShutdownBinding(_NDISUIO_OPEN_CONTEXT * 0x00000000)
> line
> > > 982
> > > > NDISUIO!NdisuioUnbindAdapter(int * 0x00000000, void * 0x01fc42f8,
void
> *
> > > > 0x00000001) line 332
> > > > NDIS!ndisUnbindProtocol(_NDIS_OPEN_BLOCK * 0x00000000, unsigned char
> > 0xf8)
> > > > line 2428
> > > > NDIS!ndisCloseMiniportBindings(_NDIS_MINIPORT_BLOCK * 0x00000000,
> > > > _NDIS_PROTOCOL_BLOCK * 0x01fc42f8) line 1581
> > > > NDIS!INdisBindOrUnbindThread(BindThreadContext * 0x00000000) line
> 1162
> > > > COREDLL!ThreadBaseFunc(void * 0x00000000, unsigned long 0x01fc42f8)
> > line
> > > > 419
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > > >
> > >
> > >
> >
> >
>
>



Relevant Pages

  • Re: [PATCH][2.6][2/14] documentation update
    ... add udev.txt which describes how to use dvb and udev/sysfs ... The firmware can be loaded automatically via the hotplug manager ... +- For the dvb-ttpci driver/av7110 card you can download the firmware files from ... +file you probably know from the 2.4 DVB releases driver. ...
    (Linux-Kernel)
  • [PATCH][RFC] Remove "obsolete" digiepca content.
    ... -NOTE: This driver is obsolete. ... In other words a PCI card in slot 3 will always have higher device ... This structure is NOT used to overlay the cards physical channel ... -static void globalwinon; ...
    (Linux-Kernel)
  • [PATCH] DIGIEPCA: Remove long-obsolete digiepca driver.
    ... -NOTE: This driver is obsolete. ... In other words a PCI card in slot 3 will always have higher device ... This structure is NOT used to overlay the cards physical channel ... -static void globalwinon; ...
    (Linux-Kernel)
  • Re: Working with photos help
    ... If your graphics card is a separate device and you know the name of the ... manufacturer go to their website and get the latest driver for your card. ... check on whether they also provide the Firmware ...
    (microsoft.public.windowsxp.moviemaker)
  • Re: unstable aironet driver?
    ... MW> I do not have a mini pci aironet but at least I can tell you ... MW> There was a firmware issue some time ago with a newer cisco ... The card loses association and seems to simply go out to lunch. ... the driver does. ...
    (freebsd-current)