Important and basic Windbg commands

!analyze –v :analyzes the dump file and provides a best possible diagnosis of the same

!sympath :shows path to your symbol files

lm :lists all loaded modules in memory

lmf :list loaded modules with full path

lmt :list loaded modules with last modified timestamp

!lmi <module name> :Shows header information about the module, including the date and time, which can often tell you whether you’re running an older version of a program and need to upgrade

vertarget :Shows information about the system on which you are debugging

!peb :Shows the PEB (process environment block) including DLL information

.trap :Dump a trap frame

.chain :Lists all loaded debugger extensions

————– End of Document —————–

Tags: Windows XP, Windows Server 2000, Windows Server 2003

Published Date: 20071109

i8042prt failed to load on boot

When you boot up your computer you get a message that atleast one service failed to start. On checking the eventlogs you figure out that i8042prt failed to load. You do not face this issue on all your computers but mostly on ‘headless’ servers.

You get the following error message in Windows event logs.

Event Type:                 Error
Event Source:              Service Control Manager
Event Category:           None
Event ID:                     7026
Date:                          11/13/2007
Time:                         9:51:01 AM
User:                          N/A
Description:
The following boot-start or system-start driver(s) failed to load: i8042prt

i8042 is a system service that controls ps2 mouse and keyboard ports. Some of the features of this driver are:

  • Hardware-dependent, simultaneous operation of a PS/2-style keyboard and mouse device
  • Management of I/O Port and IRQ settings and routines
  • Plug and Play and power management
  • Operation of legacy devices
  • Other interface and interaction components between the operating system and these types of devices

However if your server does not have a ps2 device attached or your BIOS disables ps2 ports to save IRQ, i8042 would still search for hardware and if it deos not find any ps2 device OR gets a weird data from BIOS, it would error out.

There are two ways to fix this:

A. Create a parameter in i8042 service properties to identify it as a headless node.

  • Go to Start > Run and put "regedit.exe" and click "Ok"
  • Navigate to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt\Parameters in Registry Editor
  • Add a new REG_DWORD "Headless" and set the value to 1
  • Reboot the server.

OR

B. Disable the i8042 service from registry.

(**Be careful you may not be able to use PS2 Mouse and keyboard if you do so**)

  • Go to Start > Run and put "regedit.exe" and click "Ok"
  • Navigate to HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\i8042prt in Registry Editor
  • Change the REG_DWORD value "Start" from  "1" to "4". This sets the i8042 service from SERVICE_BOOT_START to SERVICE_DISABLED
  • Reboot the server

The reason why it only happens in some cases only is because some BIOSes have a setting to enable/disable ps2 ports. You can set this to enable, disable or auto.

In auto mode, if it does not detect a ps2 device it might disable the ps2 port to save an irq. However, some BIOSes have no setting at all and behave as "auto" mode by default. If i8042 search for hardware and finds no ps2 or gets a weird data from BIOS pnp, might error out.

————– End of Document —————–

Tags: Windows Server 2003

Published Date: 20071113

Finding NIC information remotely using WMIC commands

WMIC is a very useful and very under utilized interface for server / OS management provided in Windows. One very common example that generally requires logging in to the server is to check / set Network card properties. At a command prompt type WMIC and then /? to find the available interfaces that can be queried or set.

To check NIC Configuration tyep the following sequence of commands at the command prompt. For example:

WMIC
/NODE:<hostname>
NICCONFIG Get DNSHostName

NICCONFIG Get DNSDomainSuffixSearchOrder

————– End of Document —————–

Tags: Windows XP, Windows Server 2000, Windows Server 2003

Published Date: 20071112