4060
Comment: introduce libata based PATA drivers
|
12574
some bits
|
Deletions are marked like this. | Additions are marked like this. |
Line 1: | Line 1: |
2.6.19 will be started after the 2.6.18 release | [[TableOfContents()]] |
Line 3: | Line 3: |
== Important things (AKA: ''the cool stuff'') == | |
Line 4: | Line 5: |
Libata PATA (Parallel ATA) merge By "Parallel ATA" we just mean all the ATA/IDE controllers and drives that we have been using for years before SATA. Almost from the start, one of the objectives of some kernel hackers was to [http://marc.theaimsgroup.com/?l=linux-kernel&m=115514409104283&w=2 replace the IDE drivers available in drivers/ide] (everything under the "Device drivers -> ATA/ATAPI/MFM/RLL support" configuration menu) by a re-implementation on top of libata, ie: the "SATA layer". Drivers/ide suffers from many ugly and obscure problems, and re-implementing it on top of libata has been much easier than fixing the unfixable drivers/ide mess. Alan Cox has been doing most of this porting work, and as consequence, the support for numerous IDE drivers has been reimplemented on top of SATA. |
=== GFS2 === |
Line 7: | Line 7: |
(Another consequence of this PATA merge is that libata and all its SATA drivers have also been moved from drivers/scsi (available in the "Device drivers -> SCSI device support -> SCSI low-level drivers" submenu) to drivers/ata (now "Device drivers -> Serial ATA (prod) and Parallel ATA (experimental) drivers"), and all the CONFIG_SCSI_FOOBAR options for the individual SATA drivers have been changed to CONFIG_FOOBAR, so this means you may need to reconfigure your SATA configuration options) | GFS2 is a clustering filesystem developed mainly by Red Hat (after [http://www.theregister.co.uk/2003/12/18/red_hat_sweetens_q3/ purchasing Sistina] and opening the source code). It's not the first: OCFS2, another clustering filesystem developed by Oracle, was already merged in [http://kernelnewbies.org/Linux_2_6_16 Linux 2.6.16]. Clustering filesystems allow to share a filesystem between several machines with no compromises. GFS includes his own DLM (distributed locking manager) and a userspace API interface for that DLM. Like OCFS2 and like any other filesystem that wants to be merged in the linux kernel, GFS2 developers asked for submission long time ago. They were asked to fix things (even considering that GFS2 had already been developed at Sistina and it was already a stable final product), they submitted it again, they were asked to fix more things, and so on, for a long period of time. Their developers have fixed every thing they were asked to fix. Because of their hard work, GFS2 is now ready to be merged, and everyone is happy. And nobody flames the kernel or GFS2 developers. Amazing, isn't? [http://sources.redhat.com/cluster/ GFS2 project page]; Source code [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=fs/gfs2 for GFS2] and [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=fs/dlm for the DLM] === EXT 4 === === ECRYPTFS === Coming from IBM, ecryptfs aims to bring "enterprise level" file encryption to the masses. "Oh no, another filesystem!". No, Ecryptfs is not a traditional filesystem: it doesn't implements his own disk format. From [http://lwn.net/Articles/156921/ this LWN article]: ''The eCryptfs developers took the stacking approach, meaning that, rather than implement its own platter-level format, eCryptfs sits on top of another filesystem. It is, essentially, a sort of translation layer which makes encrypted file capabilities available. The system administrator can thus create encrypted filesystems on top of whatever filesystem is in use locally, or even over a network-mounted filesystem. [...] Rather than encrypt the filesystem as a whole, eCryptfs deals with each file individually'' (Reading the rest of the [http://lwn.net/Articles/156921 LWN article] is recommended. There's also a [http://www.linuxsymposium.org/2005/linuxsymposium_procv1.pdf Ecryptfs paper from the 2005 Ottawa Symposium] - page 209 and onwards) It's better to encrypt the whole disk using cryptoloop, or use ecryptfs? You decide. Ecryptfs avoids the overhead of a fully encrypted filesystem by only encrypting the files you really want to encrypt, and it also allows to encrypt different files in different ways. Ecryptfs tries to make file encryption available in a easy way for the masses. It ''"aims to combine the flexibility of GnuPG encryption with the transparency of a kernel service" [...] "Think of eCryptfs as a sort of 'gnupgfs'"''. If you're interested, you will find the userspace tools and more information available in the [http://ecryptfs.sourceforge.net/ ecryptfs sourceforge site] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=237fead619984cc48818fe12ee0ceada3f55b012 (Ecryptfs code)] === Libata PATA (Parallel ATA) merge === By "Parallel ATA" we mean all the ATA/IDE controllers and drives that we have been using for years before SATA. Almost from the start, one of the objectives of some kernel hackers was to [http://marc.theaimsgroup.com/?l=linux-kernel&m=115514409104283&w=2 replace the IDE drivers available in drivers/ide] (everything under the "Device drivers -> ATA/ATAPI/MFM/RLL support" configuration menu) with a reimplementation on top of libata (i.e.: the "SATA layer"). Drivers/ide suffers from many ugly and obscure problems, and re-implementing it on top of libata has been much easier than fixing the unfixable drivers/ide mess - most of the porting work has been done by Alan Cox (a consequence of this PATA merge is that libata and all its SATA drivers have also been moved from drivers/scsi (available in the "Device drivers -> SCSI device support -> SCSI low-level drivers" submenu) to drivers/ata (now "Device drivers -> Serial ATA (prod) and Parallel ATA (experimental) drivers"), and all the CONFIG_SCSI_FOOBAR options for the individual SATA drivers have been changed to CONFIG_FOOBAR, so this means you may need to reconfigure your SATA configuration options) |
Line 11: | Line 31: |
What one must you choose? Well, the safe option is using the old driver: The old drivers will continue working just as they did before. No changes for you if you choose those drivers, no behaviour changes at all. | What one must you choose? Well, the safe option is using the old driver: The old drivers will continue working just as they did before. There'll be no changes if you continue using the old drivers. |
Line 14: | Line 34: |
* First of all, because they're libata-based and libata is a very well engineered and sane infraestructure, the drivers have much better quality, they're more clean, much better error handling (much better behaviour when one of your drives stops working or finds broken sectors), and they don't have some of the know design issues that the old drivers have (this is why people did all the work to move away from drivers/ide, they didn't it just for fun) * Because they're newer, there're inevitably bugs on them. For now, they're "experimental". If you want to be safe, use the old drivers. * They support some chipsets not supported by drivers/ide (jmicron, newer VIA, mpiix, netcell, efar, etc). The cleaner design of libata allows easier driver development and mainteinance. * However, some IDE controllers are not supported or they aren't fully supported. Some of them because not all the IDE drivers have been ported to libata, but others because they're old and undocumented or because the libata PATA layer still doesn't support some of their features. There's no support for certain old serialized devices, for prehistoric CMD640 controllers or for host-protected-area yet. * Drives appear as /dev/sda, /dev/sr0, the old devices names won't work. You may need to change your boot parameters and your /etc/fstab parameters in order to get a working system with the new drivers. * Eventually, the new libata-based PATA drivers will get stabler. The old drivers in drivers/ide may get deleted as the new drivers fullfill all needs of the IDE users and gets feature-complete, but this certainly won't happen anytime soon. And no old drivers will be deleted if there's not a working libata that can replace it. You can find the latest [http://zeniv.linux.org.uk/~alan/IDE/STATUS.txt status report] written by Alan Cox. It'd be certainly useful if you could give it a try and report back how it works for you to linux-kernel@vger.kernel.org or bugzilla.kernel.org - even if it works fine, it'll be useful to know what systems do work (be sure to include the neccesary information mentioned in the previous status report) * |
* First of all, because they're libata-based and libata is a well engineered and sane infrastructure, the drivers have much better quality, they're cleaner, they've much better error handling (much better behaviour when one of your drives dies suddenly or finds broken sectors), and they don't have some of the known design issues that the old drivers have (this is why people did all the work to move away from drivers/ide, they didn't do it just for fun) * Because they're newer, there are more bugs. For this release, they're "experimental". If you want to be safe, use the old drivers. * Really. There is a risk that the new drivers won't work for you, or may harm your data (unlikely, but not impossible). If you want to be safe, use the old drivers. * They support some chipsets not supported by drivers/ide. The cleaner design of libata allows for easier driver development and maintenance. In some cases it supports features that the old driver doesn't, for the same reasons. * Some IDE controllers are not supported or they aren't fully supported. Some of them because not all the IDE drivers have been ported to libata, but others because they're old and undocumented or because the libata PATA layer still doesn't support some of their features. There's no support for certain old serialized devices, for prehistoric CMD640 controllers or for host-protected-area yet. * Drives appear as /dev/sda, /dev/sr0, the old devices names won't work. You will need to change your boot parameters and your /etc/fstab parameters in order to get a working system with the new drivers. Again, this only happens if you use the new drivers, the old drivers continue working as they did before. Eventually, the new libata-based PATA drivers will get more stable, so the old drivers in drivers/ide may get deleted as the new drivers fulfill all needs of the IDE users and becomes feature-complete. But this certainly won't happen anytime soon. No old drivers will be deleted if there's not a working libata-based replacement. You can read the latest [http://zeniv.linux.org.uk/~alan/IDE/STATUS.txt status report] written by Alan Cox. It'd certainly be useful if you could give it a try and report back how well it works to linux-kernel@vger.kernel.org or bugzilla.kernel.org - even if it works fine, it'll be useful to know what systems do work (be sure to include the necessary information mentioned in the previous status report). [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=drivers/ata (libata PATA code)] == Other stuff == === Architecture-specific changes === ==== x86 32/64 ==== ==== PPC ==== * PA Semi PWRficient platform support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1e76875e51266a5c43f601ecf08a92be5769228c (commit)] * Cpufreq support for Xserve G5 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7ed14c2177694ce086180eb9ca9ca4c6cd72c7ef (commit)] * Add support for briq machines [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=26c5032eaa64090b2a01973b0c6ea9e7f6a80fa7 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a45b83957deabbdac9a3d908c6ca4c25f05ce1ad (commit)] * Emulate power5 popcntb instruction on non-power5 machines [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c3412dcb75ff4d64b44bedc72761d5707d19edf7 (commit)] * A new iSeries console [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8bff05b052db7a4cfaaf0eee7f8145600548e9c9 (commit)] * Cell interrupt rework [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2e194583125bfea94d1ceaa6a32e891643befa7d (commit)], add NUMA support to the the spufs scheduler [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a68cf983f635930ea35f9e96b27d96598550dea0 (commit)], add infrastructure needed for gang scheduling [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6263203ed6e9ff107129a1ebe613290b342a4465 (commit)] * Add MPC8360EMDS board support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bc141deafb81f2efa453081e9d52d602a8cec766 (commit)], add initial support for the Freescale e300c2 core found in the MPC832x processor line [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6c4a2501d0b9fe90882efea5541275a46cda2a1a (commit)], add support for the mpc832x mds board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9020fc960b8f5fbca0de6e4d11881ddc827aa61d (commit)] * Enable XMON on PPC 4xx boards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b7e89214aadf82fa5eaff28f50f2078fa6ae773c (commit)] * Direct yield of spinlocks for powerpc [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cdc39363d33506b0e067d41fc91f89d186bdf7f7 (commit)] ==== S390 ==== * Add kprobes support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4ba069b802c29eee066385f9826e2d83716626b4 (commit)] * Remove old z90crypt driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7561b974e0cbbdca1bb880b55200afd9a1a20737 (commit)], replace it with the shiny new zcrypt device driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fe3a1be59c851aba2330387596c6134bc5ec8397 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2dbc2418bac32a18a372ae9aec386f0fe9174389 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1534c3820c26aca4e2567f97b8add8bea40e7e2b (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=963ed931c3fd18082bfde0e8704a28955663abf4 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6684af1a07a1f88f3970bc90e5aed173d39168db (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5432114baf0300286a6ca1b0aea549492a379432 (commit)] * Kernel stack overflow handling [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9514e2311be97a01e8669c4de78e9fea37489f09 (commit)] * Linux API for writing z/VM APPLDATA Monitor records collected by the *MONITOR System Service of z/VM [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=31b58088292c7f00f0b81088bfb557285b0b6247 (commit)] * Direct yield of spinlocks for s390 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3c1fcfe229e99752c74efb945a4a3f560be04204 (commit)] ==== PARISC ==== * Allow nested interrupts [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7085689ed135f94108e46c372015c6f5cd3372a3 (commit)], allow overriding personality with sys_personality to allow running linux 32 bits userspace [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=75a4958154f5d0028d5464f2479b4297d55cf4a3 (commit)]; add support for Quicksilver AGPGART [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=08a6436816f7a16113c73be767ee8d50440e494e (commit)] === Filesystems === === SELinux === === Networking === === Drivers and other subsystems === ==== Video ==== ==== Sound ==== ==== V4L/DVB ==== ==== Network drivers ==== ==== Various drivers ==== |
Important things (AKA: ''the cool stuff'')
GFS2
GFS2 is a clustering filesystem developed mainly by Red Hat (after [http://www.theregister.co.uk/2003/12/18/red_hat_sweetens_q3/ purchasing Sistina] and opening the source code). It's not the first: OCFS2, another clustering filesystem developed by Oracle, was already merged in [http://kernelnewbies.org/Linux_2_6_16 Linux 2.6.16]. Clustering filesystems allow to share a filesystem between several machines with no compromises. GFS includes his own DLM (distributed locking manager) and a userspace API interface for that DLM.
Like OCFS2 and like any other filesystem that wants to be merged in the linux kernel, GFS2 developers asked for submission long time ago. They were asked to fix things (even considering that GFS2 had already been developed at Sistina and it was already a stable final product), they submitted it again, they were asked to fix more things, and so on, for a long period of time. Their developers have fixed every thing they were asked to fix. Because of their hard work, GFS2 is now ready to be merged, and everyone is happy. And nobody flames the kernel or GFS2 developers. Amazing, isn't?
[http://sources.redhat.com/cluster/ GFS2 project page]; Source code [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=fs/gfs2 for GFS2] and [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=fs/dlm for the DLM]
EXT 4
ECRYPTFS
Coming from IBM, ecryptfs aims to bring "enterprise level" file encryption to the masses.
"Oh no, another filesystem!". No, Ecryptfs is not a traditional filesystem: it doesn't implements his own disk format. From [http://lwn.net/Articles/156921/ this LWN article]:
The eCryptfs developers took the stacking approach, meaning that, rather than implement its own platter-level format, eCryptfs sits on top of another filesystem. It is, essentially, a sort of translation layer which makes encrypted file capabilities available. The system administrator can thus create encrypted filesystems on top of whatever filesystem is in use locally, or even over a network-mounted filesystem. [...] Rather than encrypt the filesystem as a whole, eCryptfs deals with each file individually
(Reading the rest of the [http://lwn.net/Articles/156921 LWN article] is recommended. There's also a [http://www.linuxsymposium.org/2005/linuxsymposium_procv1.pdf Ecryptfs paper from the 2005 Ottawa Symposium] - page 209 and onwards)
It's better to encrypt the whole disk using cryptoloop, or use ecryptfs? You decide. Ecryptfs avoids the overhead of a fully encrypted filesystem by only encrypting the files you really want to encrypt, and it also allows to encrypt different files in different ways. Ecryptfs tries to make file encryption available in a easy way for the masses. It "aims to combine the flexibility of GnuPG encryption with the transparency of a kernel service" [...] "Think of eCryptfs as a sort of 'gnupgfs'". If you're interested, you will find the userspace tools and more information available in the [http://ecryptfs.sourceforge.net/ ecryptfs sourceforge site] [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=237fead619984cc48818fe12ee0ceada3f55b012 (Ecryptfs code)]
Libata PATA (Parallel ATA) merge
By "Parallel ATA" we mean all the ATA/IDE controllers and drives that we have been using for years before SATA. Almost from the start, one of the objectives of some kernel hackers was to [http://marc.theaimsgroup.com/?l=linux-kernel&m=115514409104283&w=2 replace the IDE drivers available in drivers/ide] (everything under the "Device drivers -> ATA/ATAPI/MFM/RLL support" configuration menu) with a reimplementation on top of libata (i.e.: the "SATA layer"). Drivers/ide suffers from many ugly and obscure problems, and re-implementing it on top of libata has been much easier than fixing the unfixable drivers/ide mess - most of the porting work has been done by Alan Cox (a consequence of this PATA merge is that libata and all its SATA drivers have also been moved from drivers/scsi (available in the "Device drivers -> SCSI device support -> SCSI low-level drivers" submenu) to drivers/ata (now "Device drivers -> Serial ATA (prod) and Parallel ATA (experimental) drivers"), and all the CONFIG_SCSI_FOOBAR options for the individual SATA drivers have been changed to CONFIG_FOOBAR, so this means you may need to reconfigure your SATA configuration options)
This means 2.6.19 may have two drivers for your PATA-base device: The old IDE driver under "Device drivers -> ATA/ATAPI/MFM/RLL support" and an alternative driver under "Device drivers -> Serial ATA (prod) and Parallel ATA (experimental) drivers" (along with the rest of the SATA drivers)
What one must you choose? Well, the safe option is using the old driver: The old drivers will continue working just as they did before. There'll be no changes if you continue using the old drivers.
What do the new libata-base PATA drivers offer to you?
- First of all, because they're libata-based and libata is a well engineered and sane infrastructure, the drivers have much better quality, they're cleaner, they've much better error handling (much better behaviour when one of your drives dies suddenly or finds broken sectors), and they don't have some of the known design issues that the old drivers have (this is why people did all the work to move away from drivers/ide, they didn't do it just for fun)
- Because they're newer, there are more bugs. For this release, they're "experimental". If you want to be safe, use the old drivers.
- Really. There is a risk that the new drivers won't work for you, or may harm your data (unlikely, but not impossible). If you want to be safe, use the old drivers.
- They support some chipsets not supported by drivers/ide. The cleaner design of libata allows for easier driver development and maintenance. In some cases it supports features that the old driver doesn't, for the same reasons.
- Some IDE controllers are not supported or they aren't fully supported. Some of them because not all the IDE drivers have been ported to libata, but others because they're old and undocumented or because the libata PATA layer still doesn't support some of their features. There's no support for certain old serialized devices, for prehistoric CMD640 controllers or for host-protected-area yet.
- Drives appear as /dev/sda, /dev/sr0, the old devices names won't work. You will need to change your boot parameters and your /etc/fstab parameters in order to get a working system with the new drivers. Again, this only happens if you use the new drivers, the old drivers continue working as they did before.
Eventually, the new libata-based PATA drivers will get more stable, so the old drivers in drivers/ide may get deleted as the new drivers fulfill all needs of the IDE users and becomes feature-complete. But this certainly won't happen anytime soon. No old drivers will be deleted if there's not a working libata-based replacement. You can read the latest [http://zeniv.linux.org.uk/~alan/IDE/STATUS.txt status report] written by Alan Cox. It'd certainly be useful if you could give it a try and report back how well it works to linux-kernel@vger.kernel.org or bugzilla.kernel.org - even if it works fine, it'll be useful to know what systems do work (be sure to include the necessary information mentioned in the previous status report). [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=tree;f=drivers/ata (libata PATA code)]
Other stuff
Architecture-specific changes
x86 32/64
PPC
PA Semi PWRficient platform support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1e76875e51266a5c43f601ecf08a92be5769228c (commit)]
Cpufreq support for Xserve G5 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7ed14c2177694ce086180eb9ca9ca4c6cd72c7ef (commit)]
Add support for briq machines [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=26c5032eaa64090b2a01973b0c6ea9e7f6a80fa7 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a45b83957deabbdac9a3d908c6ca4c25f05ce1ad (commit)]
Emulate power5 popcntb instruction on non-power5 machines [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c3412dcb75ff4d64b44bedc72761d5707d19edf7 (commit)]
A new iSeries console [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=8bff05b052db7a4cfaaf0eee7f8145600548e9c9 (commit)]
Cell interrupt rework [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2e194583125bfea94d1ceaa6a32e891643befa7d (commit)], add NUMA support to the the spufs scheduler [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=a68cf983f635930ea35f9e96b27d96598550dea0 (commit)], add infrastructure needed for gang scheduling [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6263203ed6e9ff107129a1ebe613290b342a4465 (commit)]
Add MPC8360EMDS board support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bc141deafb81f2efa453081e9d52d602a8cec766 (commit)], add initial support for the Freescale e300c2 core found in the MPC832x processor line [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6c4a2501d0b9fe90882efea5541275a46cda2a1a (commit)], add support for the mpc832x mds board [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9020fc960b8f5fbca0de6e4d11881ddc827aa61d (commit)]
Enable XMON on PPC 4xx boards [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=b7e89214aadf82fa5eaff28f50f2078fa6ae773c (commit)]
Direct yield of spinlocks for powerpc [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=cdc39363d33506b0e067d41fc91f89d186bdf7f7 (commit)]
S390
Add kprobes support [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=4ba069b802c29eee066385f9826e2d83716626b4 (commit)]
Remove old z90crypt driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7561b974e0cbbdca1bb880b55200afd9a1a20737 (commit)], replace it with the shiny new zcrypt device driver [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=fe3a1be59c851aba2330387596c6134bc5ec8397 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=2dbc2418bac32a18a372ae9aec386f0fe9174389 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=1534c3820c26aca4e2567f97b8add8bea40e7e2b (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=963ed931c3fd18082bfde0e8704a28955663abf4 (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=6684af1a07a1f88f3970bc90e5aed173d39168db (commit)], [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=5432114baf0300286a6ca1b0aea549492a379432 (commit)]
Kernel stack overflow handling [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9514e2311be97a01e8669c4de78e9fea37489f09 (commit)]
Linux API for writing z/VM APPLDATA Monitor records collected by the *MONITOR System Service of z/VM [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=31b58088292c7f00f0b81088bfb557285b0b6247 (commit)]
Direct yield of spinlocks for s390 [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=3c1fcfe229e99752c74efb945a4a3f560be04204 (commit)]
PARISC
Allow nested interrupts [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=7085689ed135f94108e46c372015c6f5cd3372a3 (commit)], allow overriding personality with sys_personality to allow running linux 32 bits userspace [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=75a4958154f5d0028d5464f2479b4297d55cf4a3 (commit)]; add support for Quicksilver AGPGART [http://kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=08a6436816f7a16113c73be767ee8d50440e494e (commit)]
Filesystems
SELinux
Networking
Drivers and other subsystems
Video
Sound
V4L/DVB
Network drivers