KernelNewbies
  • Comments
  • Immutable Page
  • Menu
    • Navigation
    • RecentChanges
    • FindPage
    • Local Site Map
    • Help
    • HelpContents
    • HelpOnMoinWikiSyntax
    • Display
    • Attachments
    • Info
    • Raw Text
    • Print View
    • Edit
    • Load
    • Save
  • Login

Kernel Hacking

  • Frontpage

  • Kernel Hacking

  • Kernel Documentation

  • Kernel Glossary

  • FAQ

  • Found a bug?

  • Kernel Changelog

  • Upstream Merge Guide

Projects

  • KernelJanitors

  • KernelMentors

  • KernelProjects

Community

  • Why a community?

  • Regional Kernelnewbies

  • Personal Pages

  • Upcoming Events

References

  • Mailing Lists

  • Related Sites

  • Programming Links

Wiki

  • Recent Changes

  • Site Editors

  • Side Bar

  • Tips for Editors

  • Hosted by WikiWall

Navigation

  • RecentChanges
  • FindPage
  • HelpContents

Upload page content

You can upload content for the page named below. If you change the page name, you can also upload content for another page. If the page name is empty, we derive the page name from the file name.

File to load page content from
Page name
Comment

Revision 4 as of 2011-03-14 23:51:47
KernelNewbies:
  • Linux_2_6_38

/!\ Linux 2.6.38 has not be released. Please be patient /!\

Summary:

TableOfContents()

1. Prominent features (the cool stuff)

1.1. Wait until the release

2. Drivers and architectures

All the driver and architecture-specific changes can be found in the [http://kernelnewbies.org/Linux_2_6_38-DriversArch Linux_2_6_38-DriversArch page]

3. Core

  • Add /proc/consoles: To see which character device lines are currently used for the system console /dev/console, you may simply look into this file [http://git.kernel.org/linus/23308ba54dcdb54481163bfb07dd8aeca76a7a2e (commit)]

  • Add hole punching support to fallocate() [http://git.kernel.org/linus/79124f18b335172e1916075c633745e12dae1dac (commit)]

  • Script for automatic kernel testing: ktest.pl [http://git.kernel.org/linus/2545eb6198e7e1ec50daa0cfc64a4cdfecf24ec9 (commit)]

4. CPU scheduler

  • Improve cpu-cgroup performance for smp systems significantly by rewritting tg_shares_up [http://git.kernel.org/linus/2069dd75c7d0f49355939e5586daf5a9ab216db7 (commit)]

  • Remove long deprecated CLONE_STOPPED flag [http://git.kernel.org/linus/43bb40c9e3aa51a3b038c9df2c9afb4d4685614d (commit)]

  • Add sysctl_sched_shares_window for the shares window [http://git.kernel.org/linus/a7a4f8a752ec734b2eab904fc863d5dc873de338 (commit)]

5. Memory management

  • mlock(): do not hold the mmap_sem lock for extended periods of time while loading data into the page cache [http://git.kernel.org/linus/53a7706d5ed8f1a53ba062b318773160cc476dde (commit)], [http://git.kernel.org/linus/fed067da46ad3b9acedaf794a5f05d0bc153280b (commit)]

6. Block

  • Implement media polling for removeable in the kernel [http://git.kernel.org/linus/77ea887e433ad8389d416826936c110fa7910f80 (commit)]

  • Allow creation of hierarchical cgroups in the blk cgroup controller [http://git.kernel.org/linus/bdc85df7a8417b9893443ff5520804699416b6f3 (commit)]

  • Export a read-only sysfs attribute for partitions [http://git.kernel.org/linus/34db1d595ef6f183fbc1e42cda45a3dfa0035258 (commit)]

Device Mapper (DM)

  • Improve significantly write throughput when writing to the origin with a snapshot on the same device [http://git.kernel.org/linus/d9bf0b508ddfe19883b982b29a03c02ccbf53806 (commit)]

  • Improve sequential write throughput [http://git.kernel.org/linus/8d35d3e37eed884ba15229a146df846f399909b4 (commit)]

  • dm-crypt: scale to multiple cpus [http://git.kernel.org/linus/c029772125594e31eb1a5ad9e0913724ed9891f2 (commit)]

  • dm-crypt: add loop AES IV generator [http://git.kernel.org/linus/34745785937a2003c144c0d4802fa637470d87af (commit)]

  • RAID1: support discard [http://git.kernel.org/linus/5fc2ffeabb9ee0fc0e71ff16b49f34f0ed3d05b4 (commit)]

  • Skeleton for the DM target that will be the bridge from DM to MD (initially RAID456 and later RAID1). It provides a way to use device-mapper interfaces to the MD RAID456 drivers [http://git.kernel.org/linus/9d09e663d5502c46f2d9481c04c1087e1c2da698 (commit)]

7. File systems

XFS

  • Add manual SSD discard support via the FITRIM ioctl [http://git.kernel.org/linus/a46db60834883c1c8c665d7fcc7b4ab66f5966fc (commit)]

  • Convert inode cache lookups to use RCU locking [http://git.kernel.org/linus/1a3e8f3da09c7082d25b512a0ffe569391e4c09a (commit)]

  • Dynamic speculative EOF preallocation [http://git.kernel.org/linus/055388a3188f56676c21e92962fc366ac8b5cb72 (commit)]

CIFS

  • Add strictcache mount option. In this mode the client reads from the cache all the time if possible. As for write, the client stores a data in the cache when possible [http://git.kernel.org/linus/d39454ffe4a3c85428483b8a8a8e5e797b6363d5 (commit)]

  • Add cruid= mount option [http://git.kernel.org/linus/bd7633195581c7665ce9dd80c665ec93466d1b64 (commit)]

EXT2/3

  • Speed up file creates by microoptimizing some functions [http://git.kernel.org/linus/40a063f6691ce937a3d00c9700b6964b5ec4e022 (commit)], [http://git.kernel.org/linus/a4ae3094869f18e26ece25ad175bbe4cd740e60b (commit)]

  • Add batched discard support for ext3 [http://git.kernel.org/linus/b853b96b1dbdc05fc8eae141a595366d8172962b (commit)]

SQUASHFS

  • Add XZ compression [http://git.kernel.org/linus/7a43ae523744c01b6187013e781f44c2281c579c (commit)], [http://git.kernel.org/linus/81bb8debd0d570dc67dc1e9d8b612632cb941893 (commit)]

NILFS2

  • Support the fiemap ioctl, used to get extent information for a inode [http://git.kernel.org/linus/622daaff0a8975fb5c5b95f24f3234550ba32e92 (commit)]

8. Networking

  • Increase default initial receive window. [http://git.kernel.org/linus/356f039822b8d802138f7121c80d2a9286976dbd (commit)]

  • Expose the per device configuration settings via netlink [http://git.kernel.org/linus/9f0f7272ac9506f4c8c05cc597b7e376b0b9f3e4 (commit)], [http://git.kernel.org/linus/b382b191ea9e9ccefc437433d23befe91f4a8925 (commit)]

  • IPv4: ECN-aware IP defragmentation (as per RFC3168) [http://git.kernel.org/linus/6623e3b24a5ebb07e81648c478d286a1329ab891 (commit)]

  • Add 32/64 bit compatibility in the ipv4 multicast ioctl SIOCGETSGCNT [http://git.kernel.org/linus/709b46e8d90badda1898caea50483c12af178e96 (commit)]

Wireless

  • Throughput based LED blink trigger [http://git.kernel.org/linus/e1e5406854378dfada3f33c7192b012083a5b8e0 (commit)]

  • Let userspace enable and configure vendor specific path selection, in accordance with the version 7.0 of the 802.11s draft [http://git.kernel.org/linus/c80d545da3f7c0e534ccd4a780f322f80a92cff1 (commit)]

  • Support hardware TX fragmentation offload [http://git.kernel.org/linus/f23a478075659db8a4fd62fa6e264a8bb052cc5b (commit)]

  • Report signal average [http://git.kernel.org/linus/541a45a142df281c974d74eac2066138fc107b23 (commit)]

  • Notify for dropped Deauth/Disassoc [http://git.kernel.org/linus/cf4e594ea7e55555e81647b74a3a8e8b2826a529 (commit)]

  • Add mesh join/leave configuration commands [http://git.kernel.org/linus/29cbe68c516a48a9a88b3226878570c6cbd83c02 (commit)]

* dcbnl: add support for ieee8021Qaz attributes [http://git.kernel.org/linus/3e29027af43728c2a91fe3f735ab2822edaf54a8 (commit)]

9. Crypto

  • User-space interface for Crypto API [http://git.kernel.org/linus/03c8efc1ffeb6b82a22c1af8dd908af349563314 (commit)], [http://git.kernel.org/linus/fe869cdb89c95d060c77eea20204d6c91f233b53 (commit)], [http://git.kernel.org/linus/8ff590903d5fc7f5a0a988c38267a3d08e6393a2 (commit)]

  • Optimized RFC4106 AES-GCM implementation using Intel AES New Instructions and the PCLMULQDQ instruction [http://git.kernel.org/linus/0bd82f5f6355775fbaf7d3c664432ce1b862be1e (commit)], [http://git.kernel.org/linus/0d258efb6a58fe047197c3b9cff8746bb176d58a (commit)]

10. Virtualization

  • Asynchronous page faults, which allow a guest to continue processing interrupts even when its memory is being paged in; in the case of a Linux 2.6.38+ guest, it will receive a notification that the host is servicing a page fault, and may switch into another guest process [http://git.kernel.org/linus/344d9588a9df06182684168be4f1408b55c7da3e (commit 1], [http://git.kernel.org/linus/fd10cde9294f73eeccbc16f3fec1ae6cde7b800c 2], [http://git.kernel.org/linus/631bc4878220932fe67fc46fc7cf7cccdb1ec597 3], [http://git.kernel.org/linus/7c90705bf2a373aa238661bdb6446f27299ef489 4], [http://git.kernel.org/linus/6c047cd982f944fa63b2d96de2a06463d113f9fa 5], [http://git.kernel.org/linus/6adba527420651b6cacaf392541c09fb108711a2 6], [http://git.kernel.org/linus/fc5f06fac6fb8ce469ea173370f2cd398f1d9f9a 7)]

  • AMD Bulldozer virtualization extensions: instruction decode assist, clean bits, xsave/avx, flush-by-asid [http://git.kernel.org/linus/38e5e92fe8c02a8766459d505423b855caf9af1f (commit)], [http://git.kernel.org/linus/81dd35d42c9aef3c1f7ae6ce4cf6a0d382661db5 (commit)]

  • lguest: --username and --chroot options, to drop privileges and chroot to a directory [http://git.kernel.org/linus/8aeb36e8f6d7eaa9cafc970b700414205743b258 (commit)]

11. Security

Smack

  • Address a number of long standing issues with the way Smack treats UNIX domain sockets [http://git.kernel.org/linus/b4e0d5f0791bd6dd12a1c1edea0340969c7c1f90 (commit)]

  • Introduce a new attribute SMACK64TRANSMUTE that instructs Smack to create the file with the label of the directory under certain circumstances. A new access mode, "t" for transmute, is made available to Smack access rules, which are expanded from "rwxa" to "rwxat". If a file is created in a directory marked as transmutable and if access was granted to perform the operation by a rule that included the transmute mode, then the file gets the Smack label of the directory instead of the Smack label of the creating process [http://git.kernel.org/linus/5c6d1125f8dbd1bfef39e38fbc2837003be78a59 (commit)]

  • Add a new security attribute to Smack called SMACK64EXEC. It defines label that is used while task is running [http://git.kernel.org/linus/676dac4b1bee0469d6932f698aeb77e8489f5861 (commit)]

  • Add two new hey types: trusted, which are random number symmetric keys, generated and RSA-sealed by the TPM [http://git.kernel.org/linus/d00a1c72f7f4661212299e6cb132dfa58030bcdb (commit)] and encrypted, which are kernel generated random numbers encrypted/decrypted with a 'trusted' symmetric key [http://git.kernel.org/linus/7e70cb4978507cf31d76b90e4cfb4c28cad87f0c (commit)]

12. Tracing/perf


CategoryReleases

  • MoinMoin Powered
  • Python Powered
  • GPL licensed
  • Valid HTML 4.01