1

(Just documenting my experience for the benefit of the community / Google searchers experiencing the same issue.)

Problem:

In my house, I had a Windows XP computer that shared a printer and some shared folders with the rest of the computers on the network using a Windows workgroup (i.e. not on a Windows domain; no Windows Server present on the home network.)

Other client computers in the home ran Windows XP, Windows 7, and Mac OS X Snow Leopard. Each client computer on the home network had identical username and password credentials set up to facilitate network sharing.

That all worked great. Then, over the holidays, I repaved the Windows XP computer that hosts the printer and shared folders by installing a fresh copy of Windows 7 Professional (x64). That's where the trouble began.

I started noticing a few days later that intermittently, the Windows XP and Mac OS X clients on the network were unable to print to the shared printer, and unable to access the shared folders offered by the Windows 7 computer. However, the other Windows 7 client computer had no problem printing or accessing the shares, even when the XP and OS X machines couldn't.

Rebooting the client machines did not help. Whereas, rebooting the Windows 7 computer hosting the printer and shared folders would make everything work again. However, after some time passed, the failures would recur.

What was the problem? I'll answer below.

1 Answer 1

0

On the Windows 7 workgroup server hosting the printer and file shares, I started looking through the Windows event logs. In the System event log, I found some Error log entries that read as follows:

"The server was unable to allocate from the system nonpaged pool because the server reached the configured limit for nonpaged pool allocations."

Log Name: System Source: srv
Event ID: 2017
[...]

That struck me as odd, but it was something to go on. After some searching with Google, I was led to the following thread at HardForum.com: Vista : unable to allocate from nonpaged pool = No network shares.

The solution/workaround I ended up implementing was found in that thread, in the post by user Toytown dated 07-06-2008, 07:23 AM. Excerpt:

After changing the NIC and going through a bunch of reg settings, i finally found the solution. It appears that Vista uses SMB2 for networking and its obviously buggy in certain circumstances. Disabling it and forcing SMB1 (pre vista networking) fixes the problem and finally all my machines are able to connect to the Vista shares even after days of use. The Bug in SMB2 reports the EVENTID 2017 into your eventlogs, complaining that there is not enough nonpaged pool memory left, however this is not the case as taskmanager shows there is easily enough and also that no process's on the host machine are leaking any nonpaged pool memory at any point.

So the fix is, either

Download the reg file here and run it on your Vista system. Restart your computer and fixed.

Or

Open regedit goto HKEY_LOCAL_MACHINE ->SYSTEM ->CurrentControlSet ->Services ->LanmanServer -> Parameters. Then click createkey and create a DWORD with the name SMB2. The value should automatically be set as 0, which is correct to turn it off. Restart computer and fixed.

To remove the fix and reenabled SMB2 simply remove the DWORD from the place above in the registry.


Note: It appears the issue has been around for quite some time, and I avoided it previously only because I skipped upgrading to Vista on the computer sharing the printer and file shares. I'm surprised Microsoft hadn't fully addressed this issue for Windows 7 RTM.

Anyway, I hope that if you've found this page that this helps you solve your problem.

If anybody else has anything to add related to this issue, please feel free to add another answer.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .