Thanks so much for your kind words to Conservancy, martingxx and davexunit. Here's the Conservancy Supporter link for those who can afford to help:
https://sfconservancy.org/supporter#annual
What are the issues here? Why doesn't VMware just publish complete sources? Have they segregated their proprietary "stuff" (whatever that is/does) into separate kernel modules, and if so, would Hellwig's suit force them to publish it? IIRC, Linux is only used for the service console, running under the hypervisor.
Updated to add: I'm reading through the FAQ now, but I still don't understand why VMware is taking the stance they are.
>Have the segregated their proprietary "stuff" (whatever that is/does) into separate kernel modules, and if so, would Hellwig's suit force them to publish it?
This is the crux of the issue that is being disputed. There is no "segregation" in Linux. A kernel module is a derived work of the kernel, and thus users are entitled to receive the source code for the entire work under the GPL version 2. VMWare cannot add in proprietary features.
It's not entirely clear with the GPLv2 that that's the case. The FSF claims that because modules are loading into the address space of the kernel that makes them an integrated part of a single program and not mere aggregation, and are therefore covered by the GPLv2's restrictions as a derivative work.
It should be noted, however, that this is merely the FSF's opinion, and this has never been definitively legally established.
The GPLv3 was designed to, inter alia, eliminate such ambiguities, but added so much complexity it never really caught on outside the GNU project.
>It's not entirely clear with the GPLv2 that that's the case.
I hear this argument a lot. It is certainly intended to be the case as it's the whole point of the GPL. VMWare is, at the very least, in clear violation of the spirit of the GPL. If it's not the case, as ruled by German courts, then the GPLv2 is useless and free software will be in deep trouble. In the US the courts have found that GPLv2 is pretty clear on this (and judges don't like those that try to find loopholes) with successful compliance cases like the Linksys WRT54G router firmware.
>this is merely the FSF's opinion
It's a pretty important opinion since they wrote it and know what the intent of the legalese was.
Something seems specious where proof of authorship is required for standing in a case. The injured party may not be the copyright holder as much as it is the entire community or even other copyright holders.
Not authorship per se, but copyrights to source code was pretty much the entire linchpin of SCO v. IBM.[1]
I think I remember SCO trying your argument at some point (as they were wont to do), and if so it obviously didn't work. The law generally doesn't support being offended on behalf of someone else. What aspect do you think is specious?
This interpretation could imply that any software running on a GPL OS that lacks memory protection would also be forced to be GPL. The GPL has exceptions for GPL programs using proprietary OS components, but does it have the reverse?
It's easy enough to claim that a kernel module is more analogous to a program running on an OS than to a library linked into a program.
The relevant part of the GPL applies only when a derivative work is created. The determination of what constitutes a derivative work is the domain of copyright law. If a piece of software is not legally a copy of or a derivative work of a GPL-covered work, the GPL simply doesn't apply.
> it never really caught on outside the GNU project
Actually, I think GPLv3 did something even stranger, at least something I didn't expect. I've now seen numerous entities use the GPLv3 as a mechanism to deny Companies access to that software unless they purchase a copy that is under a proprietary license. This is because some company legal departments see the GPLv3 as inherently dangerous to use. So the "Open Source" entity uses the GPLv3 to get in the door, and then offers a proprietary license that the code is sold under as an alternative to the GPLv3 for corporate use.
I'm still torn on if I like this model of dual-licensing or not. It definitely gives Open Source companies an ability to earn money from Corporations that want to keep their code closed.
How is that a GPLv3 issue? You think the companies would prefer v2?
But anyways, how does that deny companies access any more than simply using a proprietary license in the first place? You're already denied access to 99.9% of code written because it isn't publicly licensed at all.
Its internal legal departments of large companies (and some medium sized ones). They tend to be most highly concerned with the patent provisions in GPLv3, and yes, GPLv2 is much more palatable, though I've often seen requirements that the code is not contributed to.
The denial is not from the GPL it's from the corporate legal team. This is a big reason why the Apache 2.0 and MIT licenses are much more popular among tech companies with private codebases (in addition to the Open Source code that they release).
The ambiguity cannot be resolved in a license, because it exists in copyright law, not the license. If the kernel modules are not derivative works as defined in copyright law, then no license is needed to create or distribute them, and any restrictions in the license are of limited effect.
The term "derived work" is not defined in GPLv2, but it is widely believed that they meant it to mean the same thing as "derivative work", a term which is defined by copyright law.
I'm going to make that assumption in the following. Note that if a work is not a derived work of the kernel, then it doesn't matter what GPLv2 says about it because you would not need permission of the kernel copyright holders to distribute the work. We only reach the question of what is a GPLv2 "derived work" once we determine that a work is a derivative work.
Modules do not appear to inherently be derivative works of the kernel. Looking at the source code to various simple modules, I don't see anything in the minimal necessary code that is copied from the kernel other than the names of kernel header files and the names of some functions. It would be hard to argue that file names and function names are copyrightable, so I don't see any copyrightable kernel elements necessarily copied into simple modules.
So, if I were to write a module and release it in source form only, it sure looks like I could do this in a way that would make it not a derivative work of the kernel, and so I would have no obligation to license it under GPLv2.
If I were to do that, other people might have trouble using the module, for to use it they would have to compile it and combine it with a kernel. If that violates GPLv2, then they would be the ones liable for this, not me the module author.
Could I be held responsible for their violation? There are a couple of ways in the US (not sure about other countries) whereby one can be held accountable for the copyright violation of another. The first is if that other is acting as an agent under one's control. That would not be applicable here.
The second, contributory infringement, is when one person does something to knowingly enable someone else's infringement. For there to be contributory infringement, there are a couple of important requirements. First, there must be a direct infringement for the contributory infringer to contribute to. Second, my contribution has to be mostly only useful for infringing.
I think contributory infringement is unlikely. The person who compiles and loads my module would have a very strong fair use defense against claims that they are infringing GPLv2 by combining my module and a kernel for their own use. (Also, GPLv2 kind of implies that you can do whatever you want with GPLv2 code on your own system in private, only having to obey GPL if you are going to distribute).
It gets more interesting if I compile the module and release the binary. Macros in the source code may be expanded by the compilation process into code copied from kernel header files, or from the compiler. That could make the binary module a derivative work even though the module source code is not. This would depend on just what the macros expand to.
It would be an interesting technical and legal project, although it would probably tick off a lot of people, to approach Linux modules that same way people approach third-party kernel modules for proprietary operating systems when the copyright holder doesn't approve: clean room reverse engineering.
If the big proprietary operating system vendors, with their big legal teams and budgets and financial interest in keeping control over who runs what on their platforms, were unable to keep third parties from producing unauthorized kernel modules, I don't see why anyone would expect that Linux could do so.
> So, if I were to write a module and release it in source form only, it sure looks like I could do this in a way that would make it not a derivative work of the kernel
The problem of viewing modules as separate work from the kernel us that the module is non-functioning without the kernel.
Lets say I took a painting (Mona Lisa) and cut it into two parts. Is that two works, or two parts of a single work? what legal test could you use? what would a non-technical group of random citizen think?
If the module had a common interface with other kernels like bsd, osx and windows, then it would be much clearer that the module is a separate work from the linux kernel. ZFS, not including the kernel compatibility code, would be such example. A module designed only for linux however is a harder argument.
I support GPL enforcement in general, but I am sort of conflicted about who's in the right in this particular case (which is why I'm definitely supportive of a court hearing the actual arguments!).
VMware has segregated their proprietary "stuff", namely the hypervisor monitor, from the variant of the Linux kernel that runs a bunch of hardware drivers. This segregation doesn't involve a separate address space, and does not (I think) use the official Linux userspace ABI that is documented as one border of where the GPL ends. So, on the surface, the default assumption should be that it violates the GPL.
But it seems like it would be conceptually straightforward to use something like Xen's driver domains (http://wiki.xen.org/wiki/Driver_Domain) to run Linux in a separate virtual address space and pass through all the hardware to it. There might be technical complexity, but it's doable; VMware already has a product (Workstation) which takes a normal, running Linux machine, loads some GPL'd kernel modules written by VMware, and inserts the VMware hypervisor above the current kernel. ESXi could, in theory, do the same thing.
If the result of the lawsuit were to force ESXi to make that architectural change, would that really be a win for free software? And if that architectural change is doable, and results in no benefit to Hellwig (maybe just some annoyance on the part of VMware's developers), what legally-actionable damage is being done by Hellwig's code being used the way it currently is?
The issue here is the vmkernel, which is VMware's proprietary OS that runs "worlds" which are similar to processes and run the virtual machine monitors that run the VMs. It has its own network stack, derived from FreeBSD's, its own scheduler, and its own drivers. The drivers are the big issue here, since many of them are taken from the Linux kernel.
VMware publishes source of the modified drivers and the source for the adapter layer that translates Linux kernel functions to vmkernel functions, but not the source of the vmkernel. Their historical claim was that the vmkernel was a binary-only kernel module loaded into the service console's Linux kernel. I always found this argument a bit sketchy.
With ESXi, the "user-world" support in the vmkernel was used to move all the processes running in the service console to run directly by the vmkernel, avoiding the need for the service console, and the service console's Linux kernel. Obviously this invalidates their old "vmkernel is binary-only kernel module" argument, and as far as I know, no new argument was made.
This ruling has been made by the 'Landgericht Hamburg'. This court is notorious for its rulings against freedom of speech [0]. This has nothing to do with this particular case, and the usual criticism is directed against its particular one-sided view on libel law suits (usually against the accused). Nevertheless, this ruling kind of reflects the courts attitudes [1]...
"Nonetheless, these questions (on which the legal interest of the parties and their counsel presumably focus) can and must remain unanswered. This is because the very first requirement for conducting an examination, namely that code possibly protected for the Plaintiff as a holder of adapter’s copyright has been used in the Defendant’s product, cannot be established. This is still true even after taking into account the Plaintiff’s subsequently admitted procedural document dated 29.04.2016, in which he (after the deadline had been extended) had a further opportunity to enter a pleading on the reservations in this respect which the court had already expressed at the hearing."
So it sounds like the judge communicated that he was concerned about the evidentiary standards and gave Hellwig a chance to respond but still wasn't satisfied.
Main takeaway: Hellwig did these things to try and establish authorship:
a) promise that he is author -- court says "such a simple claim is not enough"
b) point towards the git repository where everybody can see his contributions -- court says "you have to prove that you're author, not just give instructions how other people could prove it"
c) say that kernel version x.y.z is "closest" to VMware software -- court says "don't just throw a version string at us, show with concrete examples which code passages have been lifted"
And some more things along these lines.
I'm really confused how Hellwig's lawyer even tried that. Even to a layperson it's obvious that "I won't prove my authorship, but if the court wishes to do itself, it will be easy" won't fly.
He also gave them blame files as pdfs. But then the court complains about them being unconnected to the VMWare software.
My takeaway is that this needs a magnitude more effort. I guess one has to manually go through the history and filter out all non-copyright changes (such as white space changes) and then come up with a measure of authorship.
The court also needs significantly more hand-holding. I don't know if it is normal that they need to be spoon-fed everything.
It's not about spoon-feeding, it's about civil procedure.
Unlike criminal procedure, where the court has an obligation and will discover evidence and other facts pertaining to the alleged crime sua sponte, in civil cases the court MUST NOT discover evidence by itself.
For example, an acquaintance of mine who was a judge at the time, told me about one of the cases he presided on, where the statute of limitations on the claim had long run out. But the defendant's [edit: correction] lawyer hadn't noticed it.
He went so far as to inquire several times when exactly the action had been (including nudges like "that was 2001, we have 2016 now, so it's been about fifteen years"), and even that was very much borderline.
The lawyer didn't realize that he only had to mutter the words "statute of limitations" and the case would have been thrown out seconds later, and so the plaintiff won.
The civil procedure example you're giving here is unrelated to rules of evidence (which are a proper subset of the rules of civil procedure). Also, note that the German courts aren't common-law based, and don't follow the rules of civil procedure of the nature you're talking about.
Of course, it was just an example to show you Americans that things work differently here.
I don't know how on earth you could misinterpret my comment as having anything to do with common law. I was describing the difference in German procedural law between the court as an active fact-finding organ in criminal cases and a passive organ in civil cases, deciding upon facts offered by the parties (and only those).
You're conflating a lot of different issues. Anyway, the example you started with would likely work similarly in the USA. You'd have to provide a lot more detail to actually show the the difference that it seems you're trying to show.
There are strong rules of evidences in common law systems as well, and the Court expects the parties to introduce evidence; I don't know of any Court that goes seeking evidence that wasn't provided.
In the USA, we talk of jury's as "fact fiinders", but their job is to only consider the evidence before them (possibly conflicting, as it comes adversarially from both sides), and find what's true. But no one in this process other than the parties in civil litigation bring evidence forward.
So, the specific distinction you're trying to make isn't really a distinction between the two systems. I agree with you that there are huge differences in various ways.
My guess at what you're trying to point out is that there is no discovery process in Germany and elsewhere, which is certainly true and is relevant to this discussion, and makes the evidentiary systems very different in practice.
Interestingly, Richard Fontana just told me today a piece of history I didn't know: the USA didn't have discovery in civil cases until the early 20th century, apparently.
I find it amazing that the law prohibits a judge from saying, "The statute of limitations period means that this cannot be valid," and throw the case out, but rather requires one of the lawyers to do so.
I've just looked up in a legal commentary, and it isn't as clear-cut as my acquaintance told it to me.
Baumbach/Lauterbach/Hartmann say that the judge may broach the issue if the defense has expressed doubts about the time-line of actions, but that it must not reach the level of advice.
Other commentaries say that the judge must not broach the issue.
And there is even a cool minority opinion in NJW (Schneider), saying that the declining quality of jurists' training may lead to the judge having to protect the client from his own lawyer. ;-)
It makes some sense as judge as arbiter and interpreter of law, no? If a judge were to say "You should argue this" then the expectation that he or she would be predisposed to finding that a valid claim would be pretty apparent.
I can see examples where this would lead to slippery slopes in both the defendant's and plaintiff's favors.
It's always difficult to intuit what a Court needs ahead of time to understand these complex topics, particularly in a legal system without a discovery process (such as Germany). I prepared the following in that effort:
https://sfconservancy.org/copyleft-compliance/vmware-code-si...
This page https://sfconservancy.org/copyleft-compliance/vmware-code-si... attempts to back up Hellwig's claims using analysis from CCFinderX. However, it seems to make an error in establishing baselines when it states that, "Next, we compared the source code of the Linux Kernel 4.5.2 to the LLVM+Clang system, version 3.8.0. These two projects are each a large program written in the C programming language, but they are not known to actively share code."
LLVM+Clang are written in modern C++, not C. It's unclear to me if a mechanical translation from modern C++ to C will rank as similar, despite it clearly being copying. I suspect it would, but I think the cross-language comparison is a weakness in this demonstration. Combined with the reported failure to meet evidentiary standards, it suggests some real room for improvement in pursuing these cases.
My main takeaway is that the GPL is very hard to enforce (i.e. lots of money and effort) if you do not have a copyright assignment strategy such as the FSF.
Yeah. The annoyance of having to give copyright assignment to the FSF to have patches accepted to Emacs probably helps a lot that nobody has tried recently to violate its copyleft.
VMWare can go fuck themselves. Infrastructure is meant to be open, trustworthy AND scalable. Current infrastructure software models don't directly benefit everyone using the software. The models benefit the company, however, but run counter to improving trust with consumers.
42 comments
[ 3.6 ms ] story [ 100 ms ] thread(fwiw, I have no connection to sfconservancy - I just think they are great)
As I said in my LCA 2016 talk, litigation is expensive but it's absolutely an essential component now of standing up for the GPL: https://sfconservancy.org/blog/2016/aug/04/lca-2016/
Updated to add: I'm reading through the FAQ now, but I still don't understand why VMware is taking the stance they are.
This is the crux of the issue that is being disputed. There is no "segregation" in Linux. A kernel module is a derived work of the kernel, and thus users are entitled to receive the source code for the entire work under the GPL version 2. VMWare cannot add in proprietary features.
It should be noted, however, that this is merely the FSF's opinion, and this has never been definitively legally established.
The GPLv3 was designed to, inter alia, eliminate such ambiguities, but added so much complexity it never really caught on outside the GNU project.
I hear this argument a lot. It is certainly intended to be the case as it's the whole point of the GPL. VMWare is, at the very least, in clear violation of the spirit of the GPL. If it's not the case, as ruled by German courts, then the GPLv2 is useless and free software will be in deep trouble. In the US the courts have found that GPLv2 is pretty clear on this (and judges don't like those that try to find loopholes) with successful compliance cases like the Linksys WRT54G router firmware.
>this is merely the FSF's opinion
It's a pretty important opinion since they wrote it and know what the intent of the legalese was.
I think I remember SCO trying your argument at some point (as they were wont to do), and if so it obviously didn't work. The law generally doesn't support being offended on behalf of someone else. What aspect do you think is specious?
1. https://www.techdirt.com/articles/20070810/184153.shtml
If you have been injured in some other way, you are welcome to try to sue for that instead.
The intent of a license is defined by the person offering the license, not the person writing the license that they choose to offer.
It's easy enough to claim that a kernel module is more analogous to a program running on an OS than to a library linked into a program.
Actually, I think GPLv3 did something even stranger, at least something I didn't expect. I've now seen numerous entities use the GPLv3 as a mechanism to deny Companies access to that software unless they purchase a copy that is under a proprietary license. This is because some company legal departments see the GPLv3 as inherently dangerous to use. So the "Open Source" entity uses the GPLv3 to get in the door, and then offers a proprietary license that the code is sold under as an alternative to the GPLv3 for corporate use.
I'm still torn on if I like this model of dual-licensing or not. It definitely gives Open Source companies an ability to earn money from Corporations that want to keep their code closed.
But anyways, how does that deny companies access any more than simply using a proprietary license in the first place? You're already denied access to 99.9% of code written because it isn't publicly licensed at all.
The denial is not from the GPL it's from the corporate legal team. This is a big reason why the Apache 2.0 and MIT licenses are much more popular among tech companies with private codebases (in addition to the Open Source code that they release).
I'm going to make that assumption in the following. Note that if a work is not a derived work of the kernel, then it doesn't matter what GPLv2 says about it because you would not need permission of the kernel copyright holders to distribute the work. We only reach the question of what is a GPLv2 "derived work" once we determine that a work is a derivative work.
Modules do not appear to inherently be derivative works of the kernel. Looking at the source code to various simple modules, I don't see anything in the minimal necessary code that is copied from the kernel other than the names of kernel header files and the names of some functions. It would be hard to argue that file names and function names are copyrightable, so I don't see any copyrightable kernel elements necessarily copied into simple modules.
So, if I were to write a module and release it in source form only, it sure looks like I could do this in a way that would make it not a derivative work of the kernel, and so I would have no obligation to license it under GPLv2.
If I were to do that, other people might have trouble using the module, for to use it they would have to compile it and combine it with a kernel. If that violates GPLv2, then they would be the ones liable for this, not me the module author.
Could I be held responsible for their violation? There are a couple of ways in the US (not sure about other countries) whereby one can be held accountable for the copyright violation of another. The first is if that other is acting as an agent under one's control. That would not be applicable here.
The second, contributory infringement, is when one person does something to knowingly enable someone else's infringement. For there to be contributory infringement, there are a couple of important requirements. First, there must be a direct infringement for the contributory infringer to contribute to. Second, my contribution has to be mostly only useful for infringing.
I think contributory infringement is unlikely. The person who compiles and loads my module would have a very strong fair use defense against claims that they are infringing GPLv2 by combining my module and a kernel for their own use. (Also, GPLv2 kind of implies that you can do whatever you want with GPLv2 code on your own system in private, only having to obey GPL if you are going to distribute).
It gets more interesting if I compile the module and release the binary. Macros in the source code may be expanded by the compilation process into code copied from kernel header files, or from the compiler. That could make the binary module a derivative work even though the module source code is not. This would depend on just what the macros expand to.
It would be an interesting technical and legal project, although it would probably tick off a lot of people, to approach Linux modules that same way people approach third-party kernel modules for proprietary operating systems when the copyright holder doesn't approve: clean room reverse engineering.
If the big proprietary operating system vendors, with their big legal teams and budgets and financial interest in keeping control over who runs what on their platforms, were unable to keep third parties from producing unauthorized kernel modules, I don't see why anyone would expect that Linux could do so.
The problem of viewing modules as separate work from the kernel us that the module is non-functioning without the kernel.
Lets say I took a painting (Mona Lisa) and cut it into two parts. Is that two works, or two parts of a single work? what legal test could you use? what would a non-technical group of random citizen think?
If the module had a common interface with other kernels like bsd, osx and windows, then it would be much clearer that the module is a separate work from the linux kernel. ZFS, not including the kernel compatibility code, would be such example. A module designed only for linux however is a harder argument.
VMware has segregated their proprietary "stuff", namely the hypervisor monitor, from the variant of the Linux kernel that runs a bunch of hardware drivers. This segregation doesn't involve a separate address space, and does not (I think) use the official Linux userspace ABI that is documented as one border of where the GPL ends. So, on the surface, the default assumption should be that it violates the GPL.
But it seems like it would be conceptually straightforward to use something like Xen's driver domains (http://wiki.xen.org/wiki/Driver_Domain) to run Linux in a separate virtual address space and pass through all the hardware to it. There might be technical complexity, but it's doable; VMware already has a product (Workstation) which takes a normal, running Linux machine, loads some GPL'd kernel modules written by VMware, and inserts the VMware hypervisor above the current kernel. ESXi could, in theory, do the same thing.
If the result of the lawsuit were to force ESXi to make that architectural change, would that really be a win for free software? And if that architectural change is doable, and results in no benefit to Hellwig (maybe just some annoyance on the part of VMware's developers), what legally-actionable damage is being done by Hellwig's code being used the way it currently is?
VMware publishes source of the modified drivers and the source for the adapter layer that translates Linux kernel functions to vmkernel functions, but not the source of the vmkernel. Their historical claim was that the vmkernel was a binary-only kernel module loaded into the service console's Linux kernel. I always found this argument a bit sketchy.
With ESXi, the "user-world" support in the vmkernel was used to move all the processes running in the service console to run directly by the vmkernel, avoiding the need for the service console, and the service console's Linux kernel. Obviously this invalidates their old "vmkernel is binary-only kernel module" argument, and as far as I know, no new argument was made.
[0]: https://www.lawblog.de/index.php/archives/2016/05/18/das-ham...
[1]: To be fair, the critizized court-branch is the 'Pressekammer' (office for media-related court rulings). Wich is not involved in this case
"Nonetheless, these questions (on which the legal interest of the parties and their counsel presumably focus) can and must remain unanswered. This is because the very first requirement for conducting an examination, namely that code possibly protected for the Plaintiff as a holder of adapter’s copyright has been used in the Defendant’s product, cannot be established. This is still true even after taking into account the Plaintiff’s subsequently admitted procedural document dated 29.04.2016, in which he (after the deadline had been extended) had a further opportunity to enter a pleading on the reservations in this respect which the court had already expressed at the hearing."
So it sounds like the judge communicated that he was concerned about the evidentiary standards and gave Hellwig a chance to respond but still wasn't satisfied.
a) promise that he is author -- court says "such a simple claim is not enough"
b) point towards the git repository where everybody can see his contributions -- court says "you have to prove that you're author, not just give instructions how other people could prove it"
c) say that kernel version x.y.z is "closest" to VMware software -- court says "don't just throw a version string at us, show with concrete examples which code passages have been lifted"
And some more things along these lines.
I'm really confused how Hellwig's lawyer even tried that. Even to a layperson it's obvious that "I won't prove my authorship, but if the court wishes to do itself, it will be easy" won't fly.
My takeaway is that this needs a magnitude more effort. I guess one has to manually go through the history and filter out all non-copyright changes (such as white space changes) and then come up with a measure of authorship. The court also needs significantly more hand-holding. I don't know if it is normal that they need to be spoon-fed everything.
Unlike criminal procedure, where the court has an obligation and will discover evidence and other facts pertaining to the alleged crime sua sponte, in civil cases the court MUST NOT discover evidence by itself.
For example, an acquaintance of mine who was a judge at the time, told me about one of the cases he presided on, where the statute of limitations on the claim had long run out. But the defendant's [edit: correction] lawyer hadn't noticed it.
He went so far as to inquire several times when exactly the action had been (including nudges like "that was 2001, we have 2016 now, so it's been about fifteen years"), and even that was very much borderline.
The lawyer didn't realize that he only had to mutter the words "statute of limitations" and the case would have been thrown out seconds later, and so the plaintiff won.
I don't know how on earth you could misinterpret my comment as having anything to do with common law. I was describing the difference in German procedural law between the court as an active fact-finding organ in criminal cases and a passive organ in civil cases, deciding upon facts offered by the parties (and only those).
I think you're mixing something up.
There are strong rules of evidences in common law systems as well, and the Court expects the parties to introduce evidence; I don't know of any Court that goes seeking evidence that wasn't provided.
In the USA, we talk of jury's as "fact fiinders", but their job is to only consider the evidence before them (possibly conflicting, as it comes adversarially from both sides), and find what's true. But no one in this process other than the parties in civil litigation bring evidence forward.
So, the specific distinction you're trying to make isn't really a distinction between the two systems. I agree with you that there are huge differences in various ways.
My guess at what you're trying to point out is that there is no discovery process in Germany and elsewhere, which is certainly true and is relevant to this discussion, and makes the evidentiary systems very different in practice.
Interestingly, Richard Fontana just told me today a piece of history I didn't know: the USA didn't have discovery in civil cases until the early 20th century, apparently.
I've just looked up in a legal commentary, and it isn't as clear-cut as my acquaintance told it to me.
Baumbach/Lauterbach/Hartmann say that the judge may broach the issue if the defense has expressed doubts about the time-line of actions, but that it must not reach the level of advice.
Other commentaries say that the judge must not broach the issue.
And there is even a cool minority opinion in NJW (Schneider), saying that the declining quality of jurists' training may lead to the judge having to protect the client from his own lawyer. ;-)
I can see examples where this would lead to slippery slopes in both the defendant's and plaintiff's favors.
and I expect to do more similar work in the future, funding permitting. https://sfconservancy.org/supporter/#annual
https://news.ycombinator.com/item?id=9151799 https://news.ycombinator.com/item?id=9156644 https://news.ycombinator.com/item?id=10465435 https://news.ycombinator.com/item?id=9290149
LLVM+Clang are written in modern C++, not C. It's unclear to me if a mechanical translation from modern C++ to C will rank as similar, despite it clearly being copying. I suspect it would, but I think the cross-language comparison is a weakness in this demonstration. Combined with the reported failure to meet evidentiary standards, it suggests some real room for improvement in pursuing these cases.