Bug 191051
Summary: | include/uapi/linux/keyctl.h header uses C++ reserved keyword | ||
---|---|---|---|
Product: | Other | Reporter: | Keno Fischer (keno) |
Component: | Other | Assignee: | other_other |
Status: | NEW --- | ||
Severity: | normal | CC: | euloanty, ht990332, marci_r, rdunlap, torvalds |
Priority: | P1 | ||
Hardware: | All | ||
OS: | Linux | ||
Kernel Version: | 4.8 | Subsystem: | |
Regression: | No | Bisected commit-id: |
Description
Keno Fischer
2016-12-24 07:42:03 UTC
Patch posted on 2018-APR-06. We'll see how that goes. Linus Torvalds is retarded for this. I could understand why C++ is not a good choice for kernel. but why screw user space C++ programs? Fuck linus torvalds. Fuck Linus Torvalds. Hope anyone could write a new kernel that replaces this stupidity in the future. https://youtu.be/Ahe3qjPe5FU We know Linus Torvalds hates C++. However today I am going to do some politically incorrect things, which is to write the Linux kernel module with my C++ 20 concepts fast_io library. fast_io supports freestanding C++. It does not need heap, it does not need exception handling. It does not use virtual functions or anything that needs a runtime. So yes, it works in the kernel. You can even print out floating point with it which is something the Linux kernel does not support. It works for Windows NT kernel too. You can check another example if you want. (Probably i am going to make a video about NT kernel driver with fast_io) I do not want to use C++ to write OS kernel at all tbh due to exception handling being a retarded nonsense. However, Linus Torvalds deliberately screws UAPIs for C++ in the USER space which is completely unacceptable. https://lwn.net/Articles/764664/ This problem still exists even for today's Linux Kernel 5.14 header files which will randomly screw up the C++ compiler (because they deliberately use reserved keywords like "class", "private" to screw up the C++ compiler). Creating our own kernel header files to support UAPIs for C++ is not possible either since it has licensing issues which are highly likely to be illegal. The advantage is not just that you can print out floating points, but you can put everything in the user space to debug it and then let fast_io deals with it transparently in the kernel. This saves a lot of debugging time. It does not use format string at all which means it is immune to format string vuln. Even Linux kernel has a lot of format string bugs like this: https://nvd.nist.gov/vuln/detail/CVE-... https://github.com/tearosccebe/fast_i... The Linux kernel specific driver implementation https://github.com/tearosccebe/fast_i... floating-point implementation My own hex float implementation Dragonbox Sorry, the microphone is broken after 11 minutes. Join fast_io discord https://discord.gg/vMKhB9Q if you have questions Linus Torvalds: http://harmful.cat-v.org/software/c++... In general, I'd say that anybody who designs his kernel modules for C++ is either (a) looking for problems (b) a C++ bigot that can't see what he is writing is really just C anyway (c) was given an assignment in CS class to do so. LOL. So I must be the "looking for problems" case right? I wasn't given an assignment in CS class, nor write C code (since C does not support concepts) (In reply to cqwrteur from comment #2) > Linus Torvalds is retarded for this. > > I could understand why C++ is not a good choice for kernel. but why screw > user space C++ programs? > > Fuck linus torvalds. Linus Torvalds is self-contradicting. "We do not break userspace." But break user space programs for this. DEATH TO LINUS TORVALDS. I am sure linus torvalds is going to die before me. Just fuck him. His own words: Respect needs be learnt. He does not deserve my respect. That is why I am still using windows. Just fuck him. His own words: Respect needs to be earned. He does not deserve my respect. That is why I am still using windows. Just fuck him. FUCK LINUS TORVALDS. |