Age | Commit message (Collapse) | Author | Files | Lines |
|
Some people found some bugs and some missing functions in the IPMI driver,
so I have patching things together for the next release. The attached
patch moves to version 33 of the driver and contains:
* SMBIOS table support for specifying register spacing. This allows
non-contiguous registers to be specified and some machines do
this.
* ACPI table updates to support all the possible register sizes and
bit offsets into the registers for the IPMI information.
* Support for command line parameters to specify register
spacing, sizes, and bit offsets.
* Support for power control with IPMI. This allows a halt to
power down a machine with IPMI.
* A fix for a race condition with interrupts enabled on an
SMP machine. A lock was released then reclaimed, but
there was code later that assumed that had not happened.
* A fix for protecting the driver against bad responses from
the controller chip. In the past, the driver had assumed that
the controller chip would not give it bad data. This has
turned out to be a bad assumption
* ACPI interrupt handlers now return a return value, adjust
accordingly.
Thank you to all the people who helped me with this.
Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Makes the IPMI watchdog more consistent with the other watchdog drivers.
I have tested this and it seems to work correctly. I also added docs for
the interface change.
- support disabling watchdog by writing 'V' to device.
- unify printk()
- use atomic bit operations on ipmi_wdog_open
Signed-off-by: Arkadiusz Miskiewicz <arekm@pld-linux.org>
Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
The APIC and IO-APIC code is very verbose on startup especially on SMP
machines. This patch allows the verbosity of the APIC code to be controlled
through the boot-time option apic= using three levels: quiet, verbose and
debug. The default level is quiet.
Signed-off-by: Mark Broadbent <markb@wetlettuce.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Adds documentation of the PPC noltlbs and nobats kernel cmdline parameters.
noltlbs is a new option and nobats never had an entry.
Signed-off-by: Matt Porter <mporter@kernel.crashing.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
I made a patch for debugging with the help of NMI trigger switch.
When kernel hangs severely, keyboard operation(e.g.Ctrl-Alt-Del)
doesn't work properly. This patch enables debugging information
to be displayed on console in this case.
I think this feature is necessary as standard functionality.
Please feel free to use this patch and let me know if you have
any comments.
Background:
When a trouble occurs in kernel, we usually begin to investigate
with following information:
- panic >> panic message.
- oops >> CPU registers and stack trace.
- hang >> **NONE** no standard method established.
How it works:
Most IA32 servers have a NMI switch that fires NMI interrupt up.
The NMI interrupt can interrupt even if kernel is serious state,
for example deadlock under the interrupt disabled.
When the NMI switch is pressed after this feature is activated,
CPU registers and stack trace are displayed on console and then
panic occurs.
This feature is activated or deactivated with sysctl.
On IA32 architecture, only the following are defined as reason
of NMI interrupt:
- memory parity error
- I/O check error
The reason code of NMI switch is not defined, so this patch assumes
that all undefined NMI interrupts are fired by MNI switch.
However, oprofile and NMI watchdog also use undefined NMI interrupt.
Therefore this feature cannot be used at the same time with oprofile
and NMI watchdog. This feature hands NMI interrupt over to oprofile
and NMI watchdog. So, when they have been activated, this feature
doesn't work even if it is activated.
Supported architecture:
IA32
Setup:
Set up the system control parameter as follows:
# sysctl -w kernel.unknown_nmi_panic=1
kernel.unknown_nmi_panic = 1
If the NMI switch is pressed, CPU registers and stack trace will
be displayed on console and then panic occurs.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
Fix example program in pcwd-watchdog.txt document.
|
|
|
|
Patch from Ben Dooks
Attached is a couple of initial help documents for the
s3c2410, under Documents/arm/Samsung-S3C24XX
|
|
- __PAGE_OFFSET is 0x10000000 (Randolph Chung)
- PA8800 support (Grant Grundler)
- debuglocks (Thibaut Varene)
- PDC chassis disabling (Thibaut Varene)
- Distinguish between Dinos in request_irq (Thibaut Varene)
- Document interrupt registers (Randolph Chung)
- Revamp CONFIG_DISCONTIGMEM support (Randolph Chung)
- Remove STI console warning and special casing (Randolph Chung)
- n4000 defconfig (Randolph Chung)
- iosapic fixes (Bjorn Helgaas)
- Fix a bug in entry.S where pa_dbit_lock was being trashed (Randolph Chung)
- SMP support (Randolph Chung, Grant Grundler, James Bottomley)
- Clear the pte in the fault handler (Joel Soete)
- Change _exit prototype (Carlos O'Donell)
- Better unwinding support (Randolph Chung)
- GCC 3.4 fixes (Carlos O'Donell, Randolph Chung)
|
|
The newly introduced ->fcntl file_operation is badly thought out,
not to mention undocumented. This patch replaces it with two better
defined operations -- check_flags and dir_notify. Any other fcntl()s
that filesystems are interested in can have their own properly typed
f_op method when they need it.
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
into kernel.bkbits.net:/home/davem/net-2.6
|
|
It's causing massive user confusion, and breaks installers by
mounting the filesystem read-only.
Cset exclude: hirofumi@mail.parknet.co.jp[torvalds]|ChangeSet|20040802210150|02337
|
|
Signed-off-by: Aaron Grothe <ajgrothe@yahoo.com>
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
|
|
The old ones were not only hard to use, they were in fact
impossible or a low-level sound driver to get right, since
the core sound code didn't even export all the necessary
information.
Add the file offset to the /proc read interfaces, and make
them simpler to use. The core now does a offset updates, and
sanity-checks the values so that the low-level drivers don't
need to worry.
|
|
This code is a rework of the original Gladman AES code, and does not
include any supposed BSD licensed work by Jari Ruusu.
Linus converted the Intel asm to Gas format, and made some minor
alterations.
Fruhwirth's glue module has also been retained, although I rebased the
table generation and key scheduling back to Gladman's code. I've tested
this code with some standard FIPS test vectors, and large FTP transfers
over IPSec (both locally and over the wire to a system running the
generic AES implementation).
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
This patch reverts the i586 AES module. A new one should be ready soon.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Previously, fatfs was using NLS_DEFAULT if users didn't specify the
codepage or iocharset option. This became cause of trouble (filename
access).
This patch removes the complicated default config in kernel.
Instead of it, by default, fatfs uses builtin nls ("default"), also reports
it and mounts as read-only. This default will limit the access more or
less. Note: If peoples want to write on this default, it still can switch
by remount.
Therefore, basically users will need to specify mount options always.
("codepage" for msdos, and "codepage" and "iocharset" for vfat) However, it
can be done simply by script or shell alias or something else in userland.
Thanks to Andries Brouwer for your many advice.
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Below is a patch by Hans Ulrich Niedermann
<linux-kernel@n-dimensional.de> to change all references in comments to
files in Documentation/ to start with Documentation/
Signed-off-by: Adrian Bunk <bunk@fs.tum.de>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Sync nmi_watchdog.txt with reality on x86-64.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
The "vector" terminology is architecture-dependent. The PCI MSI interface
actually deals with Linux IRQ numbers (i.e., things you can pass to
request_irq()), and we shouldn't confuse things by calling them "vectors" just
because we're using MSI rather than an IOSAPIC.
Signed-off-by: Bjorn Helgaas <bjorn.helgaas@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Second half of MSI rewrite: fix the API and update documentation. Split
enabling MSI and MSI-X to separate pci_enable_msi()/pci_disable_msi() and
pci_enable_msix()/pci_disable_msix() functions. free_irq() no longer has
the side effect of freeing interrupt vectors (so a device driver can do
multiple request_irq()/free_irq() cycles on the same MSI/MSI_X vector).
From: Tom L. Nguyen <tom.l.nguyen@intel.com>
Signed-off-by: Roland Dreier <roland@topspin.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Below is an updated version of patch from Fruhwirth which integrates the
Gladman AES code into the crypto API.
I've tried to ensure that this is done as simply as possible: the user
gets the asm version by default if it's suitable.
I've also now added the alternate GPL licensing provided by Brian Gladman,
and licensed the code as GPL.
Signed-off-by: James Morris <jmorris@redhat.com>
Signed-off-by: David S. Miller <davem@redhat.com>
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
into nuts.davemloft.net:/disk1/BK/sparc-2.6
|
|
Spotted by Jack Spaar <jspaar@myrealbox.com>
Signed-off-by: David S. Miller <davem@redhat.com>
|
|
LITE5200 platform
Signed-off-by: Sylvain Munaut <tnt@246tNt.com>
|
|
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Convert ipmi_watchdog to also use module option `nowayout' as is done in
other watchdog drivers.
From: Corey Minyard <cminyard@mvista.com>
The patch is good (same style as other watchdogs), but needs to have
some documentation updated. I've tacked that on.
Signed-off-by: Arkadiusz Miskiewicz <arekm@pld-linux.org>
Signed-off-by: Corey Minyard <minyard@acm.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: Jan Topinski <simcha@chatka.org>
Add support to automatically disable laptop mode when the battery almost
runs out. This prevents data loss when the battery actually runs out.
Signed-off-by: Bart Samwel <bart@samwel.tk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: Bart Samwel <bart@samwel.tk>
A bunch of small laptop mode updates:
* Mention the laptop_mode and block_dump sysctls in the relevant docs,
referring to the laptop-mode.txt. Improve description of what the
laptop_mode knob means (i.e. seconds between last I/O and automatic
sync).
* Document the most relevant config file options.
* Change the installation instructions in the laptop mode doc to describe
the ACPI-bound version first, because this is the easiest. Explain
the non-ACPI version afterwards. Added a reference to my "packaged
version" of the scripts.
* Move the setting of hdparm and cpu frequency out of the ACPI script
and into the core laptop mode script. Add config option DO_HD to
enable hdparm. Add config setting HD to set device to do hdparm on.
Rename Dax's CPU_MANAGE to DO_CPU, with 0/1 instead of yes/no, to
improve consistency.
* Fix a problem where the root filesystem wouln't be remounted when
/etc/mtab listed its type as "unknown". Deduce the type of "unknown"
filesystems from /etc/fstab.
This depends on the patch that adds config files, which was submitted
to Linus by Dax Kelson on July 10.
Signed-off-by: Bart Samwel <bart@samwel.tk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: Dax Kelson <dax@gurulabs.com>
Add support for a external configuration file for /sbin/laptop_mode, and
/etc/acpi/actions/battery.sh. Convert battery.sh to use CPUFreq (off by
default) instead of CPU throttling (that was off by default).
Cleanup some formating for 80 columns.
All changes were written by me on a plane flight from Philadelphia to Salt
Lake City on July 9th. :)
(Note from Bart Samwel: was submitted to Linus earlier, this patch is
unchanged from that. I needed to submit this into -mm for now because my
other changes are dependent on Dax's changes.)
Signed-off-by: Bart Samwel <bart@samwel.tk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
* include/asm-ppc64/hvcserver.h
New file added to wrap ppc64 architecture specific firmware calls for
use by HVCS. This file provides a struct hvcs_partner_info definition,
headers for partner info gathering and vterm connection and termination
interfaces.
* arch/ppc64/kernel/Makefile
Added build directive for hvcserver.o when HVCS is configured.
* arch/ppc64/kernel/hvconsole.c
Exported hvc_put_chars() and hvc_get_chars() for use by HVCS.
* arch/ppc64/kernel/hvcserver.c
Body of hvcserver module which accompanies the hvcs module and provides
ppc64 architecture firmware calls for use by HVCS. This file provides
function bodies for partner info gathering and vterm connection and
termination interfaces.
* drivers/char/Kconfig
Added CONFIG_HVCS option for both built-in version and module version
of hvcs.
* drivers/char/Makefile
Added build directive for hvcs.o when CONFIG_HVCS is configured.
* drivers/char/hvcs.c
This is the device driver for the IBM Hypervisor Virtual Console
Server, "hvcs". The IBM hvcs provides a tty driver interface to allow
Linux user space applications access to the system consoles of logically
partitioned operating systems, e.g. Linux, running on the same
partitioned Power5 ppc64 system. Physical hardware consoles per
partition are not practical on this hardware so system consoles are
accessed by this driver using inter-partition firmware interfaces to
virtual terminal devices.
* Documentation/powerpc/hvcs.txt
HVCS installation and usage documentation.
Thanks everyone for all the help with this driver [Andrew Morton, Paul
Mackerras, Ben Herrenschmidt, Dave Hansen, Paul Mackerras, Dave Boutcher,
Hollis Blanchard, Santiago Leon, Brian King, Randy Dunlap].
Signed-off-by: Ryan S. Arnold <rsa@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
foo1.patch: spelling correction in Makefile
foo2.patch: replace SUBDIRS with M in Documentation/kbuild/modules.txt
From: Kornilios Kourtis <kkourt@cslab.ece.ntua.gr>
Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
|
|
Patch for our console driver. We converted the driver to use the serial
core functions. Also some changes to use sysfs/udev and a new major
number.
Cc: Jesse Barnes <jbarnes@engr.sgi.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
|
|
This single patch contains some updates and cleanups for
the W996[87]CF driver and a new experimental V4L2 driver
for SONiX SN9C10[12] PC Camera Controllers connected to various
image sensors. I have not divided the patch in two logical
sub-patches becouse of two independent changes in one common
file, KConfigure.
More informations about the SN9C10[12] can be found below in the
documentation. The driver is marked as "EXPERIMENTAL", meaning
that there are no known bugs, but further testing is necessary
before considering it stable. This the first driver using the new
SBGGR8 video format, which has been recently added to the mainline
kernel, so there are no available user application at the moment:
this is one more reason why it should be in the kernel now.
Changes in W996[87]CF:
- remove w9968cf_externaldef.h now that ovcamchip.h is in the kernel;
- mark user pointers with __user in a cleaner way to avoid sparse
warnings;
- use appropriate exclusive wait macro during open();
- replace info(), err(), warn() with dev_info(), dev_err(), dev_warn(),
pr_debug(), pr_info();
- replace usb_unlink_urb() + wait_for_completion() with usb_kill_urb();
- fix memory offsets for buffers in the chip to be used with generic
image sensors;
- 'vppmod_load', 'debug', 'specific_debug' and 'simcams' module
parameters are now writeable by default;
- fix possible race conditions between disconnect() and open();
- add automatic 'ovcamchip' module loading option with 'ovmod_load'
module parameter;
- get rid of deprecated intermodule communication routines and use the
correct module registration/unregistration approach;
- remove period at the end of kernel messages;
- fix several typos;
- use MODULE_VERSION() macro;
- other small internal cleanups;
- documentation updates.
Signed-off-by: Luca Risolia <luca.risolia@studio.unibo.it>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
|
|
This patch is a slightly revised version of as277c, updated to match the
current source. The only difference from the older version is that this
makes urb->use_count into an atomic_t, to avoid the overhead of an extra
locking step each time an URB is submitted and given back. The important
features of this patch are:
-EPERM added to Documentation/usb/error-codes.txt.
Failure to use URB_ASYNC_UNLINK with usb_unlink_urb() is
deprecated in the documentation.
New ->reject and ->use_count fields added to struct urb.
The reject field is protected by urb->lock, and locking is
required only in usb_kill_urb() which doesn't have to be fast.
Single wait_queue used for all processes waiting inside
usb_kill_urb(). The wait queue is woken up only when an URB
is given back with ->reject set.
usb_rh_status_dequeue() changed to return int. It looks like
this function should be declared static; it's not used outside
the hcd.c file.
Prototype for unlink_urb() in struct usb_operations is changed
to include a status code argument. This is necessary so that
the different unlink paths can return -ENOENT and -ECONNRESET
as appropriate.
Support for synchronous usb_unlink_urb() has been removed;
such calls are passed to usb_kill_urb().
Kerneldoc for usb_unlink_urb() is updated.
usb_kill_urb() added to urb.c.
hc_simple() host driver is partially updated -- it should
compile but it won't really work right.
Signed-off-by: Alan Stern <stern@rowland.harvard.edu>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
|
|
into kroah.com:/home/greg/linux/BK/i2c-2.6
|
|
This patch adds an architecture-specific callout after explicit
processor migrations. The callout allows architectures (or platforms)
to update TLB specific information (ex., cpu_vm_mask).
Signed-off-by: Jack Steiner <steiner@sgi.com>
Signed-off-by: David Mosberger <davidm@hpl.hp.com>
|
|
Signed-off-by: OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Here's a patch that I worked out with Al Viro that adds support for a
filesystem (such as kAFS) to perform automounting intrinsically without the
need for a userspace daemon. It also adds support for such mountpoints to be
degraded at the filesystem's behest until they've been untouched long enough
that they'll be removed.
I've a patch (to follow) that removes some #ifdef's from fs/afs/* thus
allowing it to make use of this facility.
There are five pieces to this:
(1) Any interested filesystem needs to have at least one list to which
expirable mountpoints can be added.
Access to this list is governed by the vfsmount_lock.
(2) When a filesystem wants to create an expirable mount, it calls
do_kern_mount() to get a handle on the filesystem it wants mounting, and
then calls do_add_mount() to mount that filesystem on the designated
mountpoint, supplying the list mentioned in (1) to which the vfsmount
will be added.
In kAFS's case, the mountpoint is a directory with a follow_link() method
defined (fs/afs/mntpt.c). This uses the struct nameidata supplied as an
argument as a determination of where the new filesystem should be
mounted.
(3) When something using a vfsmount finishes dealing with it, it calls
mntput(). This unmarks the vfsmount for immediate expiry.
There are two criteria for determining if a vfsmount may be expired - it
mustn't be marked as in use for anything other than being a child of
another vfsmount, and it must have an expiry mark against it already.
(4) The filesystem then determines the policy on expiring the mounts created
in (2). When it feels the need to, it passes the list mentioned in (1) to
mark_mounts_for_expiry() to request everything on the list be expired.
This function examines each mount listed. If the vfsmount meets the
criteria mentioned in (3), then the vfsmount is deleted from the
namespace and disposed of as for unmounting; otherwise the vfsmount is
left untouched apart from now bearing an expiration mark if it didn't
before.
kAFS's expiration policy is simply to invoke this process at regular
intervals for all the mounts on its list.
(5) An expiration facility is also provided to userspace: by calling umount()
with a MNT_EXPIRE flag, it can make a request to unmount only if the
mountpoint hasn't been used since the last request and isn't in use now.
This allows expiration to be driven by userspace instead of by the
kernel if that is desirable.
This also means that do_umount() has to use a different version of
path_release() to everyone else... it can't call mntput() as that clears
the expiration flag, thus rendering this unachievable; so it's version of
path_release() calls _mntput(), which doesn't do the clear.
My original idea was to give the kernel more knowledge of automounted
things. This avoids a certain problem with stat() on a mountpoint causing it
to mount (for example, do "ls -l /afs" on a machine with kAFS), but Al wanted
it done this way.
> Why is autofs unsuitable?
Because:
(1) Autofs is flat; AFS requires a tree - mounts on mounts on mounts on
mounts...
(2) AFS holds the data as to what the mountpoints are and where they go, and
these may be cross-links to subtrees beyond your control. It's also not
trivial to extract a list of mountpoints as is required for autofs.
(3) Autofs is not namespace safe.
(4) Ducking back to userspace to get that to do the mount is pretty tricky if
namespaces are involved.
In fact, autofs may well want to make use of this facility.
Signed-Off-By: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
> > This also raises a question about Documentation/i2c/i2c-pport.
> > Should we keep a document about a driver which is not in the kernel
> > tree (and hasn't even been ported to 2.6 yet)?
>
> No we should not.
Signed-off-by: Jean Delvare <khali at linux-fr dot org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
|
|
At least, the i2c-parport gets some documentation. I heard several
persons complaining that there was no sample electronics schema for
building their own i2c-over-parallel-port, so I did just that, with the
help of Sylvain Munaut. The documentation also includes the list of
supported adapters, and a short comparison with other drivers using the
parallel port to drive an i2c bus. At the end of the document I included
an updated version of the i2c-velleman doc file (which I then deleted).
Signed-off-by: Jean Delvare <khali at linux-fr dot org>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
|
|
allowdma0 is gone in 2.6, the patch below removes the mentionings of this
option in the documentation.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
enables the writing of page cache pages belonging to mst protected
attributes like the index allocation attribute in directory indices
and other indices like $Quota/$Q, etc. This means that the quota is
now marked out of date on all volumes rather than only on ones where
the quota defaults entry is in the index root attribute of the
$Quota/$Q index.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
|
|
This patch implements dma_get_required_mask() which may be used by drivers
to probe the optimal DMA descriptor type they should be implementing on the
platform.
I've also tested it this time with the sym_2 driver...making it chose the
correct descriptors for the platform. (although I don't have a 64 bit
platform with >4GB memory, so I only confirmed it selects the 32 bit
descriptors all the time...)
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Currently, the x86/x86_64 real-mode kernel setup code reads and stores the
mbr_signature (4 bytes in the MBR at offset 440 decimal) for BIOS int13h
device 80h only. This is useful, but not as useful as if we stored such
signatures for all int13h devices. Think OS installer wanting to set up md
software RAID across several BIOS disks.
Patch below against 2.6.7 allows the storing of the mbr_signature for the
first 16 BIOS int13h devices, and exports them via
/sys/firmware/edd/int13_dev8x/mbr_signature as before.
This also merges the three EXPORT_SYMBOLs that setup.c exported for edd.c's
use into one.
Signed-off-by: Matt Domsch <Matt_Domsch@dell.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
into kroah.com:/home/greg/linux/BK/usb-2.6
|
|
|
|
From: Herve Eychenne <rv@eychenne.org>
Clean up the script. This also makes it two times faster. (Thanks to
Herve Eychenne.)
- moved variable definitions to the top, for easier configuration
- the script contains bashisms, so make it /bin/bash
- use sed -e'...' -e '...' instead of sed | sed
- avoid subshells: () changed to {}
- various other minor optimizations and improvements
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
The laptop mode docs don't say that no kernel configuration changes are
needed to use laptop mode. That's caused some people to look for the
option. This patch makes the doc explicitly mention the lack of an option.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
I eliminated the request_irq brain damage, chopped off procfs support
(didn't care for it too much in the first place and it was adopted from
rtc.c), made the check for FMODE_WRITE in hpet_open and responded to a few
other suggestions.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
|
|
into kroah.com:/home/greg/linux/BK/pci-2.6
|
|
Attached you will find patches that will bring the PWC driver in the kernel
up to version 9.0.1 from 8.12 (9.0 wasn't accepted at first). Patches are
against 2.4.26 and 2.6.7. The main difference with 9.0 is that the
video_relase() routine is now hopefully in line with kernel requirements.
I've also added one more ioctl() call, upon request.
I'm also slightly in the dark on the status of the PWC in the 2.6 kernel;
I've seen two patches: the first was a bad one, since it would crash your
kernel when you unplug the cam. I've seen a second patch to reverse the
first one, but I don't know if that went in. Either way, you might get a
conflict in pwc-if.c in and about the pwc_video_release() routine; this
patch was generated against the clean 2.6.7 kernel source. Should you need
or want to fix it manually, this patch should remove the
pwc_video_release() in the 2.6 kernel.
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
|
|
From: Paul Mundt <lethal@Linux-SH.ORG>
This merges the remaining sh changes, random bug fixes, added syscalls, cache
fixups, etc. Nothing really eventful.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: Pavel Machek <pavel@ucw.cz>
I shot myself in the foot with swsusp, so I guess documenting that
particular trap is right thing to do (tm). Somehow two copies of "radeon
hint" crept in; fix that, too.
Signed-off-by: Pavel Machek <pavel@suse.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: bert hubert <ahu@ds9a.nl>
Signed-off-by: bert hubert <ahu@ds9a.nl>
Signed-off-by: John Levon <levon@movementarian.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
From: Jesper Juhl <juhl-lkml@dif.dk>
Here's a small patch that lists X.Org as well as XFree86 in
Documentation/SubmittingDrivers in the section talking about video drivers.
Signed-off-by: Jesper Juhl <juhl-lkml@dif.dk>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Some people want the dentry and inode caches shrink harder, others want them
shrunk more reluctantly.
The patch adds /proc/sys/vm/vfs_cache_pressure, which tunes the vfs cache
versus pagecache scanning pressure.
- at vfs_cache_pressure=0 we don't shrink dcache and icache at all.
- at vfs_cache_pressure=100 there is no change in behaviour.
- at vfs_cache_pressure > 100 we reclaim dentries and inodes harder.
The number of megabytes of slab left after a slocate.cron on my 256MB test
box:
vfs_cache_pressure=100000 33480
vfs_cache_pressure=10000 61996
vfs_cache_pressure=1000 104056
vfs_cache_pressure=200 166340
vfs_cache_pressure=100 190200
vfs_cache_pressure=50 206168
Of course, this just left more directory and inode pagecache behind instead of
vfs cache. Interestingly, on this machine the entire slocate run fits into
pagecache, but not into VFS caches.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
|
|
Requested by Promise. The hardware isn't widely deployed yet,
with almost all users being early evaluators, so this should be OK.
|
|
Move the anticipatory scheduler documentation into Documentation/block.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Document the deadline scheduler and its tunables.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
This contains hpfs fixes from my source ported to 2.6.7 kernel:
updates:
- allocator fragments files less
- OS/2 Warp Server filesystem can be mounted read/only
- added reschedule points so that it doesn't hog CPU
bug fixes:
- filesystem error message when syncing or fsyncing deleted file (or when
system just writes it on its own)
- filesystem error on extremly fragmented files
- corrupted disk structures could possibly corrupt memory
|
|
into mulgrave.(none):/home/jejb/BK/scsi-misc-2.6
|
|
|
|
The object of this infrastructure is to give HBAs early warning that
error handling is about to happen and also provide them with the
opportunity to do something about it.
It introduces the extra template callback:
eh_timed_out()
which scsi_times_out() will call if it is populated to notify the LLD
that an outstanding command took a timeout.
There are three possible returns:
EH_HANDLED: I've fixed the problem, please complete the command for me
(as soon as the timer fires, scsi_done will do nothing, so the timer
itself will call a special version of scsi_done that doesn't check the
timer).
EH_NOT_HANDLED: Invoke error recovery as normal
EH_RESET_TIMER: The command will complete, reset the timer to its
original value and start it ticking again.
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Based on work by Christoph Hellwig and Luben Tuikov
|
|
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
This cset adds the code to handle the hardware vector floating point
unit found on some ARM926 and later CPUs. The hardware provides
an implementation for the common cases, and bounces exceptions for
other cases, which have to be handled in software, and signalling
SIGFPE as appropriate.
|
|
|
|
Device-Mapper documentation.
Signed-off-by: Kevin Corry <kevcorry@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
attached is an update for the sisfb driver to version 1.7.10.
This update includes
- fixes for pure 64bit and 32/64bit mixed systems (add ioctl conversion;
fix variable sizes, etc; REQUIRED for current X.org/XFree86 on 64bit
systems, even if pure 64bit),
- fixes for 301C video bridge, (scales TV output correctly now)
- fixes for 1600x1200 and 1400x1050 LCD panels,
- many fixes for 661/741/760 (amongst others, proper LFB support for the
760 and corrections for SiS' new BIOS data layout; would lead to display
corruption with old driver)
- add support for many modes for LCD which were unsupported previously,
- add support for HiVision and YPbPr HDTV
- "vga=" statement now honoured properly (sisfb will set the same mode as
the kernel did by default)
- use LCD native resolution mode if no mode is given
- a major clean up of main driver code,
- radical removal of duplicate (or nearly duplicate) code,
- switched to 2.6 module_param macros,
- enhanced communication with the X driver,
- added eventual POSTing of SiS300/305 card for non-x86 archs,
- added ability to relocate the image on the TV screen using a userland
tool,
- added Documentation/fb/sisfb.txt (why the heck was this missing?!)
- small fix for SiS DRM driver (match 32/64bit fixes mentioned above)
(cast the data passed to sis_free as u32)
- make driver re-entrant by avoiding static structures and variables.
As usual, heavily tested. The mode switching code is even lab-tested by
SiS (although 100% written by me). Please apply asap (especially since
64bit systems were not properly supported previously; as mentioned, current
X.org/XFree86 needs this update for proper communication with the
framebuffer driver on 64bit systems. X crashes on such systems with the
old driver).
Signed-off-by: Thomas Winischhofer <thomas@winischhofer.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
The driver supports the High Precision Event Timer. The driver has adopted
a similar API to the Real Time Clock driver. It can support any number of
HPET devices and the maximum number of timers per HPET device. For further
information look at the documentation in the patch.
Thanks to Venki at Intel for testing the driver on X86 hardware with HPET.
HPET documentation is available at http://www.intel.com/design/chipsets/datashts/252516.htm
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
This patch allows for misc binaries to run with credentials and security
token that are calculated according to the binaries, and not according to the
interpreter, which is the legacy behavior of binfmt_misc.
The way it is done is by calling prepare_binprm, which is where these
attributes are calculated, before switching the 'file' field in the bprm from
the binary to the interpreter.
This feature should be used with care, since the interpreter will have root
permissions when running a setuid binary owned by root.
Please note -
- Only root can register an interpreter with binfmt_misc. The feature is
documented and the administrator is advised to handle it with care
- The new feature is enabled only with a special flag in the registration
string. When this flag is not specified the current behavior of
binfmt_misc is kept
- This is the only 'right' way for an interpreter to know the correct
AT_SECURE value for the interpreted binary
From: Chris Wright <chrisw@osdl.org>
This patchset looks OK, except for one problem. It installs the fd (which
could've been unreadable) without unsharing the ->files. So someone can use
this to read unreadable yet executable files. Here's a patch which fixes
that up. I added one bit that's commented out because I'm not positive if a
final steal_locks() is needed.
I did a fair amount of rearranging to simplify the error conditions
relative to the fd_install(), and unshare_files().
From: Chris Wright <chrisw@osdl.org>
I found that the intel patchset (and mine as well) leaked i_writecount on
the original executed file. In addition, I verified that the steal_locks()
bit is indeed needed.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
<background>
I work in a group that works on enabling the IA-32 Execution Layer
(http://www.intel.com/pressroom/archive/releases/20040113comp.htm) on Linux.
In a few words - this is a dynamic translator for IA-32 binaries on IPF
platform. Following David Mosberger's advice - we use the binfmt_misc
mechanism for the invocation of the translator whenever the user tries to
exec an IA-32 binary.
The EL is meant to help in the migration path from IA-32 to IPF. From our
beta customers we learnt that at first stage - they tend to keep their
environment mostly intact, using the legacy IA-32 binaries.
Such an environment has, naturally, setuid and non-readable binaries. It
will be useless to ask the administrator to change the settings of such an
environment - some of them are very complex, and the administrators are
reluctant to make any changes in a system that already proved itself to be
robust and secure. So, our target with these patches is not to enhance the
support for scripts but rather to allow a translator to be integrated into a
working environment that is not (and should not be) aware to the fact it's
being emulated.
As I said before - it is practically hopeless to expect an administrator of
such a system to change it so that it will suit the current behavior of
binfmt_misc. But, even if we could do that,
I'm not sure it would be a good idea - these changes are likely to be less
secure than the suggested patches -
- In order to execute non-readable binaries the binary will have to be made
readable, which is obviously less secure than allowing only a trusted
translator to read it
- There will be no way for the translator to calculate the accurate
AT_SECURE value for the translated process. This might end up with the
translated process running in a non-secured mode when it actually needs to
be secured.
</background>
I prepared a patch that solves a couple of problems that interpreters have
when invoked via binfmt_misc. currently -
1) such interpreters cannot open non-readable binaries
2) the processes will have their credentials and security attributes
calculated according to interpreter permissions and not those of the
original binary
the proposed patch solves these problems by -
1) opening the binary on behalf of the interpreter and passing its fd
instead of the path as argv[1] to the interpreter
2) calling prepare_binprm with the file struct of the binary and not the
one of the interpreter
The new functionality is enabled by adding a special flag to the registration
string. If this flag is not added then old behavior is not changed.
A preliminary version of this patch was sent to the list on 9/1/2003 with the
title "[PATCH]: non-readable binaries - binfmt_misc 2.6.0-test4". This new
version fixes the concerns that were raised by the patch, except of calling
unshare_files() before allocating a new fd. this is because this feature did
not enter 2.6 yet.
Arun Sharma <arun.sharma@intel.com> says:
We were going through an internal review of this patch:
http://marc.theaimsgroup.com/?l=linux-kernel&m=107424598901720&w=2
which is in your tree already. I'm not sure if this line of code got
sufficient review.
+ /* call prepare_binprm before switching to interpreter's file
+ * so that all security calculation will be done according to
+ * binary and not interpreter */
+ retval = prepare_binprm(bprm);
The case that concerns me is: unprivileged interpreter and a privileged
binary. One can use binfmt_misc to execute untrusted code (interpreter) with
elevated privileges. One could argue that all binfmt_misc interpreters are
trusted, because only root can register them. But that's a change from the
traditional behavior of binfmt_misc (and binfmt_script).
(Update):
Arun pointed out that calculating the process credentials according to the
binary that needs to be translated is a bit risky, since it requires the
administrator to pay extra attention not to register an interpreter which is
not intended to run with root credentials.
After discussing this issue with him, I would like to propose a modified
patch: The old patch did 2 things - 1) open the binary for reading and 2)
calculate the credentials according to the binary.
I removed the riskier part of changing the credentials calculation, so the
revised patch only opens the binary for reading. It also includes few words
of warning in the description of the 'open-binary' feature in
binfmt_misc.txt, and makes the function entry_status print the flags in use.
As for the 'credentials' part of the patch, I will prepare a separate patch
for it and send it again to the LKML, describe the problem and ask for people
comments.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
into pobox.com:/spare/repo/net-drivers-2.6
|
|
|
|
SDRAM
Patch from Marc Singer
[if's replaced by ifdef's.]
While the BLOB boot loader doesn't support it, there are two others,
UBOOT and Logic's LOLO, that will initialize the SDRAM controller such
that the memory appears as a contiguous region. This layout to be
required for WinCE and, thus, is the default for these loaders. The
memory organization had been optimized for discontiguous blocks. Now,
it supports a default mode that is compatible with all of the
bootloaders as well as options to optimize for either contiguous or
discontiguous models.
Withing, there is also a slight change to the way that the DEBUG_LL
macros select the UART address. Now it uses immediate constants
exclusively.
|
|
I ran the following (crappy) script:
...
In /proc/sys/ and found a host of undocumented sysctls. This patch documents
a number of them, and at least mentions the rest as 'TODO'. Please verify my
code-inspired documentation before applying!
Signed-off-by: Bert Hubert <ahu@ds9a.nl>
Signed-off-by: David S. Miller <davem@redhat.com>
|
|
Documentation/networking/8139too.txt was removed with this ChangeSet:
ChangeSet@1.1371.153.2 2004-01-10 15:34:47-05:00 jgarzik@redhat.com
[netdrvr] remove Documentation/networking/8139too.txt
All sections of the document are woefully outdated.
However, `grep' still reveals these references to it:
drivers/net/8139too.c:90: See 8139too.txt for more details.
drivers/net/Kconfig:1539: <file:Documentation/networking/8139too.txt> as well as the
Documentation/networking/00-INDEX:7:8139too.txt
Signed-off-by: Arthur Othieno <a.othieno@bluewin.ch>
|
|
Signed-off-by: Roger Luethi <rl@hellgate.ch>
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
|
|
into delerium.codemonkey.org.uk:/mnt/data/src/bk/cpufreq
|
|
into evo.osdl.org:/home/torvalds/v2.6/linux
|
|
into evo.osdl.org:/home/torvalds/v2.6/linux
|
|
From: Anton Altaparmakov <aia21@cam.ac.uk>
A filesystem's ->writepage() implementation nowadays must run either
redirty_page_for_writepage() or the combination of set_page_writeback()/
end_page_writeback(). Failure to do so leaves the page itself marked clean
but it is tagged as dirty in the radix tree (PAGECACHE_TAG_DIRTY). This
incoherency can lead to all sorts of hard-to-debug problems in the
filesystem like having dirty inodes at umount and losing written data.
The patch updates Documentation/filesystems/Locking to reflect this
requirement.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
This updates the memory layout documentation to indicate that certain
areas should remain unused. It also corrects a few minor errors with
region end addresses.
|
|
into kernel.bkbits.net:/home/davem/net-2.6
|
|
From: Paul Devriendt
Signed-off-by: Dave Jones <davej@redhat.com>
|
|
I think we should make it explicit that PCI IRQs shouldn't be relied
upon until after pci_enable_device(). This patch:
ftp://ftp.kernel.org/pub/linux/kernel/people/akpm/patches/2.6/2.6.7-rc3/2.6.7-rc3-mm1/broken-out/bk-acpi.patch
does PCI interrupt routing (based on ACPI _PRT) and IRQ allocation
at pci_enable_device()-time.
(To avoid breaking things in 2.6, the above patch still allocates
all PCI IRQs in pci_acpi_init(), before any drivers are initialized.
But that shouldn't be needed by correct drivers, and I'd like to
remove it in 2.7.)
Signed-off-by: Greg Kroah-Hartman <greg@kroah.com>
|
|
From Paul Devriendt.
Signed-off-by: Dave Jones <davej@redhat.com>
|
|
|
|
- Modify fs/ntfs/ntfs_readdir() to copy the index root attribute value
to a buffer so that we can put the search context and unmap the mft
record before calling the filldir() callback. We need to do this
because of NFSd which calls ->lookup() from its filldir callback()
and this causes NTFS to deadlock as ntfs_lookup() maps the mft record
of the directory and since ntfs_readdir() has got it mapped already
ntfs_lookup() deadlocks.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
|
|
into cantab.net:/home/src/ntfs-2.6
|
|
From: Peter Korsgaard <jacmet@sunsite.dk>
Vertical retrace is in lines, not pixels.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
system files.
- Mark the volume dirty when (re)mounting read-write and mark it clean
when unmounting or remounting read-only. If any volume errors are
found, the volume is left marked dirty to force chkdsk to run.
- Add code to set the NT4 compatibility flag when (re)mounting
read-write for newer NTFS versions but leave it commented out for now
since we do not make any modifications that are NTFS 1.2 specific yet
and since setting this flag breaks Captive-NTFS which is not nice.
This code must be enabled once we start writing NTFS 1.2 specific
changes otherwise Windows NTFS driver might crash / cause corruption.
- Fix a silly bug that caused a deadlock in ntfs_mft_writepage().
For inode 0, i.e. $MFT itself, we cannot use ilookup5() from
there because the inode is already locked by the kernel
(fs/fs-writeback.c::__sync_single_inode()) and ilookup5() waits
until the inode is unlocked before returning it and it never gets
unlocked because ntfs_mft_writepage() never returns. )-:
Fortunately, we have inode 0 pinned in icache for the duration
of the mount so we can access it directly.
Signed-off-by: Anton Altaparmakov <aia21@cantab.net>
|
|
into suse.cz:/home/vojtech/bk/for-linus
|
|
From: Christoph Hellwig <hch@lst.de>
To be useful for distribution kernels it needs to be a runtime option.
The original patch is from Joerg Platte via the Debian kernel package,
with some adjustments from me (and me too - Bart).
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@elka.pw.edu.pl>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
Fix minor typos.
From: "J. Bruce Fields" <bfields@fieldses.org>
Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
into cantab.net:/home/src/ntfs-2.6
|
|
We already have over 200 sign-off lines in the kernel, so
let's document the thing, even if discussion may still be
on-going.
|
|
From: Marc-Christian Petersen <m.c.p@kernel.linux-systeme.com>
Give the vesafb `vram' boot option the same (silly) syntax as 2.4 and
document it.
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
|
|
into cantab.net:/home/src/ntfs-2.6
|
|
into nuts.davemloft.net:/disk1/BK/net-2.6
|
|
From: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Andrew Morton <akpm@osdl.org>
|
|
|
|
|
|
into kernel.bkbits.net:/home/davem/net-2.6
|
|
Trent Jarvi <taj@www.linux.org.uk> noticed this. The file was out of date
with current web site and maintainer. Please apply to 2.4 and 2.6.
Signed-off-by: Stephen Hemminger <shemminger@osdl.org>
|
|
script.
From: Bart Samwel <bart@samwel.tk>
Currently the ACPI binding script in the Laptop Mode doc always says "20
seconds" and "2 hours" for the timeouts it uses. This is incorrect if the
user changed the config values, so we print something more general.
|
|
From: Rusty Russell <rusty@rustcorp.com.au>
This one snuck through - Jeff prefers the bk:// addresses.
|
|
From: Bart Samwel <bart@samwel.tk>
We don't want to use "cut" in the laptop mode control script, because that
is in /usr. This patch is from Jasper Spaans.
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
From: Hugh Dickins <hugh@veritas.com>
Why should struct address_space have separate i_mmap and i_mmap_shared
prio_trees (separating !VM_SHARED and VM_SHARED vmas)? No good reason, the
same processing is usually needed on both. Merge i_mmap_shared into i_mmap,
but keep i_mmap_writable count of VM_SHARED vmas (those capable of dirtying
the underlying file) for the mapping_writably_mapped test.
The VM_MAYSHARE test in the arm and parisc loops is not necessarily what they
will want to use in the end: it's provided as a harmless example of what might
be appropriate, but maintainers are likely to revise it later (that parisc
loop is currently being changed in the parisc tree anyway).
On the way, remove the now out-of-date comments on vm_area_struct size.
|
|
From: Andi Kleen <ak@suse.de>
The following patches add support for configurable NUMA memory policy
for user processes. It is based on the proposal from last kernel summit
with feedback from various people.
This NUMA API doesn't not attempt to implement page migration or anything
else complicated: all it does is to police the allocation when a page
is first allocation or when a page is reallocated after swapping. Currently
only support for shared memory and anonymous memory is there; policy for
file based mappings is not implemented yet (although they get implicitely
policied by the default process policy)
It adds three new system calls: mbind to change the policy of a VMA,
set_mempolicy to change the policy of a process, get_mempolicy to retrieve
memory policy. User tools (numactl, libnuma, test programs, manpages) can be
found in ftp://ftp.suse.com/pub/people/ak/numa/numactl-0.6.tar.gz
For details on the system calls see the manpages
http://www.firstfloor.org/~andi/mbind.html
http://www.firstfloor.org/~andi/set_mempolicy.html
http://www.firstfloor.org/~andi/get_mempolicy.html
Most user programs should actually not use the system calls directly,
but use the higher level functions in libnuma
(http://www.firstfloor.org/~andi/numa.html) or the command line tools
(http://www.firstfloor.org/~andi/numactl.html
The system calls allow user programs and administors to set various NUMA memory
policies for putting memory on specific nodes. Here is a short description
of the policies copied from the kernel patch:
* NUMA policy allows the user to give hints in which node(s) memory should
* be allocated.
*
* Support four policies per VMA and per process:
*
* The VMA policy has priority over the process policy for a page fault.
*
* interleave Allocate memory interleaved over a set of nodes,
* with normal fallback if it fails.
* For VMA based allocations this interleaves based on the
* offset into the backing object or offset into the mapping
* for anonymous memory. For process policy an process counter
* is used.
* bind Only allocate memory on a specific set of nodes,
* no fallback.
* preferred Try a specific node first before normal fallback.
* As a special case node -1 here means do the allocation
* on the local CPU. This is normally identical to default,
* but useful to set in a VMA when you have a non default
* process policy.
* default Allocate on the local node first, or when on a VMA
* use the process policy. This is what Linux always did
* in a NUMA aware kernel and still does by, ahem, default.
*
* The process policy is applied for most non interrupt memory allocations
* in that process' context. Interrupts ignore the policies and always
* try to allocate on the local CPU. The VMA policy is only applied for memory
* allocations for a VMA in the VM.
*
* Currently there are a few corner cases in swapping where the policy
* is not applied, but the majority should be handled. When process policy
* is used it is not remembered over swap outs/swap ins.
*
* Only the highest zone in the zone hierarchy gets policied. Allocations
* requesting a lower zone just use default policy. This implies that
* on systems with highmem kernel lowmem allocation don't get policied.
* Same with GFP_DMA allocations.
*
* For shmfs/tmpfs/hugetlbfs shared memory the policy is shared between
* all users and remembered even when nobody has memory mapped.
This patch:
This is the core NUMA API code. This includes NUMA policy aware
wrappers for get_free_pages and alloc_page_vma(). On non NUMA kernels
these are defined away.
The system calls mbind (see http://www.firstfloor.org/~andi/mbind.html),
get_mempolicy (http://www.firstfloor.org/~andi/get_mempolicy.html) and
set_mempolicy (http://www.firstfloor.org/~andi/set_mempolicy.html) are
implemented here.
Adds a vm_policy field to the VMA and to the process. The process
also has field for interleaving. VMA interleaving uses the offset
into the VMA, but that's not possible for process allocations.
From: Andi Kleen <ak@muc.de>
> Andi, how come policy_vma() calls ->set_policy under i_shared_sem?
I think this can be actually dropped now. In an earlier version I did
walk the vma shared list to change the policies of other mappings to the
same shared memory region. This turned out too complicated with all the
corner cases, so I eventually gave in and added ->get_policy to the fast
path. Also there is still the mmap_sem which prevents races in the same MM.
Patch to remove it attached. Also adds documentation and removes the
bogus __alloc_page_vma() prototype noticed by hch.
From: Andi Kleen <ak@suse.de>
A few incremental fixes for NUMA API.
- Fix a few comments
- Add a compat_ function for get_mem_policy I considered changing the
ABI to avoid this, but that would have made the API too ugly. I put it
directly into the file because a mm/compat.c didn't seem worth it just for
this.
- Fix the algorithm for VMA interleave.
From: Matthew Dobson <colpatch@us.ibm.com>
1) Move the extern of alloc_pages_current() into #ifdef CONFIG_NUMA.
The only references to the function are in NUMA code in mempolicy.c
2) Remove the definitions of __alloc_page_vma(). They aren't used.
3) Move forward declaration of struct vm_area_struct to top of file.
|
|
Having a semaphore in there causes modest performance regressions on heavily
mmap-intensive workloads on some hardware. Specifically, up to 30% in SDET on
NUMAQ and big PPC64.
So switch it back to being a spinlock. This does mean that unmap_vmas() needs
to be told whether or not it is allowed to schedule away; that's simple to do
via the zap_details structure.
This change means that there will be high scheuling latencies when someone
truncates a large file which is currently mmapped, but nobody does that
anyway. The scheduling points in unmap_vmas() are mainly for munmap() and
exit(), and they still will work OK for that.
From: Hugh Dickins <hugh@veritas.com>
Sorry, my premature optimizations (trying to pass down NULL zap_details
except when needed) have caught you out doubly: unmap_mapping_range_list was
NULLing the details even though atomic was set; and if it hadn't, then
zap_pte_range would have missed free_swap_and_cache and pte_clear when pte
not present. Moved the optimization into zap_pte_range itself. Plus
massive documentation update.
From: Hugh Dickins <hugh@veritas.com>
Here's a second patch to add to the first: mremap's cows can't come home
without releasing the i_mmap_lock, better move the whole "Subtle point"
locking from move_vma into move_page_tables. And it's possible for the file
that was behind an anonymous page to be truncated while we drop that lock,
don't want to abort mremap because of VM_FAULT_SIGBUS.
(Eek, should we be checking do_swap_page of a vm_file area against the
truncate_count sequence? Technically yes, but I doubt we need bother.)
- We cannot hold i_mmap_lock across move_one_page() because
move_one_page() needs to perform __GFP_WAIT allocations of pagetable pages.
- Move the cond_resched() out so we test it once per page rather than only
when move_one_page() returns -EAGAIN.
|
|
into suse.cz:/home/perex/bk/linux-sound/linux-sound
|
|
From: Rusty Russell <rusty@rustcorp.com.au>
From: a.othieno@bluewin.ch (Arthur Othieno)
From: Vinay K Nallamothu <vinay-rc@naturesoft.net>
Remove various duplicated #includes
From: Vinay K Nallamothu <vinay-rc@naturesoft.net>
Use mod_timer in drivers_block_floppy98.c
From: carbonated beverage <ramune@net-ronin.org>
doc update for bk usage
bk://... appears to be dead, use http://... instead.
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
into redhat.com:/spare/repo/libata-2.6
|
|
From: Rusty Russell <rusty@rustcorp.com.au>
From: maximilian attems <janitor@sternwelten.at>
The "Trivial Patch Monkey" is neither documented in MAINTAINERS nor was there
a note in SubmittingPatches.
|
|
From: Rusty Russell <rusty@rustcorp.com.au>
From: Tommi Virtanen <tv@tv.debian.net>
|
|
From: Rusty Russell <rusty@rustcorp.com.au>
From: Marco Cova <marco.cova@studio.unibo.it>
|
|
From: Jonathan Corbet <corbet@lwn.net>
I noticed a patch went in to Documentation/SubmittingDrivers which tweaked
the URL for KernelTraffic. Here's a self-serving patch which makes that
section more complete; to be fair, I added two other sites too. Just in
case it's useful.
|
|
From: Christoph Hellwig <hch@lst.de>
If we want new drivers to not use obsolete interfaces we're better off not
mentioning it in the documentation.
|
|
|
|
Documentation,ICE1724 driver,ICE1712 driver
- added model module option to specify board model to snd-ice1712 and snd-ice1724
drivers.
- removed ez8 option from ice1724. this can be specified as 'model=ez8' option.
- rewritten some struct init in C99 style.
- function for accessing i2c of ice1724 (for future use).
|
|
Documentation,CMIPCI driver
make soft_ac3 option conditional again.
this will make it possible for old chips to feed the IEC958 data
without conversion (sometimes useful, e.g. for apps using mmap).
|
|
Documentation
added the document about Audigy mixer implementation by Peter Zubaj.
it is not target to users, rather to developers.
|
|
Documentation,CMIPCI driver
dropped the software encoding of AC3 stream in the driver.
this is done now in alsa-lib.
soft_ac3 module option is kept for backward compatibility but not
referred at all.
|
|
Documentation,NM256 driver
- added a blacklist to avoid the possible hang-up at module loading.
- added notes about the hang-up problem to ALSA-Configuration.txt.
|
|
Documentation
- fixed some obsolete descriptions and typos.
- a bit more detailed description about addition of the new driver.
|
|
Documentation,EMU10K1/EMU10K2 driver
Initial attempt to add support for SB Live 5.1 (c) 2003
|
|
Mainly involved fixing a great many docproc warnings, by filling in
missing documentation in the source code.
|
|
into suse.cz:/home/perex/bk/linux-sound/linux-sound
|
|
into flint.arm.linux.org.uk:/usr/src/bk/linux-2.6-rmk
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
From: Bart Samwel <bart@samwel.tk>
The attached patch is the outcome of a discussion with Nathan.
When laptop mode is active, there is no need for XFS to wake up xfsbufd (the
daemon that flushes buffers that are too old) too often. The default is once
every second, this patch makes laptop mode do it once every 30 seconds.
|
|
From: Bart Samwel <bart@samwel.tk>
XFS now uses
/proc/sys/fs/xfs/xfssyncd_centisecs
/proc/sys/fs/xfs/xfsbufd_centisecs
/proc/sys/fs/xfs/age_buffer_centisecs
Here's a patch to support these values in the laptop mode control script.
|
|
From: Bart Samwel <bart@samwel.tk>
The laptop mode control script incorrectly guesses XFS_HZ=1000. This is
incorrect, since the patches that made XFS use USER_HZ went into 2.6.6 as
well. This changes XFS_HZ to 100 and removes the warning from the doc about
checking XFS_HZ.
|
|
From: Sau Dan Lee <danlee@informatik.uni-freiburg.de>
The script /etc/acpi/actions/battery.sh in the document doesn't run,
because of a wrong name.
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
|
|
From: "Sergey S. Kostyliov" <rathamahata@php4.ru>
Acked by Will Dyson.
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
into kroah.com:/home/greg/linux/BK/i2c-2.6
|
|
Patch from Ian Campbell
The patch includes the PXA FB driver discussed recently on the
arm-kernel mailing list, I have incorporated your (RMK's) comments
from patch 1826.
|
|
Patch from Deepak Saxena
|
|
Patch from Deepak Saxena <dsaxena@plexity.net>
Documentation/ARM/XScale has not been updated by anyone in a long time;
therefore, it is being deleted until someone volunteers to provide
updated versions.
|
|
into kroah.com:/home/greg/linux/BK/usb-2.6
|
|
|
|
Patch from Nicolas Pitre
This documentation isn't reflecting the code anymore and therefore
is misleading. Better remove it and let people see the code where
multiple examples can now be followed.
|
|
Quoting myself:
> Mmm, I once proposed that I2C_ADAP_CLASS_SMBUS would be better renamed
> I2C_ADAP_CLASS_SENSORS (so I2C_CLASS_SENSORS now). What about that? I
> think it would be great to embed that change into your patch, so that
> the name changes only once.
>
> BTW, if HWMON is prefered to SENSORS, this is fine with me too, I
> have no strong preference.
Below is a patch that does that. I finally went for HWMON. Yes, it's
big, but it's actually nothing more than
s/I2C_CLASS_SMBUS/I2C_CLASS_HWMON/ (thanks perl -wip :)).
|
|
delerium.codemonkey.org.uk:/mnt/nfs/neologic/bar/src/kernel/2.6/trees/bk-linus
into delerium.codemonkey.org.uk:/mnt/nfs/neologic/bar/src/kernel/2.6/trees/cpufreq
|
|
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
into cantab.net:/home/src/ntfs-2.6
|
|
in handling of corner cases.
|
|
From: Christoph Hellwig <hch@lst.de>
(partially from the debian kernel tree)
|
|
From: "Chen, Kenneth W" <kenneth.w.chen@intel.com>,
"Seth, Rohit" <rohit.seth@intel.com>
This patch addresses the longstanding problem wherein Oracle needs
CAP_IPC_LOCK to allocate SHM_HUGETLB shm memory, but people don't want to run
Oracle as root, and capabilties are busted.
Various ideas with rlimits didn't work out, mainly because these objects live
beyond the lifetime of the user processes which establish them.
What we do is to create root-writeable /proc/sys/vm/hugetlb_shm_group which
specifies a single group ID. Users who belong to that group may allocate
hugepages for SHM_HUGETLB shm segments.
So the sysadmin will greate a new group, say `hugepageusers', will add the
oracle user to that group and will write that group's ID into
/proc/sys/vm/hugetlb_shm_group.
|
|
From: Pavel Machek <pavel@ucw.cz>
|
|
From: <spam@altium.nl> (Dick Streefland)
The following patch documents the currently undocumented raid= kernel
parameter.
|
|
From: <bart@samwel.tk>
Richard Atterer reported that mutt does not play well with noatime (it uses
access times to check whether new mail has arrived in a folder). This patch
warns about this in the doc, and adds a setting to the control script to
disable the noatime remount.
|
|
From: Nick Piggin <piggin@cyberone.com.au>
Anton was attempting to make a sched domain topology for his POWER5 and was
having some trouble.
This patch only includes code which is ifdefed out, but hopefully it will
be of some use to implementors.
|
|
From: Nick Piggin <piggin@cyberone.com.au>
This is the core sched domains patch. It can handle any number of levels
in a scheduling heirachy, and allows architectures to easily customize how
the scheduler behaves. It also provides progressive balancing backoff
needed by SGI on their large systems (although they have not yet tested
it).
It is built on top of (well, uses ideas from) my previous SMP/NUMA work, and
gets results very similar to them when using the default scheduling
description.
Benchmarks
==========
Martin was seeing I think 10-20% better system times in kernbench on the 32
way. I was seeing improvements in dbench, tbench, kernbench, reaim,
hackbench on a 16-way NUMAQ. Hackbench in fact had a non linear element
which is all but eliminated. Large improvements in volanomark.
Cross node task migration was decreased in all above benchmarks, sometimes by
a factor of 100!! Cross CPU migration was also generally decreased. See
this post:
http://groups.google.com.au/groups?hl=en&lr=&ie=UTF-8&oe=UTF-8&frame=right&th=a406c910b30cbac4&seekm=UAdQ.3hj.5%40gated-at.bofh.it#link2
Results on a hyperthreading P4 are equivalent to Ingo's shared runqueues
patch (which is a big improvement).
Some examples on the 16-way NUMAQ (this is slightly older sched domain code):
http://www.kerneltrap.org/~npiggin/w26/hbench.png
http://www.kerneltrap.org/~npiggin/w26/vmark.html
From: Jes Sorensen <jes@wildopensource.com>
Tiny patch to make -mm3 compile on an NUMA box with NR_CPUS >
BITS_PER_LONG.
From: "Martin J. Bligh" <mbligh@aracnet.com>
Fix a minor nit with the find_busiest_group code. No functional change,
but makes the code simpler and clearer. This patch does two things ...
adds some more expansive comments, and removes this if clause:
if (*imbalance < SCHED_LOAD_SCALE
&& max_load - this_load > SCHED_LOAD_SCALE)
*imbalance = SCHED_LOAD_SCALE;
If we remove the scaling factor, we're basically conditionally doing:
if (*imbalance < 1)
*imbalance = 1;
Which is pointless, as the very next thing we do is to remove the
scaling factor, rounding up to the nearest integer as we do:
*imbalance = (*imbalance + SCHED_LOAD_SCALE - 1) >> SCHED_LOAD_SHIFT;
Thus the if statement is redundant, and only makes the code harder to
read ;-)
From: Rick Lindsley <ricklind@us.ibm.com>
In find_busiest_group(), after we exit the do/while, we select our
imbalance. But max_load, avg_load, and this_load are all unsigned, so
min(x,y) will make a bad choice if max_load < avg_load < this_load (that
is, a choice between two negative [very large] numbers).
Unfortunately, there is a bug when max_load never gets changed from zero
(look in the loop and think what happens if the only load on the machine is
being created by cpu groups of which we are a member). And you have a
recipe for some really bogus values for imbalance.
Even if you fix the max_load == 0 bug, there will still be times when
avg_load - this_load will be negative (thus very large) and you'll make the
decision to move stuff when you shouldn't have.
This patch allows for this_load to set max_load, which if I understand
the logic properly is correct. With this patch applied, the algorithm is
*much* more conservative ... maybe *too* conservative but that's for
another round of testing ...
From: Ingo Molnar <mingo@elte.hu>
sched-find-busiest-fix
|
|
into flint.arm.linux.org.uk:/usr/src/bk/linux-2.6-rmk
|
|
Patch from Marc Singer
Documentation for the Sharp-LH machines.
|
|
This is a version of Binary Increase Control (BIC) TCP
developed by NCSU. It is yet another TCP congestion control
algorithm for handling big fat pipes. For normal size congestion
windows it behaves the same as existing TCP Reno, but when window
is large it uses additive increase to ensure fairness and when
window is small it uses binary search increase.
For more details see the BIC TCP web page
http://www.csc.ncsu.edu/faculty/rhee/export/bitcp/
The original code was for web100 (2.4); this version is pretty
much the same but targeted for 2.6 with less sysctl parameters
and more constants.
I don't have a real high speed long haul network to test, but
when running over 1G links with delays, the performance is more stable
(ie tests are repeatable) and as fast as existing Reno.
|
|
Upon resuming, first CPUfreq hardware support needs to be re-enabled in certain cases
(call to cpufreq_driver->resume()).
Then, two different paths may need to be taken:
a) frequency during suspend equals frequency during resume ==> everything is fine,
b) frequency differ ==> either we can't handle it, then panic (see flag
CPUFREQ_PANIC_RESUME_OUTOFSYNC). Or we can handle it, then notify all
|
|
read-write (re)mount is requested, empty $LogFile by overwriting it
with 0xff bytes to ensure that Windows cannot cause data corruption
by replaying a stale journal after Linux has written to the volume.
|
|
into cantab.net:/home/src/ntfs-2.6
|
|
From: <mikem@beardog.cca.cpqcorp.net>
This patch adds support for 2 new controllers. The first is a PCI-Express
version of the 6400. The second is actually a SATA controller using the cciss
interface.
|
|
in the "[RFC|PATCH][2.6] Additional i2c adapter flags for i2c client
isolation" thread, the i2c people have agreed that an ".class" field
should be added to struct i2c_driver.
Currently only drivers do checks for plausibility ("Is this an adapter I
can attach to?"), but adapters don't have a chance to keep drivers away
from their bus.
If both drivers and adapters provide a .class entry, the i2c-core can
easily compare them and let devices only probe on busses where they can
really exist.
Real world example: DVB i2c adapters cannot ensure that only known DVB
i2c chipsets probe their busses. Most client drivers probe every bus
they get their hands on. This will confuse some DVB i2c busses.
With the new I2C_CLASS_ALL flag it will be possible that an adapter can
request that really all drivers are probed on the adapter. On the other
hand, drivers can make sure that they get the chance to probe on every
i2c adapter out there (this is not encouraged, though)
The attached patch does the first step:
- add .class member to struct i2c_device
- remove unused .flags member from struct i2c_adapter
- rename I2C_ADAP_CLASS_xxx to I2C_CLASS_xxx (to be used both for
drivers and adapters)
- add new I2C_CLASS_ALL and I2C_CLASS_SOUND classes
- follow these changes in the existing drivers with copy & paste
|
|
Fifth attempt at a PCMCIA SCSI driver for the Symbios 53c500
controller. This version has all the cleanup Christoph has requested
to date, including removal of support for the obsolete (in 2.6)
proc_info functionality.
Support for additional sysfs class device attributes has been added:
two are read-only (irq, ioport), one is read-write (fast_pio). The
read-write attribute is a per-instance flag indicating the PIO speed
of the particular HBA: valid values are 1 (enabled -- default) and 0
(disabled).
|
|
into intel.com:/home/lenb/src/linux-acpi-test-2.6.6
|
|
|
|
Changed reset from standard USB dev reset to vendor reset
Changed data sent to host from compensated to raw coordinates
Eliminated vendor/product module params
Performed multiple successfull tests with an EXII-5010UC
|
|
|
|
From: Coywolf Qi Hunt <coywolf@greatcn.org>
This updates the kerneltraffic url link found in
Documentation/SubmittingDrivers and Documentation/kernel-docs.txt.
|
|
into kroah.com:/home/greg/linux/BK/usb-2.6
|
|
into cantab.net:/home/src/ntfs-2.6
|
|
stored in it to the ones in the mft (fs/ntfs/super.c).
|
|
into ppc970.osdl.org:/home/torvalds/v2.6/linux
|
|
From: "Randy.Dunlap" <rddunlap@osdl.org>
kernel-parameters.txt: add info on how to specify loadable module
parameters vs. built-in module parameters
|
|
From: Zwane Mwaikambo <zwane@arm.linux.org.uk>
A kernel janitor recently got confused by the advice in SubmittingPatches
and was sending patches with the wrong strip level, i think just about
everyone would prefer standard patches. Also mention various patch
management scripts for batching up large deltas.
|
|
From: Christoph Hellwig <hch@lst.de>
The partportbook is licensed under the GFDL and Linus agreed to remove
all GFDL licensed files in
http://www.ussg.iu.edu/hypermail/linux/kernel/0306.1/1968.html.
I pinged the author the first time on the 2nd of april but still didn't get
a reply, then send a patch to Linus to remove it last week but linus
ignored it. Here's the patch again:
|
|
From: Pavel Machek <pavel@ucw.cz>
Stefan has pretty useful tips for getting S3 to work on radeon notebooks.
This brings whole new class of systems to be usable for S3.
|
|
Here's another fix it'd be good to merge ...
No changes to the Linux code at all, but it'll makes the Windows
configuration of a Linux device running the Ethernet/RNDIS gadget behave
correctly on more versions of Windows. (It might prevent some
Bluescreening too.)
|
|
|
|
|
|
The attached patch for the 3M Touch Systems Capacitive controller.
Quick list of changes:
* Changed reset from standard USB dev reset to vendor reset
* Changed data sent to host from compensated to raw coordinates
* Eliminated vendor/product module params
* Performed multiple successfull tests with an EXII-5010UC
The changes are primarily due to comments from Vojtech Pavlik, as well
as making the newer EXII-50XXUC controllers work.
Thanks to 3M Touch Systems for sending me some new controllers to test with!
An updated HOWTO is also available at:
http://groomlakelabs.com/grandamp/code/microtouch/Linux-Input-USB-Touchscreen-HowTo.txt
|
|
|