The NFL is a business. If you can't perform up to par with your wages, then you should get cut.
Let's say you are manager of a sales company that has two salesmen who put up relatively the same profit margin. But one guy is making 3 times as much as the other, has been with the company for 4 years, and has shown little improvement in his numbers. Who would be the first person you would fire?
Unfortunately the NFL has contracts, so if the player does not want to negotiate a lower wage to reflect on input, the team is either forced to swallow their pride or get rid of him. The Cardinals saw enough mediocracy in Leinart where they were willing to put their stock in some rookies than pay out the *** on someone who clearly was not getting it done.
It would be another story if Leinart was making $630K with the Cardinals like he is with the Texans, but that wasn't the case. I don't know the yearly breakdown of his contract with the Cardinals, but it was roughly $8.5 million a year if he finished out the 6 years. In retrospect, here is the average breakdown of the top 10 QBs this year in relation to wages.
Philip Rivers $14 million
Kyle Orton $5.8 million
Drew Brees $10 million
Peyton Manning $15.8 million
Aaron Rodgers $10.8 million
Eli Manning $15.2 million
Donovan Mcnabb $12.75 million
Matt Ryan $11 million
Carson Palmer $19.8
Joe Flacco $2.38 million
I guarantee Leinart would not be in the top 20 QBs, let alone the top 10, so he should not be making more than any of these guys. I would much rather save the money, give the job to someone who will will put up similar stats, and invest the saved money in something else.