Loading CREDITS +1 −1 Original line number Original line Diff line number Diff line Loading @@ -518,7 +518,7 @@ N: Zach Brown E: zab@zabbo.net E: zab@zabbo.net D: maestro pci sound D: maestro pci sound M: David Brownell N: David Brownell D: Kernel engineer, mentor, and friend. Maintained USB EHCI and D: Kernel engineer, mentor, and friend. Maintained USB EHCI and D: gadget layers, SPI subsystem, GPIO subsystem, and more than a few D: gadget layers, SPI subsystem, GPIO subsystem, and more than a few D: device drivers. His encouragement also helped many engineers get D: device drivers. His encouragement also helped many engineers get Loading Documentation/Changes +18 −25 Original line number Original line Diff line number Diff line Loading @@ -2,13 +2,7 @@ Intro ===== ===== This document is designed to provide a list of the minimum levels of This document is designed to provide a list of the minimum levels of software necessary to run the 2.6 kernels, as well as provide brief software necessary to run the 3.0 kernels. instructions regarding any other "Gotchas" users may encounter when trying life on the Bleeding Edge. If upgrading from a pre-2.4.x kernel, please consult the Changes file included with 2.4.x kernels for additional information; most of that information will not be repeated here. Basically, this document assumes that your system is already functional and running at least 2.4.x kernels. This document is originally based on my "Changes" file for 2.0.x kernels This document is originally based on my "Changes" file for 2.0.x kernels and therefore owes credit to the same people as that file (Jared Mauch, and therefore owes credit to the same people as that file (Jared Mauch, Loading @@ -22,11 +16,10 @@ Upgrade to at *least* these software revisions before thinking you've encountered a bug! If you're unsure what version you're currently encountered a bug! If you're unsure what version you're currently running, the suggested command should tell you. running, the suggested command should tell you. Again, keep in mind that this list assumes you are already Again, keep in mind that this list assumes you are already functionally functionally running a Linux 2.4 kernel. Also, not all tools are running a Linux kernel. Also, not all tools are necessary on all necessary on all systems; obviously, if you don't have any ISDN systems; obviously, if you don't have any ISDN hardware, for example, hardware, for example, you probably needn't concern yourself with you probably needn't concern yourself with isdn4k-utils. isdn4k-utils. o Gnu C 3.2 # gcc --version o Gnu C 3.2 # gcc --version o Gnu make 3.80 # make --version o Gnu make 3.80 # make --version Loading Loading @@ -114,12 +107,12 @@ Ksymoops If the unthinkable happens and your kernel oopses, you may need the If the unthinkable happens and your kernel oopses, you may need the ksymoops tool to decode it, but in most cases you don't. ksymoops tool to decode it, but in most cases you don't. In the 2.6 kernel it is generally preferred to build the kernel with It is generally preferred to build the kernel with CONFIG_KALLSYMS so CONFIG_KALLSYMS so that it produces readable dumps that can be used as-is that it produces readable dumps that can be used as-is (this also (this also produces better output than ksymoops). produces better output than ksymoops). If for some reason your kernel If for some reason your kernel is not build with CONFIG_KALLSYMS and is not build with CONFIG_KALLSYMS and you have no way to rebuild and you have no way to rebuild and reproduce the Oops with that option, then reproduce the Oops with that option, then you can still decode that Oops you can still decode that Oops with ksymoops. with ksymoops. Module-Init-Tools Module-Init-Tools ----------------- ----------------- Loading Loading @@ -261,8 +254,8 @@ needs to be recompiled or (preferably) upgraded. NFS-utils NFS-utils --------- --------- In 2.4 and earlier kernels, the nfs server needed to know about any In ancient (2.4 and earlier) kernels, the nfs server needed to know client that expected to be able to access files via NFS. This about any client that expected to be able to access files via NFS. This information would be given to the kernel by "mountd" when the client information would be given to the kernel by "mountd" when the client mounted the filesystem, or by "exportfs" at system startup. exportfs mounted the filesystem, or by "exportfs" at system startup. exportfs would take information about active clients from /var/lib/nfs/rmtab. would take information about active clients from /var/lib/nfs/rmtab. Loading @@ -272,11 +265,11 @@ which is not always easy, particularly when trying to implement fail-over. Even when the system is working well, rmtab suffers from fail-over. Even when the system is working well, rmtab suffers from getting lots of old entries that never get removed. getting lots of old entries that never get removed. With 2.6 we have the option of having the kernel tell mountd when it With modern kernels we have the option of having the kernel tell mountd gets a request from an unknown host, and mountd can give appropriate when it gets a request from an unknown host, and mountd can give export information to the kernel. This removes the dependency on appropriate export information to the kernel. This removes the rmtab and means that the kernel only needs to know about currently dependency on rmtab and means that the kernel only needs to know about active clients. currently active clients. To enable this new functionality, you need to: To enable this new functionality, you need to: Loading Documentation/CodingStyle +2 −2 Original line number Original line Diff line number Diff line Loading @@ -680,8 +680,8 @@ ones already enabled by DEBUG. Chapter 14: Allocating memory Chapter 14: Allocating memory The kernel provides the following general purpose memory allocators: The kernel provides the following general purpose memory allocators: kmalloc(), kzalloc(), kcalloc(), and vmalloc(). Please refer to the API kmalloc(), kzalloc(), kcalloc(), vmalloc(), and vzalloc(). Please refer to documentation for further information about them. the API documentation for further information about them. The preferred form for passing a size of a struct is the following: The preferred form for passing a size of a struct is the following: Loading Documentation/cgroups/blkio-controller.txt +6 −6 Original line number Original line Diff line number Diff line Loading @@ -77,7 +77,7 @@ Throttling/Upper Limit policy - Specify a bandwidth rate on particular device for root group. The format - Specify a bandwidth rate on particular device for root group. The format for policy is "<major>:<minor> <byes_per_second>". for policy is "<major>:<minor> <byes_per_second>". echo "8:16 1048576" > /sys/fs/cgroup/blkio/blkio.read_bps_device echo "8:16 1048576" > /sys/fs/cgroup/blkio/blkio.throttle.read_bps_device Above will put a limit of 1MB/second on reads happening for root group Above will put a limit of 1MB/second on reads happening for root group on device having major/minor number 8:16. on device having major/minor number 8:16. Loading @@ -90,7 +90,7 @@ Throttling/Upper Limit policy 1024+0 records out 1024+0 records out 4194304 bytes (4.2 MB) copied, 4.0001 s, 1.0 MB/s 4194304 bytes (4.2 MB) copied, 4.0001 s, 1.0 MB/s Limits for writes can be put using blkio.write_bps_device file. Limits for writes can be put using blkio.throttle.write_bps_device file. Hierarchical Cgroups Hierarchical Cgroups ==================== ==================== Loading Loading @@ -286,28 +286,28 @@ Throttling/Upper limit policy files specified in bytes per second. Rules are per deivce. Following is specified in bytes per second. Rules are per deivce. Following is the format. the format. echo "<major>:<minor> <rate_bytes_per_second>" > /cgrp/blkio.read_bps_device echo "<major>:<minor> <rate_bytes_per_second>" > /cgrp/blkio.throttle.read_bps_device - blkio.throttle.write_bps_device - blkio.throttle.write_bps_device - Specifies upper limit on WRITE rate to the device. IO rate is - Specifies upper limit on WRITE rate to the device. IO rate is specified in bytes per second. Rules are per deivce. Following is specified in bytes per second. Rules are per deivce. Following is the format. the format. echo "<major>:<minor> <rate_bytes_per_second>" > /cgrp/blkio.write_bps_device echo "<major>:<minor> <rate_bytes_per_second>" > /cgrp/blkio.throttle.write_bps_device - blkio.throttle.read_iops_device - blkio.throttle.read_iops_device - Specifies upper limit on READ rate from the device. IO rate is - Specifies upper limit on READ rate from the device. IO rate is specified in IO per second. Rules are per deivce. Following is specified in IO per second. Rules are per deivce. Following is the format. the format. echo "<major>:<minor> <rate_io_per_second>" > /cgrp/blkio.read_iops_device echo "<major>:<minor> <rate_io_per_second>" > /cgrp/blkio.throttle.read_iops_device - blkio.throttle.write_iops_device - blkio.throttle.write_iops_device - Specifies upper limit on WRITE rate to the device. IO rate is - Specifies upper limit on WRITE rate to the device. IO rate is specified in io per second. Rules are per deivce. Following is specified in io per second. Rules are per deivce. Following is the format. the format. echo "<major>:<minor> <rate_io_per_second>" > /cgrp/blkio.write_iops_device echo "<major>:<minor> <rate_io_per_second>" > /cgrp/blkio.throttle.write_iops_device Note: If both BW and IOPS rules are specified for a device, then IO is Note: If both BW and IOPS rules are specified for a device, then IO is subjectd to both the constraints. subjectd to both the constraints. Loading Documentation/feature-removal-schedule.txt +22 −0 Original line number Original line Diff line number Diff line Loading @@ -583,3 +583,25 @@ Why: Superseded by the UVCIOC_CTRL_QUERY ioctl. Who: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Who: Laurent Pinchart <laurent.pinchart@ideasonboard.com> ---------------------------- ---------------------------- What: For VIDIOC_S_FREQUENCY the type field must match the device node's type. If not, return -EINVAL. When: 3.2 Why: It makes no sense to switch the tuner to radio mode by calling VIDIOC_S_FREQUENCY on a video node, or to switch the tuner to tv mode by calling VIDIOC_S_FREQUENCY on a radio node. This is the first step of a move to more consistent handling of tv and radio tuners. Who: Hans Verkuil <hans.verkuil@cisco.com> ---------------------------- What: Opening a radio device node will no longer automatically switch the tuner mode from tv to radio. When: 3.3 Why: Just opening a V4L device should not change the state of the hardware like that. It's very unexpected and against the V4L spec. Instead, you switch to radio mode by calling VIDIOC_S_FREQUENCY. This is the second and last step of the move to consistent handling of tv and radio tuners. Who: Hans Verkuil <hans.verkuil@cisco.com> ---------------------------- Loading
CREDITS +1 −1 Original line number Original line Diff line number Diff line Loading @@ -518,7 +518,7 @@ N: Zach Brown E: zab@zabbo.net E: zab@zabbo.net D: maestro pci sound D: maestro pci sound M: David Brownell N: David Brownell D: Kernel engineer, mentor, and friend. Maintained USB EHCI and D: Kernel engineer, mentor, and friend. Maintained USB EHCI and D: gadget layers, SPI subsystem, GPIO subsystem, and more than a few D: gadget layers, SPI subsystem, GPIO subsystem, and more than a few D: device drivers. His encouragement also helped many engineers get D: device drivers. His encouragement also helped many engineers get Loading
Documentation/Changes +18 −25 Original line number Original line Diff line number Diff line Loading @@ -2,13 +2,7 @@ Intro ===== ===== This document is designed to provide a list of the minimum levels of This document is designed to provide a list of the minimum levels of software necessary to run the 2.6 kernels, as well as provide brief software necessary to run the 3.0 kernels. instructions regarding any other "Gotchas" users may encounter when trying life on the Bleeding Edge. If upgrading from a pre-2.4.x kernel, please consult the Changes file included with 2.4.x kernels for additional information; most of that information will not be repeated here. Basically, this document assumes that your system is already functional and running at least 2.4.x kernels. This document is originally based on my "Changes" file for 2.0.x kernels This document is originally based on my "Changes" file for 2.0.x kernels and therefore owes credit to the same people as that file (Jared Mauch, and therefore owes credit to the same people as that file (Jared Mauch, Loading @@ -22,11 +16,10 @@ Upgrade to at *least* these software revisions before thinking you've encountered a bug! If you're unsure what version you're currently encountered a bug! If you're unsure what version you're currently running, the suggested command should tell you. running, the suggested command should tell you. Again, keep in mind that this list assumes you are already Again, keep in mind that this list assumes you are already functionally functionally running a Linux 2.4 kernel. Also, not all tools are running a Linux kernel. Also, not all tools are necessary on all necessary on all systems; obviously, if you don't have any ISDN systems; obviously, if you don't have any ISDN hardware, for example, hardware, for example, you probably needn't concern yourself with you probably needn't concern yourself with isdn4k-utils. isdn4k-utils. o Gnu C 3.2 # gcc --version o Gnu C 3.2 # gcc --version o Gnu make 3.80 # make --version o Gnu make 3.80 # make --version Loading Loading @@ -114,12 +107,12 @@ Ksymoops If the unthinkable happens and your kernel oopses, you may need the If the unthinkable happens and your kernel oopses, you may need the ksymoops tool to decode it, but in most cases you don't. ksymoops tool to decode it, but in most cases you don't. In the 2.6 kernel it is generally preferred to build the kernel with It is generally preferred to build the kernel with CONFIG_KALLSYMS so CONFIG_KALLSYMS so that it produces readable dumps that can be used as-is that it produces readable dumps that can be used as-is (this also (this also produces better output than ksymoops). produces better output than ksymoops). If for some reason your kernel If for some reason your kernel is not build with CONFIG_KALLSYMS and is not build with CONFIG_KALLSYMS and you have no way to rebuild and you have no way to rebuild and reproduce the Oops with that option, then reproduce the Oops with that option, then you can still decode that Oops you can still decode that Oops with ksymoops. with ksymoops. Module-Init-Tools Module-Init-Tools ----------------- ----------------- Loading Loading @@ -261,8 +254,8 @@ needs to be recompiled or (preferably) upgraded. NFS-utils NFS-utils --------- --------- In 2.4 and earlier kernels, the nfs server needed to know about any In ancient (2.4 and earlier) kernels, the nfs server needed to know client that expected to be able to access files via NFS. This about any client that expected to be able to access files via NFS. This information would be given to the kernel by "mountd" when the client information would be given to the kernel by "mountd" when the client mounted the filesystem, or by "exportfs" at system startup. exportfs mounted the filesystem, or by "exportfs" at system startup. exportfs would take information about active clients from /var/lib/nfs/rmtab. would take information about active clients from /var/lib/nfs/rmtab. Loading @@ -272,11 +265,11 @@ which is not always easy, particularly when trying to implement fail-over. Even when the system is working well, rmtab suffers from fail-over. Even when the system is working well, rmtab suffers from getting lots of old entries that never get removed. getting lots of old entries that never get removed. With 2.6 we have the option of having the kernel tell mountd when it With modern kernels we have the option of having the kernel tell mountd gets a request from an unknown host, and mountd can give appropriate when it gets a request from an unknown host, and mountd can give export information to the kernel. This removes the dependency on appropriate export information to the kernel. This removes the rmtab and means that the kernel only needs to know about currently dependency on rmtab and means that the kernel only needs to know about active clients. currently active clients. To enable this new functionality, you need to: To enable this new functionality, you need to: Loading
Documentation/CodingStyle +2 −2 Original line number Original line Diff line number Diff line Loading @@ -680,8 +680,8 @@ ones already enabled by DEBUG. Chapter 14: Allocating memory Chapter 14: Allocating memory The kernel provides the following general purpose memory allocators: The kernel provides the following general purpose memory allocators: kmalloc(), kzalloc(), kcalloc(), and vmalloc(). Please refer to the API kmalloc(), kzalloc(), kcalloc(), vmalloc(), and vzalloc(). Please refer to documentation for further information about them. the API documentation for further information about them. The preferred form for passing a size of a struct is the following: The preferred form for passing a size of a struct is the following: Loading
Documentation/cgroups/blkio-controller.txt +6 −6 Original line number Original line Diff line number Diff line Loading @@ -77,7 +77,7 @@ Throttling/Upper Limit policy - Specify a bandwidth rate on particular device for root group. The format - Specify a bandwidth rate on particular device for root group. The format for policy is "<major>:<minor> <byes_per_second>". for policy is "<major>:<minor> <byes_per_second>". echo "8:16 1048576" > /sys/fs/cgroup/blkio/blkio.read_bps_device echo "8:16 1048576" > /sys/fs/cgroup/blkio/blkio.throttle.read_bps_device Above will put a limit of 1MB/second on reads happening for root group Above will put a limit of 1MB/second on reads happening for root group on device having major/minor number 8:16. on device having major/minor number 8:16. Loading @@ -90,7 +90,7 @@ Throttling/Upper Limit policy 1024+0 records out 1024+0 records out 4194304 bytes (4.2 MB) copied, 4.0001 s, 1.0 MB/s 4194304 bytes (4.2 MB) copied, 4.0001 s, 1.0 MB/s Limits for writes can be put using blkio.write_bps_device file. Limits for writes can be put using blkio.throttle.write_bps_device file. Hierarchical Cgroups Hierarchical Cgroups ==================== ==================== Loading Loading @@ -286,28 +286,28 @@ Throttling/Upper limit policy files specified in bytes per second. Rules are per deivce. Following is specified in bytes per second. Rules are per deivce. Following is the format. the format. echo "<major>:<minor> <rate_bytes_per_second>" > /cgrp/blkio.read_bps_device echo "<major>:<minor> <rate_bytes_per_second>" > /cgrp/blkio.throttle.read_bps_device - blkio.throttle.write_bps_device - blkio.throttle.write_bps_device - Specifies upper limit on WRITE rate to the device. IO rate is - Specifies upper limit on WRITE rate to the device. IO rate is specified in bytes per second. Rules are per deivce. Following is specified in bytes per second. Rules are per deivce. Following is the format. the format. echo "<major>:<minor> <rate_bytes_per_second>" > /cgrp/blkio.write_bps_device echo "<major>:<minor> <rate_bytes_per_second>" > /cgrp/blkio.throttle.write_bps_device - blkio.throttle.read_iops_device - blkio.throttle.read_iops_device - Specifies upper limit on READ rate from the device. IO rate is - Specifies upper limit on READ rate from the device. IO rate is specified in IO per second. Rules are per deivce. Following is specified in IO per second. Rules are per deivce. Following is the format. the format. echo "<major>:<minor> <rate_io_per_second>" > /cgrp/blkio.read_iops_device echo "<major>:<minor> <rate_io_per_second>" > /cgrp/blkio.throttle.read_iops_device - blkio.throttle.write_iops_device - blkio.throttle.write_iops_device - Specifies upper limit on WRITE rate to the device. IO rate is - Specifies upper limit on WRITE rate to the device. IO rate is specified in io per second. Rules are per deivce. Following is specified in io per second. Rules are per deivce. Following is the format. the format. echo "<major>:<minor> <rate_io_per_second>" > /cgrp/blkio.write_iops_device echo "<major>:<minor> <rate_io_per_second>" > /cgrp/blkio.throttle.write_iops_device Note: If both BW and IOPS rules are specified for a device, then IO is Note: If both BW and IOPS rules are specified for a device, then IO is subjectd to both the constraints. subjectd to both the constraints. Loading
Documentation/feature-removal-schedule.txt +22 −0 Original line number Original line Diff line number Diff line Loading @@ -583,3 +583,25 @@ Why: Superseded by the UVCIOC_CTRL_QUERY ioctl. Who: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Who: Laurent Pinchart <laurent.pinchart@ideasonboard.com> ---------------------------- ---------------------------- What: For VIDIOC_S_FREQUENCY the type field must match the device node's type. If not, return -EINVAL. When: 3.2 Why: It makes no sense to switch the tuner to radio mode by calling VIDIOC_S_FREQUENCY on a video node, or to switch the tuner to tv mode by calling VIDIOC_S_FREQUENCY on a radio node. This is the first step of a move to more consistent handling of tv and radio tuners. Who: Hans Verkuil <hans.verkuil@cisco.com> ---------------------------- What: Opening a radio device node will no longer automatically switch the tuner mode from tv to radio. When: 3.3 Why: Just opening a V4L device should not change the state of the hardware like that. It's very unexpected and against the V4L spec. Instead, you switch to radio mode by calling VIDIOC_S_FREQUENCY. This is the second and last step of the move to consistent handling of tv and radio tuners. Who: Hans Verkuil <hans.verkuil@cisco.com> ----------------------------