Linux 3.13 Released
diegocg writes "Linux kernel 3.13 has been released. This release includes nftables (the successor of iptables); a revamp of the block layer designed for high-performance SSDs; a framework to cap power consumption in Intel RAPL devices; improved squashfs performance; AMD Radeon power management enabled by default and automatic AMD Radeon GPU switching; improved NUMA and hugepage performance; TCP Fast Open enabled by default; support for NFC payments; support for the High-Availability Seamless Redundancy protocol; new drivers; and many other small improvements. Here's the full list of changes."
awesome! Im looking forward to use nftables!
There's a compatibility wrapper, right? Right? Because nftables is an awful terrible complicated pile of needless complexity. It should be possible to set up a simple deny-inbound firewall ruleset in just a few lines, or..........I'm just not going to upgrade! Yeah. That's the idea.
This release includes nftables (the successor of iptables)
Why does every network management tool include their own ugly, broken little programming language for configuring it?
Why not just use an existing language?
Like, when I get a packet from the network, I can just use Python:
if packet.origin == "127.0.0.1":
packet.drop()
elif packet.port == 80:
packet.forward(port = 1024)
etcetera.
If Pandora's box is destined to be opened, *I* want to be the one to open it.
Why does every network management tool include their own ugly, broken little programming language for configuring it?
Why not just use an existing language?
Like, when I get a packet from the network, I can just use Python:
You could use Python:
You need to write your own interpreter which takes scripts written in your special subset of python, and compile them into the special bytecode that the NFTable kernel interface uses.
The thing is, the internal representation of NFTables needs to be highly efficient (as explained by other posts here) and very likely the official NFTable bytecode isn't really feature complete or maybe not even turing-complete.
The current special language will map nicely to it. But you will probably need a very narrow and specific subset of Python. Or a vast a mount of pre-processing and optimisations. You probably will never be able to use the full extent of python on current ntfables and for exemple "import" nice modules in your network filtering code.
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]
If you support all the syntax of the language (so python in this case) people are going to expect to be able to interpret/run arbitrary python statements:
if packet.port in [80,443,8080]:
packet.forward(port = 1024)
Without the same semantics looking the same isn't going to be enough. It is also true that the language syntax can let you arrange for certain conditions to always hold which allows simpler backend rules to be generated (e.g. in the original example the first comparison was against an IP address and the second was against a port which might make generating skip lists where later rules do not have to be evaluated harder).
Automatic GPU switching
Linux 3.12 added infrastructure support for automatic GPU switching in laptops with dual GPUs. This release adds support for this feature in AMD Radeon hardware.
(It already "works" but plug/unplug needs a lot of manual fucking around.
Or does it need more work in X?
Watch this Heartland Institute video
To someone that has not used Linux for a while, is this just a new version of iptables or is this actually comparable with pf?
I am a bit astounded. Why would you want to compile that into an OS kernel ?? Please enlighten me.
Religous speak to God. Insane are spoken to by God. When all shut up, one can finally hear Shostakovich in peace
http://lwn.net/Articles/564095/
Absolute best technical read on the Internet. Subscribe early, subscribe often.
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
nfc is a comms protocol, like bluetooth or ethernet, very timing sensitive, therefore best implemented on the kernel level. nfc is often used for payment systems, hen ce the conflation. am assuming - have no specific details.
I FINNALY managed to wrap my head around how iptables work... Oh well, hopefully the new one will be easier.
I have one computer where it will not boot into graphics mode ever since the 3.10 kernel. When it switches over you just get a black screen; however, the machine still boots because I can ssh into it. A couple of other machines I upgraded don't have this problem. While looking for an answer, I've found this seems to be an issue across many distributions (Ubuntu variants, Fedora variants). Some people said they solved it by adding some kernel boot parameters, some say it is related to the Intel graphics driver, some say other drivers (none of the suggestions I've found, so far, have worked for me). Fortunately this isn't a critical resource computer and I fine with running it on the 3.2 kernel.
With the revolutionary Windows 9 just around the corner, why should I care with a minor point release? In a niche operating system?
I read began reading Why You Will Love nftables and reached the part where the syntax is shown. It's so very similar to iproute2. If you like iproute2, you'll love nftables too. If you hate iproute2, you'll probably hate nftables as well. But you should really try to love it, because it's really powerful. Drop the other network tools that can be replaced by iproute2 (e.g. ifconfig, route).
I'll go change my underware, 'cause I just came...
One of the comments points to DPF, which uses dynamic code generation to demultiplex packets. This is a very promising and surprisingly old idea. A dynamically generated classifier/filter could replace the entire network input path, and interface well with Van Jacobson's net channels. In addition to providing superior performance, it would afford far greater flexibility and modularity of code.
Where security is concerned I don't want New And Shiny, I want Old And Tested. I'll stick with iptables.
"Don't belong. Never join. Think for yourself. Peace." V.Stone, Microsoft Corporation
NOT YET...!
when is Linux++ due then?
"The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
Pretty much never. The thing that kills it is that there is no standard C++ ABI . You have a better chance of sneaking D in.
http://iainbuclaw.wordpress.com/2010/05/22/writing-a-linux-kernel-module-in-d/
Does the scalable block layer let you switch over to one ZRAM device, instead of one per core recomended to avoid IO queue bottlenecks?
like that's limited to linux.. have you seen what microsoft and apple have been up to lately?
Now all we gots todo patch resolver libraries... /w MSG_FASTOPEN and disable or severely rate limit the disaster which is DNS/UDP.
Since when the kernel side has cared about ABI? Even the source compatibility can and will be broken any time inside the kernel, which is easily seen by people using closed source drivers for their GPU's.
errr... whooosh
"The hands that help are better far than lips that pray." - Robert Ingersoll (1833-1899)
http://xpressrazor.wordpress.com/2013/10/08/enable-and-use-open-source-radeon-drivers-in-a-muxless-hybrid-graphics-intelamd-setup/
$ xrandr --listproviders
Providers: number : 2
Provider 0: id: 0x7d cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 2 outputs: 4 associated providers: 0 name:Intel
Provider 1: id: 0x57 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 6 outputs: 2 associated providers: 0 name:radeon
Then
$ xrandr --setprovideroffloadsink 0x57 0x7d
Now setting DRI_PRIME to 1 runs things on the radeon:
$ DRI_PRIME=1 glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: Gallium 0.4 on AMD TURKS
Watch this Heartland Institute video