It is not like each person will be owning one btc each. At most, only a part of the population will have bitcoin in their wallet. And bitcoin can be divided into units, it the smallest so far, satoshi. 1 bitcoin is 100million satoshi. So we have 21M by 100M satoshi to be used by bitcoiners. I think that is more than enough.