The phenomenon of negative plastic flow and its prevention in elasto-plastic numerical analyses, such as finite element computations, are investigated in detail. Discussions are confined to materials with smooth but otherwise arbitrary initial and post yield surfaces which obey associated or non-associated flow rules, with specializations for materials obeying the von Mises yield condition and its associated flow rule, and to materials with cornered yield surfaces obeying the associated flow rule. Current ad hoc treatments of this phenomenon and their effects on the accuracy and reliability of computer codes are discussed. Explicit results for some commonly used stress integration algorithms are presented as to when and why negative plastic flow will occur, and how it can be avoided with proper modification to the existing stress calculation procedures. Meanwhile, it is pointed out that in the case negative flow happens to tangent stiffness based algorithms, numerical errors are also involved in other algorithms. Finally, a general and numerically efficient approach for stress calculation at corner yield points is proposed, which is consistent with the Koiter's flow rule. The subject of uniqueness of the Koiter's flow rule representation is addressed in detail.