Barcelona captain Lionel Messi says "things have to change" at the club as they lost their La Liga title on the night their 30-game unbeaten home run in the league came to an end.
Even a win would not have been enough for Barca, as Real Madrid beat Villarreal 2-1 to win the title.
Jose Arnaiz put Osasuna ahead before Messi levelled with a free-kick.
The visitors had Enric Gallego sent off for elbowing Clement Lenglet before Roberto Torres' close-range winner.
Messi, who is La Liga's top scorer on 23 goals with one game to go, said: "We didn't expect to finish in this way, but it sums up the year for us.
"We are a weak team who can be beaten with enough intensity and enthusiasm.
"We have lost a lot of points which we shouldn't have done. We have been very inconsistent.
"We need to be self-critical, starting with the players, but also across the entire club. We are Barcelona, and we are obliged to win every game."
Barca's only hope of a major trophy now is the Champions League. They host Napoli in the last 16 second leg on Saturday, 8 August, having drawn 1-1 in Italy.