Wow, was that ever a bad practice.

Vikings coach Mike Zimmer mercifully ended today’s practice 40 minutes early when a shotgun snap from center sailed over the head of new fourth-string quarterback Brad Sorensen in a red-zone drill. The rest of the practice wasn’t much crisper than that as the top two quarterbacks, Teddy Bridgewater and Shaun Hill, dressed but didn’t throw a single pass for the second day in a row.

And, unfortunately, the Vikings can’t say nobody got hurt because Matt Kalil, their starting left tackle, left the field early because of an apparent leg injury. He didn’t return and was replaced by T.J. Clemmings.

Coach Mike Zimmer wasn’t scheduled to speak to the media after practice, and didn’t do so. About an hour later, he canceled Monday’s practice and moved it to Tuesday, which originally was scheduled to be an off day for the players.

But clearly he wasn’t happy with how flat things were with undrafted rookie Joel Stave throwing the majority of the team’s passes for the second day in a row. Sorensen, who was signed on Sunday, threw some passes, but obviously doesn’t know the offense yet. At one point, Stave rolled his ankle and looked like he might have to sit out before staying in.

When the shotgun snap flew by Sorensen, Zimmer had seen enough. He stopped practice, huddled the team together and, well, that was that.

“I’m not going to say he was mad,” receiver Jarius Wright said. “But I’m not going to say he was happy either. He basically just told us we have to come back and be better.”

Asked if practice felt as flat as it looked, Wright said, “I can say it wasn’t one of our best days. We have to come out and be better. If we want to be where we want to be at the end of the year, we have to be better each and every day.”

Saturday, Zimmer wouldn’t confirm an ESPN report that Bridgewater has a sore shoulder. Zimmer also said Saturday that Hill was getting a day off as a veteran. Hill ran off the field after practice and didn’t stop when asked for an interview.

In other news …

–Cornerback Xavier Rhodes (hamstring), safety Anthony Harris, defensive end Scott Crichton and running back Matt Asiata didn’t practice.

–Left guard Alex Boone returned to practice today after missing Sunday’s practice for personal reasons.

–Defensive tackle Sharrif Floyd did some work in team drills. He returned from his knee injury on Saturday.

–Cornerback Melvin White was back in pads today.