Oswalt (4-4) was charged with six runs on 11 hits, including a pair of home runs, before leaving the game in the seventh inning due to a strained right groin. Houston's ace is day-to-day.
Oswalt felt the injury in the sixth, most likely on a pitch to Marlon Byrd.
"[It was a] slider on somebody," Oswalt said. "I threw two more pitches to the next batter [Ramon Vazquez], and got out of it. I came back to the dugout, and they asked me how I felt. I told them that was it and they wanted me to go one more, and I couldn't get through it."
Oswalt will be evaluated again in the next couple of days.
"He should be fine; we've got our fingers crossed," Astros manager Cecil Cooper said. "He just said that he could go back out for the seventh. He was at 100 [or] 102 pitches, and we thought we could get more out of him."
Oswalt has dealt with groin injuries before and doesn't believe this one is as serious as some he's previously endured.
"We'll have to wait and see," Oswalt said. "It's not as bad as the one I had before, for sure. I'm hoping it's just scar tissue tore from the surgery."
Berkman went 2-for-3 with a walk and launched his Major League-leading 16th home run of the season. Berkman has hit safely in 16 straight games and is hitting .548 during that span. The Astros managed just seven hits on the night.
"We can't keep coming from behind; sooner or later, it catches up with you," Cooper said. "Tonight, I thought it did; we ran into a guy who's throwing the ball pretty well. We just had a couple of opportunities; other than that, we couldn't muster much. Good offensive teams, even if they're on sometimes, it's tough to come back."
Berkman's single in the sixth inning gave him 31 hits in his last 50 at-bats, making the Astros slugger just the second player since 1956 to record 31 hits in a 50 at-bat span. The only other player to accomplish the feat was all-time hits king Pete Rose, who did it back in 1979.
"Sounds like a pretty good run for old Pete," Berkman said. "It's great, but it's what, May ? Trust me, I'm thrilled to tears, but the only significance of that is it's a good run. We've got a long way to go."
Berkman's shot off Vicente Padilla (6-2) leading off the fourth cut the Rangers' lead to 4-2.
"He's going to make a few mistakes; every pitcher is in the course of a game," Berkman said. "You have to be ready to capitalize."
Unfortunately for the Astros, Padilla made precious few mistakes.
"He did a great job. His ball was moving a lot; [he] changed speeds," Berkman said. "Just from a survey of the guys that were coming to first base, he's been pitching pretty well for them. He's always been a guy who had great stuff; [now,] he's starting to put it together. Not that he hasn't been effective in the past, but he was really good tonight."
Hunter Pence, who extended his hitting streak to 15 consecutive games with a 1-for-4 night, agreed.
"To be honest, [Padilla] pitched me tougher than I've been pitched all year," Pence said. "He threw me all fastballs and located every one of them. I wasn't very comfortable facing him. He didn't leave much over the plate. He kept us off our rhythm. You get a runner on, [and] he kind of pauses. [He] just kept us off balance."
Byrd's two-run homer in the second, his first of the year, gave Texas a 4-1 lead.
Milton Bradley's two-run blast in the first on a 1-2 pitch from Oswalt gave the Rangers the lead after the Astros had gone ahead, 1-0, in the top of the first on Miguel Tejada's run-scoring single.
"I figured we'd get back in the game, especially with the pitcher on that side throwing a lot of pitches early," Oswalt said. "I figured if I could keep it at four, we'd have a chance to win."
But after coming from six runs down two nights in a row to tie, the Astros didn't have another comeback in them this night.
"That's the thing," Berkman said. "Your offense is fickle. You can score eight one night and get shut out the next. [We've] had a couple of bad games, and we need to come out and try to salvage the game tomorrow."