Article title: Ultra-harmonious, 33 years of Unix bugs are eliminated. Linux is a technology channel of the IT lab in China. Includes basic categories such as desktop applications, Linux system management, kernel research, embedded systems, and open source.
Otto Moerbeek, an OpenBSD developer, recently found and fixed a 33-year-old overflow bug in Yacc. This old man developed a new malloc implementation, mainly used for memory allocation and is conducting a wide range of tests. He received a strange report that the other party runs the sparc64 processor and fails to compile a large C ++ project, but it is not clear whether it is a problem with the new malloc function. Moerbeek found that this problem only occurs on the sparc64 machine. It is related to the size of the stack. if the size exceeds 16 bits allowed by the new malloc, it will overflow. in the above example, the C ++ stack is 24 bits, so SEGV will happen. Moerbeek traces back to the 1975 UNIX version released in 6th.