Windows 7 cause “mount: Cannot allocate memory”

Had a friend who want to backup all his files (300GB+) from a Linux server to a laptop harddisk, we hit with a error message that cause Linux unable to mount the shared folder in laptop.

Problem:

[root@localhost ~]# mount -t cifs "//192.168.1.10/abc" -o username=admin,password=1234
ed /mnt/laptop/
mount: Cannot allocate memory

The server has at least 3GB cached RAM available in the memory pool. So that’s not possible with memory issues.

Take a look at dmesg and you should see this error

Oct  3 00:33:18 localhost kernel:  CIFS VFS: Send error in SessSetup = -12
Oct  3 00:33:18 localhost kernel:  CIFS VFS: cifs_mount failed w/return code = -12

If you have the above error, most likely it is due to your Windows 7 machine. Let’s move to the Windows 7 and troubleshoot.

Look at the Windows System Event Log, you should see this error event.

Source: srv
Event ID: 2017
Level: Error
The server was unable to allocate from the system nonpaged pool because the server reached the configured limit for nonpaged pool allocations.

You would need to tell Windows 7 to act as a file server.

You need to edit the following registry key.
PLEASE BACKUP YOUR REGISTRY AND I BEAR NO RESPONSIBILITY FOR ANY DAMAGE.

Set the following registry key to ’1?:

HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management\LargeSystemCache

Set the following registry key to ’3?:

HKLM\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\Size

Let’s restart the necessary services for the above key to take effect.

net stop server
net start server

Things should look fine now.

Hope this helps someone out there.

Enjoy!