That the green-card system in the US is quite messed up is pretty well known. Every year, about 140,000 green cards can be issued in the "employment-based" (EB) categories. The inefficiencies in the processing has meant that over the years, lots of these go unused (currently estimated at ~ 218,000). Obviously, this unused figure is not because of a lack of applicants.
Congress did not foresee this situation arising, and never provided for the unused visa numbers to roll over to the next year. As a result, the only way to "reclaim" those lost green card numbers is by new legislation. Even in the best case scenario, the USCIS seems to be able to use about 95% of the visa numbers. As a a result, this new legislation is almost imperative.
So finally, Representatives Zoe Lofgren (D-CA) and Jim Sensenbrenner (R-WI) introduced a bill (H.R. 5882) two weeks ago to “recapture” employment-based (EB) green cards that Congress authorized in the past but that went unused before the end of the fiscal year because of government processing delays. Being an election year, its unlikely that the visa numbers will get increased - this bill getting through seems to represent a best-case scenario for those waiting for years to get their GCs. Zoe Lofgren has been at the forefront of the greencard debate - no surprises, she represents most of San Jose and Santa Clara (where Indian, Chinese and Hispanics dominate the populace), just smart politics I suppose. No wonder she is serving her seventh term in the House.
Hopefully, the bill prevails and prevails soon ...