Hola,
No es el ob_start(). El error es porque el valor que pasas a esas funciones (mysql_fetch_array() y mysql_free_result()) no es un valor valido. Y como es el valor devuelto por mysql_query(), sera que esta ha devuelto false. Y ha devuelto false porque MySQL ha encontrado un error al ejecutar la consulta. Y para ver el mensaje del error de MySQL haz:
Código PHP:
$resp = mysql_query("select * from usuarios order by id desc limit $mostrar") or die("Error. MySQL dice: ".mysql_error());
Saludos.