We study the impact of faulty processors on the communication cost of distributed algorithms in a message-passing model. The system is synchronous but prone to various kinds of processor failures: crashes, message omissions, (authenticated) Byzantine faults. One of the basic communication tasks, called fault-tolerant gossip, or gossip for short, is to exchange the initial values among all non-faulty processors. In this paper we address the question if there is a gossip algorithm which is both fault-tolerant, fast and communication-efficient? We answer this question in affirmative in the model allowing only crash failures, and in some sense negatively when the other kinds of failures may occur. More precisely, in an execution by n processors when f of them are faulty, each non-faulty processor contributes a constant to the message complexity, each crashed processor contributes ⊖(f ε) (ε > 0 could be an arbitrarily small constant independent from n, f but dependent on the algorithm), each omission (or authenticated Byzantine) processor contributes ⊖(t), and each-even potential-Byzantine failure results in additional ⊖(n) messages sent.