The new contract is expected to end talk of a switch for the 24-year-old to Tottenham.
Manager Ricky Sbragia said: “I’m absolutely delighted that Kenwyne has committed to the club for the long term.
“He’s young with a great future ahead of him and has already proven himself to be a key player for us.
“The fact that we’ve had interest from top clubs shows how much of an asset he is and it’s fantastic that he will be a Sunderland player for many years to come.”
Sunderland chairman Niall Quinn added: “We are building a team for the long term and Kenwyne is a big part of that.
“In signing this new deal he’s shown that he wants to be part of our future and believes in what Ricky and the club are doing.
“In the current economic climate, the figures bandied about for Kenwyne have been staggering, but we have shown our intent to build a bigger and better club for the future by retaining our best players.”