What I have found to be a weakness of Linux is the slowness/lack of development of support for hardware. Driver support for Linux has improved among companies, but you sometimes encounter a "Can't get there from here." situation with Linux. On the Linux fora there is a phenomenon among a number of long time Linux only users. They try to be helpful, but they have taken their approach to an academic level, where the technical possibility of something working outweighs the practical application. In short, a simple 97 step process of work-a-rounds and cheats will get your specific piece of hardware installed, but it will be functionally crippled.
Where the real payoff for Linux lies, is with hardware/software developers manufacturing and installing very specific end user systems. Things like information kiosks and the like. Less capital spent on license fees, more spent on development.