Are the songs that you are trying to play grayed out in your playlists?
I had this problem after upgrading to iOS 5, and I found that deleting all the songs from my device and re-syncing them fixed the problem.
To do this:
1. Attach your iOS device (either using the cable or to the same wi-fi network if using iTunes Wi-Fi Sync).
2. Open iTunes, and click on your iOS device.
3. Click on the Music tab.
4. Uncheck the "Sync Music" checkbox at the top.
5. When asked, click "Don't Sync Music".
6. Sync the iOS device. Your songs will be removed from the device.
7. Check the "Sync Music" checkbox at the top once again.
8. Sync the iOS device again, and your songs will be re-added.
I don't know why the upgrade made some songs unreadable, but the resync fixed the problem for me (I had to do this for each of my iOS devices after upgrading them all to iOS 5). Fortunately, I only had 1,000 songs, so the resync didn't take forever.
Hope this helps!