In Germany, the Registrar has a list of 500 (German) boy's names and a list of 500 (German) girls names. There are no ethnic names, nor any foreign names. You declare the sex of the child first and then choose up to 3 names from the appropriate list.
When there were a million Turkish Gastarbiter (Guest Workers) in Germany, thousands of their sons were called Michael, because there was no Mohamed on the list.
Johannes, Johannes, Johannes Schmidt, is perfectly acceptable. Johannes for the father, Johannes for the paternal grandfather and Johannes for the maternal grandfather.
Regards
Chas