Windows NT reports a single processor after you apply a service pack (168132)
The information in this article applies to:
- Microsoft Windows NT Workstation 3.5
- Microsoft Windows NT Workstation 3.51
- Microsoft Windows NT Workstation 4.0
- Microsoft Windows NT Server 3.5
- Microsoft Windows NT Server 3.51
- Microsoft Windows NT Server 4.0
- Microsoft Windows NT Server 4.0 Terminal Server Edition
This article was previously published under Q168132 SYMPTOMS
After you apply a Windows NT service pack on a multiprocessor system, you
find that Windows NT now only reports a single processor installed.
Prior to installing the service pack, you were running with multiprocessor
versions of the Hal.dll and Ntoskrnl.exe files.
Applying a Windows NT service pack on a multi-processor computer may cause the computer to stop responding (hang) on reboot immediately after the installation. This may occur during the logon sequence and can appear to be a service or device failure.
CAUSE
When Windows NT was originally installed on the computer, it may have
contained only a single processor and later had a hardware upgrade to
multiple processors.
On Compaq computers, you can upgrade Windows NT to support multiple
processors by using the Compaq Software Support Diskette (SSD) and
Choosing the Multiprocessor support option. This installs the necessary
files to support multiprocessors.
Alternately, the Windows NT Resource Kit utility called Uptomp.exe
allows you to upgrade Windows NT to support multiprocessors.
The problem is that neither of these 2 utilities, Compaq SSD or the
Windows NT 3.5x Uptomp.exe utility, update the Setup.log file found
in the %SystemRoot%\Repair directory.
Note The "Windows NT 4.0 Resource Kit" does correctly update the Setup.log
file.
The Setup.log was created when Windows NT was first installed and contains
information about the files copied to your system during Windows NT setup.
Consequently, the file reflects the information for a single processor
computer. When service packs are installed, the Setup.log file is parsed
looking for the correct Hal.dll and Ntoskrnl.exe to replace. Because the
Setup.log shows single processor components, the service pack Update.exe
program replaces the multiprocessor files with single processor files (thus
taking you back to the single processor environment). Furthermore,
additional support files are different between single and multiprocessor
computers. RESOLUTION
By modifying the %SystemRoot%\Repair\Setup.log file, you can tell the
service pack Update.exe program to load the correct multiprocessor
components (thus taking you back to multiprocessor support and at the same
time ensuring that future service packs install correctly).
Steps to fix the Setup.log and restore your system to multiprocessors:
- Remove the read only and hidden attributes on the
%SystemRoot%\Repair\Setup.log file.
- Make a backup copy of the %SystemRoot%\Repair\Setup.log.
- Open the Setup.log using notepad.
- Search for and modify the following lines, being careful
to use the correct operating system version section and
proper HAL for your computer type:
HALSP.DLL = For Compaq Systempro, Systempro/XL, ProLiant 2000, 4000, and 4500 systems only.
HALMPS.DLL = Multiprocessor HAL for APIC support and for the Compaq ProLiant 1500 and 5000
Windows NT 3.5
Modify the entries under [Files.WinNt] section to the following:
\<%SystemRoot%>\System32\Ntoskrnl.exe = "NTKRNLMP.EXE","bc81d"
\<%SystemRoot%>\System32\Kernel32.dll = "KERNEL32.DLL","65c96"
\<%SystemRoot%>\System32\Winsrv.dll = "WINSRV.DLL","1ac2a1"
\<%SystemRoot%>\System32\Ntdll.dll = "NTDLL.DLL","47eca"
Then select one of the following HALs and modify the line.
\<%SystemRoot%>\System32\hal.dll = "HALSP.DLL","15d8d"
\<%SystemRoot%>\System32\hal.dll = "HALMPS.DLL","1b729" Note %SystemRoot% represents the directory name where Windows NT is
installed.
Windows NT 3.51
Modify the entries under [Files.WinNt] section to the following:
\<%SystemRoot%>\System32\Ntoskrnl.exe = "NTKRNLMP.EXE","cb271"
\<%SystemRoot%>\System32\Kernel32.dll = "KERNEL32.DLL","5d99a"
\<%SystemRoot%>\System32\Winsrv.dll = "WINSRV.DLL","155a67"
\<%SystemRoot%>\System32\Ntdll.dll = "NTDLL.DLL","5830f"
Then select one of the following HALs and modify the line.
\<%SystemRoot%>\System32\hal.dll = "HALSP.DLL","1905a"
\<%SystemRoot%>\System32\hal.dll = "HALMPS.DLL","18039" Note %SystemRoot% represents the directory name where Windows NT is
installed.
Windows NT 4.0
Modify the entries under [Files.WinNt] section to the following:
\<%SystemRoot%>\System32\Ntoskrnl.exe = "NTKRNLMP.EXE","e76ab"
\<%SystemRoot%>\System32\Kernel32.dll = "KERNEL32.DLL","5b7f8"
\<%SystemRoot%>\System32\Winsrv.dll = "WINSRV.DLL","37b4e"
\<%SystemRoot%>\System32\Ntdll.dll = "NTDLL.DLL","59c19"
\<%SystemRoot%>\System32\win32k.sys = "WIN32K.SYS","132603"
Then, select one of the following HALs and modify the line:
\<%SystemRoot%>\System32\hal.dll = "HALSP.DLL","0f337"
\<%SystemRoot%>\System32\hal.dll = "HALMPS.DLL","1a01c" Note %SystemRoot% represents the directory name where Windows NT is installed.
Windows NT 4.0 Terminal Server Edition
Modify the entries under [Files.WinNt] section to the following:
\<%SystemRoot%>\System32\Ntoskrnl.exe = "NTKRNLMP.EXE","fe754"
\<%SystemRoot%>\System32\Kernel32.dll = "KERNEL32.DLL","700ee"
\<%SystemRoot%>\System32\Winsrv.dll = "WINSRV.DLL","3e526"
\<%SystemRoot%>\System32\Ntdll.dll = "NTDLL.DLL","62b31"
\<%SystemRoot%>\System32\win32k.sys = "WIN32K.SYS","140e95"
Then select one of the following HALs and modify the line:
\<%SystemRoot%>\System32\hal.dll = "HALSP.DLL","15a34"
\<%SystemRoot%>\System32\hal.dll = "HALMPS.DLL","1a062" Note %SystemRoot% represents the directory name where Windows NT is installed.
- Save the modified Setup.log to the %SystemRoot%\Repair
directory.
- Reapply the service pack to take you back to MPS support.
Modification Type: | Minor | Last Reviewed: | 4/11/2005 |
---|
Keywords: | kbsetup KB168132 |
---|
|