This has bugged me for a while as I fixed it and then it reoccurred probably after Windows updated. The problem was that I was unable to connect Ubuntu 16.04 to my Windows 7 box. It wasn't the firewalls and none of the usual fixes seemed to work until I ran into this page. All I would get was and error saying 'Failed to retrieve share list from server: Connection timed out' which wasn't much help.
Everything was set up as normal and I could connect to other shares, just not the Windows 7 one.
I ran through the steps here and they didn't work and although there is a reference to 'Unable to mount location: Failed to retrieve share list from server' the linked Microsoft fix doesn't specify Windows 7.
smbclient -L //insert-ip-here -u% would give me a 'protocol negotiation failed: ERRDOS:ERRnomem' error so using that I managed to track down the referenced page with the fix. One minor change though. I didn't have to do the last two commands.
The 'Failed to retrieve share list from server' fix quoted from Froebe
The issue is the LanmanServer service runs out of memory. We need to boost that up:
On your Windows machine, fire up regedit (Start -> regedit) modify the following registry keys:
"HKLMSYSTEMCurrentControlSetControlSession ManagerMemory ManagementLargeSystemCache" from 0 to 1
"HKLMSYSTEMCurrentControlSetServicesLanmanServerParametersSize" from 1 to 3
The problem seems to manifest itself more frequently if you use your Windows box as a file server or a media server. If you can, restart the Windows box. If for some reason you can’t (e.g. your significant other is watching a video on the tv streaming from your Windows box), then you can do effectively the same by restarting the following services:
(Start -> cmd.exe) as administrator
net stop LanmanServer /y
net start LanmanServer
net start Browser
net start HomeGroupListener