Hi and welcome to the forum:
Well home networking can be tricky--I've been doing it for 35 years. The most common 2 problems causing this sort of problem are:
1.) You added the Windows7 pc to an existing XP network without establishing the Homegroup in Win7 first. Best thing to do to fix this, is to "rip" out all of your networking references on all the XP PCs, disconnect all the Linux PCs when you do this, and remove and reinstall your Win7 PC Homegroup. Make sure your write down or print out the new Homegroup password. Then reconnect all the XP PCs to the Win7 PC on the network using a disk or USB drive with the Homegroup creation files on them 1 at a time. Once working all shares in both directions, then add the Linux PCs back 1 at a time into the network. If your Win7 or XP PCs stop working on 1 or more shares, that Linux PC has a problem you'll have to troubleshoot separately. Once fixed, repeate the fix on all connected Linux PCs.
2.) You're anti-virus, personal firewall, Internet Security firewall, anti-spyware, or adblocking software(s) are blocking your networking traffic from propagating along your home network (LAN), and must be temporarily disabled or reconfigured. This can often be accomplished by examining the options of each of these products you are using on each PC connected to your network. Specifically, you need to look at the Whitelist contained in each of these. AND remember that you cannot be running more than 1 primary anti-virus program at a time on each computer in the network. Example here would be to be running Norton Anti-Virus and McAfee anti-virus simultaneoulsy; whether one is outdated and the other is new and active or not. You can only have 1; otherwise you'll get TCP and UDP packets blocked spuriously by the one AV when it should be passing those packets unrestricted out to the network backbone. In short, you'll need to remove or disable each of these programs one at a time on each of the PCs that you have on the network to fix this kind of problem. If that fails, you'll be left with testing each of the XP PCs for failed hardware (RAM & hard drives) and corrupted Windows system files; this requires a great deal of troubleshooting on these old PCs 6-14 yrs. old computers, and quite probably multiple WinXP OS reinstalls.
Try starting with these 2, and if you get stuck, you can always ask us for more advice. There are lots of us skilled in networking and home networking here to help you.
If you hit the wall, and just can't figure it out, you can always pay a licensed network engineer (such as Best Buy Geek Squad A+/Net+/MCNE/MCSE) to come out to your home and sort things out for your. Be aware that it costs $125 for them just to walk through your door, and each day they are there will cost you the same, not including any failed hardware components that they have to fix (the above-mentioned failed RAM memory or hard drives).
Lastly, and I'm sure you're aware of this, but some people are not still; that XP is no longer supported by Microsoft, and you'll need to make sure that each of the XP machines is at SP3 level, as well as post-SP3 updates, which can often be quite troublesome to get on very old XP machines (built prior to 2006). It might be in your best interest to retire 1 or more of the oldest XP machines, if not upgrade to Vista or newer, in order to resolve these kinds of network problems.
Best of luck to you,
<<<BIGBEARJEDI>>>