"it is impossible to assign patches any precise semantics separately from the modules they modify" [Fiuczynski2005PCH]
"patch sets do not even operate on the concrete syntax of the programming language, they are often syntactically invalid fragments of code" [Fiuczynski2005PCH]
"As the size and scale of a kernel modification moves from intraprocedural to intramodule to intermodule, it becomes more and more difficult to apply and maintain the modification using the low-level line-by-line diffs that result from patch." [Fiuczynski2005PCH]
Abstract
1 Introduction
2 Motivating Observations
"patches that update existing kernel functionality shows"
- Intraprocedural changes
- Intermodule changes
"patches that introduce new kernel extensions"
- Intramodule changes
"[...] developers currently use simple code merging tools (e.g., diff and patch), which are limited to indicating conflicts based upon textual comparison. Experience with maintaining a variant of the Linux kernel [...] as well as anecdotal evidence from the Linux and OS research communities suggest that this approach is error prone and time consuming." [Fiuczynski2005PCH]
" .... " [Fiuczynski2005PCH]
"Theresult is that patch maintenance is extremely time consuming and error prone. " [Fiuczynski2005PCH]
"It requires nontrivial effort to maintain such a crosscutting patch,
even across minor kernel upgrades due to the variability of the kernel proper" [Fiuczynski2005PCH]
This motivation was before git. Git was specially developed by Linus Torvalds to make his patching life easier... do the problems still exist?
"To make matters worse, developers use simple code merging tools that directly manipulate source file lines instead of relying on a lexical, grammatical, or semantic level of abstraction. The result is that patch maintenance is extremely time consuming and error prone." [Fiuczynski2005PCH]
InĀ Proceedings of the 10th conference on Hot Topics in Operating Systems - Volume 10(HOTOS'05), Vol. 10. USENIX Association, Berkeley, CA, USA, 16-16. 2005
patch (1) considered harmful
[Fiuczynski2005PCH]
Marc E. Fiuczynski, Robert Grimm, Yvonne Coady, and David Walker.