Slashdot Mirror


Linux 3.7 Released

The wait is over; diegocg writes "Linux kernel 3.7 has been released. This release adds support for the new ARM 64-bit architecture, ARM multiplatform — the ability to boot into different ARM systems using a single kernel; support for cryptographically signed kernel modules; Btrfs support for disabling copy-on-write on a per-file basis using chattr; faster Btrfs fsync(); a new experimental 'perf trace' tool modeled after strace; support for the TCP Fast Open feature in the server side; experimental SMBv2 protocol support; stable NFS 4.1 and parallel NFS; a vxlan tunneling protocol that allows to transfer Layer 2 ethernet packets over UDP; and support for the Intel SMAP security feature. Many small features and new drivers and fixes are also available. Here's the full list of changes."

3 of 151 comments (clear)

  1. Improved SAMBA client support? by CajunArson · · Score: 5, Informative

    experimental SMBv2 protocol support;

    This can't come soon enough for Linux clients. SAMBA already has SMBv2+ server-side support, with SAMBA 4 apparently even supported SMB 3.0. This is especially true for a high-latency connection through the VPN where the reduced chattiness of newer SMB protocols gives a nice performance bump.

    You can post all day & all night about how NFS/CODA/GlusterFS/etc./etc. is better, but at the end of the day the CIFS protocols are supported by every Windows machine out there and should be supported by Linux too. Plus, if you are a free-software purist, then you could setup a 100% GPL'd installation with SAMBA servers and Linux clients, so it would totally make sense for the Linux clients to actually support the modern protocols.

    --
    AntiFA: An abbreviation for Anti First Amendment.
  2. Re:UDP ... by vlm · · Score: 5, Interesting

    Why does vxlan transfer L2 packets using UDP and not TCP? I have also seen this on other L2 protocols like L2TP and PPTP ... just curious ...

    TCP has a feedback loop when packets are lost... So you'd have that at both layers, the actual session and the tunnel.

    Its an engineering thing where if you embed a feedback loop inside a feedback loop, things will be OK if you're VERY careful but most are not and you'll make a lovely oscillator and just blow it all to bits.

    Fundamentally, UDP doesn't guarantee delivery so its OK to shove it inside UDP, and TCP has its own repair mechanism so you don't need to guarantee its sub-layers, so its not like you're missing anything.

    Finally it just kills performance because TCP loves big buffers for each connection so you need megatons of ram until you start dropping packets and letting TCP police itself. Which meanwhile results in horrific latency. But if you tunnel over UDP, you don't really need much of a buffer on the tunneler itself and you'll overall end up with better latency specs. So its cheaper and works better. Hard to beat that combo...

    --
    "Science flies us to the moon. Religion flies us into buildings." - Victor Stenger
  3. Re:kernel in c++? by advantis · · Score: 5, Informative

    And you need a kernel in C++ why? Because you can't get your head around objects that aren't enforced by the language? Or you can't get your head around doing error cleanup without exceptions enforced by the language? The Linux kernel even does reference counting without explicit support from the language.

    Just to get a complete picture, I looked at some competing kernels (I skimmed over the source really quickly):

    FreeBSD kernel - C, with objects and refcounts, similar to Linux
    OpenBSD kernel - C, but I have a hard time finding their equivalent to objects and refcounts, and I gave up looking
    GNU Hurd - C, and I'm not even going to bother looking around too much
    XNU - C, but with I/O Kit in C++ - works only with Apple software?
    Haiku kernel - C++, which is interesting in itself - but supports only IA-32?
    Plan9 kernel - C
    OpenSolaris kernel - C

    I think it's pointless to look at the rest. All the others listed by Wikipedia are even more obscure than some of the above.

    C seems to dominate the kernel arena, so Next time you post, I'd like to know what you think C++ would bring to the party. No, really. I've seen many dismiss that Linux isn't written in C++, but haven't seen a single one of these trolls (yes, I'm feeding you) say what that would accomplish, and I'm really really really curious. I'll throw a bone from the XNU Wikipedia article: "helping device drivers be written more quickly and using less code", and that seems to be the only bit written in C++, yet Linux does pretty well without, and apparently so do the majority (see above).

    --
    Question for religious people: where do unrepentant masochists go when they die?