The state of Texas has sued Voice over IP provider Vonage for not explaining to customers that 911 does not work over its service. In fact, 911 does not work over any VoIP service reliably, and the problem is likely to begin slowing the acceptance of VoIP.
Traditional landline voice service gives 911 operators direct access to a telephone company database that ties a phone number to a specific street address. This is relatively foolproof because landlines, by definition, only go to one location. But VoIP phone numbers are completely portable. While traveling, I can make calls on my "home" VoIP phone number from my laptop, thousands of miles from the address of record my VoIP provider has for me. So it's not just an accounting or database issue.
VoIP breaks the current 911 system, which was designed for a different day and age. What is likely is that regulators (like the state of Texas) will try to "fix" the problem with awkward legal requirements that don't really solve the problem, and will likely retard the diffusion of the new technology.
Instead, we need a new 911 system. One approach would be to see if GPS (Global Positioning System) technology can be used. GPS chips are becoming relatively cheap, and it's easy to imagine a handheld phone that always knows where it is, using GPS.
This is not farfetched because marine radios have been able to do this for years. A cheap handhelp VHF marine radio can be purchased with a GPS interface that allows the radio to send a distress signal with the exact location of the boat. The technology works and it saves lives.