Cody Kessler passed for 261 yards and two touchdowns, and Su'a Cravens returned an interception 31 yards for another score in No. 18 Southern California's 35-10 victory over Oregon State on Saturday night.

Darreus Rogers caught a 48-yard Hail Mary touchdown pass at the halftime gun as the Trojans (3-1, 2-0 Pac-12) rebounded smartly from their first loss with solid defense and another stellar game from Kessler, who went 24 for 32 while leading a 461-yard offensive performance.

Justin Davis caught a 16-yard TD pass and rushed for a fourth-quarter score for the Trojans. Javorius Allen added 115 yards rushing and a touchdown.

Ryan Murphy returned a kickoff 97 yards for a TD for Oregon State (3-1, 0-1), which struggled in its first serious test of the season.

Sean Mannion went 15 of 32 for 123 yards with two interceptions for the Beavers, who haven't won at the Coliseum since 1960.

Despite 14 penalties for 124 yards, the Trojans moved the ball steadily when their defense wasn't thoroughly stifling Oregon State, which played 41 scoreless minutes and managed only 63 yards after taking a 10-7 lead early in the second quarter.

The Trojans had a bye after an embarrassing performance in a loss at Boston College knocked them out of the Top 10. The defense returned with a much-improved effort against Oregon State's versatile offense.

Oregon State showed little of its usual offensive pop after three straight victories over lower-tier opponents to open the season, and Mannion didn't look sharp in the California native's first appearance at the Coliseum.

Cravens put the Trojans ahead less than 10 minutes in when he stepped in front of Mannion's slow pass and returned it easily for his first career touchdown. But Murphy took the ensuing kickoff straight down the Beavers' sideline for a TD, making the fifth-longest kick return in school history on his first career return.

Davis capped a steady USC drive with his TD catch on a short wheel route midway through the second quarter, putting the Trojans ahead to stay. USC stopped the Beavers' next drive when Adoree Jackson tipped a pass to Leon McQuay III for an end-zone interception.

As the first half ended, Kessler ducked away from several tacklers and launched a pass to the goal line. Several Beavers defenders did little to stop Rogers, whose biggest competition for the ball was from a teammate.

After USC largely dominated a scoreless third quarter, Allen ran 17 yards straight up the middle for a score early in the fourth. Davis added a 21-yard TD run with 5:02 to play.

USC still hasn't allowed a touchdown pass this season, and Kessler still hasn't thrown an interception.

The Beavers have lost 23 straight games at the Coliseum.

Oregon State lost starting defensive tackle Jalen Grimble, the brother of former USC tight end Xavier Grimble, to a knee injury.