Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 87045b03 authored by James Bottomley's avatar James Bottomley
Browse files

Merge branch 'scsi-fixes'

parents 0d83ab65 bfe159a5
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -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
+18 −25
Original line number Original line Diff line number Diff line
@@ -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,
@@ -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
@@ -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
-----------------
-----------------
@@ -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.
@@ -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:


+2 −2
Original line number Original line Diff line number Diff line
@@ -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:


+6 −6
Original line number Original line Diff line number Diff line
@@ -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.
@@ -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
====================
====================
@@ -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.
+22 −0
Original line number Original line Diff line number Diff line
@@ -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