You will see Linus rant about what he considers bad code practices, and will castigate people rather brutally for this [1], but he always provides a cogent, often informative explanation. A more mild-mannered lead would not make a scene, and I don't see the point of his expletive-laden gruffness -- it would have been just as effective without the acidity. I guess if you want the Linus who defends code quality from big contributors, you will also have to accept the Linus who verbally destroys individuals.
This justification (i.e., that Linux has to be this way, because it's in a unique position) sounds strange to me. If we're claiming that the relevant sample size is N=1, isn't that equivalent to saying that it's impossible to study whether this management style is necessary or not?
In fact, this argument seems almost backwards to me. Linux can be run this way because it is successful. Nvidia isn't trying to mess up NetBSD's architecture, precisely because NetBSD is not as popular with users.
There's definitely sometimes strains showing. Corporations have often interest in getting specific features in, but don't care that much about maintaining the codebase and/or maintainability.
Definitely causes some strife. I think we most of the time keep it civil enough.
All of the other software I've liked in recent years (like Redis or SQLite or Postgres) has maintainers who seem rather easy-going.