The House vote passed 417-1. Rep. George Miller, D-Calif., voted against the measure.

The measure will cost the government $6.4 billion over 10 years. It will now be sent to President Obama to be signed into law.

The passage of the legislation brings an end to a two-month battle that has left many doctors uncertain about their ability to continue accepting Medicare patients. All told, 43 million people, mostly seniors, receive Medicare benefits.

The root of the dispute is a 1997 law that requires that doctors' Medicare rates be adjusted each year based on a formula tied to the health of the economy. The law says rates should be cut every year to keep Medicare in the black.

Congress has now blocked such cuts 10 times in the last eight years, including four times since January.

The Medicare reimbursements were slashed starting June 1. The Centers for Medicare & Medicaid Services temporarily delayed processing claims in hopes that Congress would reverse the cuts.

The Medicare agency was hopeful that its freeze would buy it enough time so it wouldn't have to send doctors reduced checks.

But the Medicare agency, saying it couldn't wait any longer for congressional action, had started processing all claims from June 1 through now -- and those included the 21% rate cuts.

Lawmakers had been stuck in a stalemate driven by concerns about federal spending.

Obama said in a statement that he was "pleased" the measure passed because a cut would have forced some doctors to stop accepting Medicare.

"We should also agree, as I've said in the past, that kicking these cuts down the road just isn't an adequate solution to the problem," Obama added, calling the system of temporary fixes "untenable."

The American Medical Association has railed against the Medicare reimbursement formula, arguing that without a total overhaul, lingering uncertainty will remain for both physicians and consumers. Lawmakers counter that retooling the current setup would cost $210 billion over 10 years.

"The six-month Medicare patch Congress passed today is a very temporary reprieve for seniors and baby boomers who rely on the promise of Medicare," the AMA said in a statement immediately following the House vote. "Delaying the problem is not a solution."