23 Jun, 2006

40 commits

  • Fix one audit kernel-doc description (one parameter was missing).
    Add audit*.c interfaces to DocBook.
    Add BSD accounting interfaces to DocBook.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Remove synchronize_kernel() (deprecated 2-APR-2005 in
    http://lkml.org/lkml/2005/4/3/11) and makes the RCU API inaccessible to
    non-GPL Linux kernel modules (as was announced more than one year ago in
    http://lkml.org/lkml/2005/4/3/8). Tested on x86 and ppc64.

    Signed-off-by: "Paul E. McKenney"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paul E. McKenney
     
  • Provide a checklist of techniques to aid kernel patch submitters in
    producing healthy patches and in lessening a burden on maintainers.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Update Documentation/devices.txt with a new version from the LANANA site
    http://www.lanana.org/docs/device-list/devices-2.6+.txt

    Signed-off-by: Jan Engelhardt
    Cc: Torben Mathiasen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jan Engelhardt
     
  • Update documentation a bit, add more machines to video.txt list.

    Signed-off-by: Pavel Machek
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pavel Machek
     
  • move_pages() is used to move individual pages of a process. The function can
    be used to determine the location of pages and to move them onto the desired
    node. move_pages() returns status information for each page.

    long move_pages(pid, number_of_pages_to_move,
    addresses_of_pages[],
    nodes[] or NULL,
    status[],
    flags);

    The addresses of pages is an array of void * pointing to the
    pages to be moved.

    The nodes array contains the node numbers that the pages should be moved
    to. If a NULL is passed instead of an array then no pages are moved but
    the status array is updated. The status request may be used to determine
    the page state before issuing another move_pages() to move pages.

    The status array will contain the state of all individual page migration
    attempts when the function terminates. The status array is only valid if
    move_pages() completed successfullly.

    Possible page states in status[]:

    0..MAX_NUMNODES The page is now on the indicated node.

    -ENOENT Page is not present

    -EACCES Page is mapped by multiple processes and can only
    be moved if MPOL_MF_MOVE_ALL is specified.

    -EPERM The page has been mlocked by a process/driver and
    cannot be moved.

    -EBUSY Page is busy and cannot be moved. Try again later.

    -EFAULT Invalid address (no VMA or zero page).

    -ENOMEM Unable to allocate memory on target node.

    -EIO Unable to write back page. The page must be written
    back in order to move it since the page is dirty and the
    filesystem does not provide a migration function that
    would allow the moving of dirty pages.

    -EINVAL A dirty page cannot be moved. The filesystem does not provide
    a migration function and has no ability to write back pages.

    The flags parameter indicates what types of pages to move:

    MPOL_MF_MOVE Move pages that are only mapped by the process.

    MPOL_MF_MOVE_ALL Also move pages that are mapped by multiple processes.
    Requires sufficient capabilities.

    Possible return codes from move_pages()

    -ENOENT No pages found that would require moving. All pages
    are either already on the target node, not present, had an
    invalid address or could not be moved because they were
    mapped by multiple processes.

    -EINVAL Flags other than MPOL_MF_MOVE(_ALL) specified or an attempt
    to migrate pages in a kernel thread.

    -EPERM MPOL_MF_MOVE_ALL specified without sufficient priviledges.
    or an attempt to move a process belonging to another user.

    -EACCES One of the target nodes is not allowed by the current cpuset.

    -ENODEV One of the target nodes is not online.

    -ESRCH Process does not exist.

    -E2BIG Too many pages to move.

    -ENOMEM Not enough memory to allocate control array.

    -EFAULT Parameters could not be accessed.

    A test program for move_pages() may be found with the patches
    on ftp.kernel.org:/pub/linux/kernel/people/christoph/pmig/patches-2.6.17-rc4-mm3

    From: Christoph Lameter

    Detailed results for sys_move_pages()

    Pass a pointer to an integer to get_new_page() that may be used to
    indicate where the completion status of a migration operation should be
    placed. This allows sys_move_pags() to report back exactly what happened to
    each page.

    Wish there would be a better way to do this. Looks a bit hacky.

    Signed-off-by: Christoph Lameter
    Cc: Hugh Dickins
    Cc: Jes Sorensen
    Cc: KAMEZAWA Hiroyuki
    Cc: Lee Schermerhorn
    Cc: Andi Kleen
    Cc: Michael Kerrisk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     
  • - Move comments for kmalloc to right place, currently it near __do_kmalloc

    - Comments for kzalloc

    - More detailed comments for kmalloc

    - Appearance of "kmalloc" and "kzalloc" man pages after "make mandocs"

    [rdunlap@xenotime.net: simplification]
    Signed-off-by: Paul Drynoff
    Acked-by: Randy Dunlap
    Cc: Pekka Enberg
    Cc: Manfred Spraul
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paul Drynoff
     
  • Signed-off-by: Christoph Lameter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     
  • This patch adds panic_on_oom sysctl under sys.vm.

    When sysctl vm.panic_on_oom = 1, the kernel panics intead of killing rogue
    processes. And if vm.panic_on_oom is 0 the kernel will do oom_kill() in
    the same way as it does today. Of course, the default value is 0 and only
    root can modifies it.

    In general, oom_killer works well and kill rogue processes. So the whole
    system can survive. But there are environments where panic is preferable
    rather than kill some processes.

    Signed-off-by: KAMEZAWA Hiroyuki
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KAMEZAWA Hiroyuki
     
  • Give the statfs superblock operation a dentry pointer rather than a superblock
    pointer.

    This complements the get_sb() patch. That reduced the significance of
    sb->s_root, allowing NFS to place a fake root there. However, NFS does
    require a dentry to use as a target for the statfs operation. This permits
    the root in the vfsmount to be used instead.

    linux/mount.h has been added where necessary to make allyesconfig build
    successfully.

    Interest has also been expressed for use with the FUSE and XFS filesystems.

    Signed-off-by: David Howells
    Acked-by: Al Viro
    Cc: Nathan Scott
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     
  • Extend the get_sb() filesystem operation to take an extra argument that
    permits the VFS to pass in the target vfsmount that defines the mountpoint.

    The filesystem is then required to manually set the superblock and root dentry
    pointers. For most filesystems, this should be done with simple_set_mnt()
    which will set the superblock pointer and then set the root dentry to the
    superblock's s_root (as per the old default behaviour).

    The get_sb() op now returns an integer as there's now no need to return the
    superblock pointer.

    This patch permits a superblock to be implicitly shared amongst several mount
    points, such as can be done with NFS to avoid potential inode aliasing. In
    such a case, simple_set_mnt() would not be called, and instead the mnt_root
    and mnt_sb would be set directly.

    The patch also makes the following changes:

    (*) the get_sb_*() convenience functions in the core kernel now take a vfsmount
    pointer argument and return an integer, so most filesystems have to change
    very little.

    (*) If one of the convenience function is not used, then get_sb() should
    normally call simple_set_mnt() to instantiate the vfsmount. This will
    always return 0, and so can be tail-called from get_sb().

    (*) generic_shutdown_super() now calls shrink_dcache_sb() to clean up the
    dcache upon superblock destruction rather than shrink_dcache_anon().

    This is required because the superblock may now have multiple trees that
    aren't actually bound to s_root, but that still need to be cleaned up. The
    currently called functions assume that the whole tree is rooted at s_root,
    and that anonymous dentries are not the roots of trees which results in
    dentries being left unculled.

    However, with the way NFS superblock sharing are currently set to be
    implemented, these assumptions are violated: the root of the filesystem is
    simply a dummy dentry and inode (the real inode for '/' may well be
    inaccessible), and all the vfsmounts are rooted on anonymous[*] dentries
    with child trees.

    [*] Anonymous until discovered from another tree.

    (*) The documentation has been adjusted, including the additional bit of
    changing ext2_* into foo_* in the documentation.

    [akpm@osdl.org: convert ipath_fs, do other stuff]
    Signed-off-by: David Howells
    Acked-by: Al Viro
    Cc: Nathan Scott
    Cc: Roland Dreier
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/i2c-2.6: (44 commits)
    [PATCH] I2C: I2C controllers go into right place on sysfs
    [PATCH] hwmon-vid: Add support for Intel Core and Conroe
    [PATCH] lm70: New hardware monitoring driver
    [PATCH] hwmon: Fix the Kconfig header
    [PATCH] i2c-i801: Merge setup function
    [PATCH] i2c-i801: Better pci subsystem integration
    [PATCH] i2c-i801: Cleanups
    [PATCH] i2c-i801: Remove PCI function check
    [PATCH] i2c-i801: Remove force_addr parameter
    [PATCH] i2c-i801: Fix block transaction poll loops
    [PATCH] scx200_acb: Documentation update
    [PATCH] scx200_acb: Mark scx200_acb_probe __init
    [PATCH] scx200_acb: Use PCI I/O resource when appropriate
    [PATCH] i2c: Mark block write buffers as const
    [PATCH] i2c-ocores: Minor cleanups
    [PATCH] abituguru: Fix fan detection
    [PATCH] abituguru: Review fixes
    [PATCH] abituguru: New hardware monitoring driver
    [PATCH] w83792d: Add missing data access locks
    [PATCH] w83792d: Fix setting the PWM value
    ...

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/w1-2.6:
    [PATCH] w1: warning fix
    [PATCH] w1: clean up W1_CON dependency.
    [PATCH] drivers/w1/w1.c: fix a compile error
    [PATCH] W1: fix dependencies of W1_SLAVE_DS2433_CRC
    [PATCH] W1: possible cleanups
    [PATCH] W1: cleanups
    [PATCH] w1 exports
    [PATCH] w1: Use mutexes instead of semaphores.
    [PATCH] w1: Make w1 connector notifications depend on connector.
    [PATCH] w1: netlink: Mark netlink group 1 as unused.
    [PATCH] w1: Move w1-connector definitions into linux/include/connector.h
    [PATCH] w1: Userspace communication protocol over connector.
    [PATCH] w1: Replace dscore and ds_w1_bridge with ds2490 driver.
    [PATCH] w1: Added default generic read/write operations.

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: (27 commits)
    [PATCH] PCI: nVidia quirk to make AER PCI-E extended capability visible
    [PATCH] PCI: fix issues with extended conf space when MMCONFIG disabled because of e820
    [PATCH] PCI: Bus Parity Status sysfs interface
    [PATCH] PCI: fix memory leak in MMCONFIG error path
    [PATCH] PCI: fix error with pci_get_device() call in the mpc85xx driver
    [PATCH] PCI: MSI-K8T-Neo2-Fir: run only where needed
    [PATCH] PCI: fix race with pci_walk_bus and pci_destroy_dev
    [PATCH] PCI: clean up pci documentation to be more specific
    [PATCH] PCI: remove unneeded msi code
    [PATCH] PCI: don't move ioapics below PCI bridge
    [PATCH] PCI: cleanup unused variable about msi driver
    [PATCH] PCI: disable msi mode in pci_disable_device
    [PATCH] PCI: Allow MSI to work on kexec kernel
    [PATCH] PCI: AMD 8131 MSI quirk called too late, bus_flags not inherited ?
    [PATCH] PCI: Move various PCI IDs to header file
    [PATCH] PCI Bus Parity Status-broken hardware attribute, EDAC foundation
    [PATCH] PCI: i386/x86_84: disable PCI resource decode on device disable
    [PATCH] PCI ACPI: Rename the functions to avoid multiple instances.
    [PATCH] PCI: don't enable device if already enabled
    [PATCH] PCI: Add a "enable" sysfs attribute to the pci devices to allow userspace (Xorg) to enable devices without doing foul direct access
    ...

    Linus Torvalds
     
  • Add a revocation notification method to the key type and calls it whilst
    the key's semaphore is still write-locked after setting the revocation
    flag.

    The patch then uses this to maintain a reference on the task_struct of the
    process that calls request_key() for as long as the authorisation key
    remains unrevoked.

    This fixes a potential race between two processes both of which have
    assumed the authority to instantiate a key (one may have forked the other
    for example). The problem is that there's no locking around the check for
    revocation of the auth key and the use of the task_struct it points to, nor
    does the auth key keep a reference on the task_struct.

    Access to the "context" pointer in the auth key must thenceforth be done
    with the auth key semaphore held. The revocation method is called with the
    target key semaphore held write-locked and the search of the context
    process's keyrings is done with the auth key semaphore read-locked.

    The check for the revocation state of the auth key just prior to searching
    it is done after the auth key is read-locked for the search. This ensures
    that the auth key can't be revoked between the check and the search.

    The revocation notification method is added so that the context task_struct
    can be released as soon as instantiation happens rather than waiting for
    the auth key to be destroyed, thus avoiding the unnecessary pinning of the
    requesting process.

    Signed-off-by: David Howells
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     
  • Introduce SELinux hooks to support the access key retention subsystem
    within the kernel. Incorporate new flask headers from a modified version
    of the SELinux reference policy, with support for the new security class
    representing retained keys. Extend the "key_alloc" security hook with a
    task parameter representing the intended ownership context for the key
    being allocated. Attach security information to root's default keyrings
    within the SELinux initialization routine.

    Has passed David's testsuite.

    Signed-off-by: Michael LeMay
    Signed-off-by: David Howells
    Signed-off-by: James Morris
    Acked-by: Chris Wright
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael LeMay
     
  • Change the 5th argument of snd_mpu401_uart_new() to bit flags
    instead of a boolean. The argument takes bits that consist of
    MPU401_INFO_XXX flags.
    The callers that used the value 1 there are replaced with
    MPU401_INFO_INTEGRATED.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Fix the description of cs5535audio driver in ALSA-Configuraiton.txt.
    Now it supports only single device.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Fixed the description of snd-hda-intel driver in ALSA-Configuration.txt
    document.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Remove obsolete descriptions about the dependency on CONFIG_ISA
    for vxpocket and pdaudiocf drivers.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Enable the support of mpu401 PCI port only when mpu_port=1 module
    option is given, i.e. disabled as default.
    It turned out that the check of integrated midi port isn't perfect
    and caused hang-ups on some boards.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Fixed a typo in writing-an-alsa-driver document.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Remove unneeded read/write_size fields in proc text ops.
    snd_info_set_text_ops() is fixed, too.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Added the support for Thinkpad X60/T60/Z60 laptops with AD1981HD codec.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • There are three types of messages between w1 core and userspace:
    1. Events. They are generated each time new master or slave device found
    either due to automatic or requested search.
    2. Userspace commands. Includes read/write and search/alarm search comamnds.
    3. Replies to userspace commands.

    From: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • Evgeniy Polyakov
     
  • Special file in each w1 slave device's directory called "rw" is created
    each time new slave and no appropriate w1 family is registered.
    "rw" file supports read and write operations, which allows to perform
    almost any kind of operations. Each logical operation is a transaction
    in nature, which can contain several (two or one) low-level operations.
    Let's see how one can read EEPROM context:
    1. one must write control buffer, i.e. buffer containing command byte
    and two byte address. At this step bus is reset and appropriate device
    is selected using either W1_SKIP_ROM or W1_MATCH_ROM command.
    Then provided control buffer is being written to the wire.
    2. reading. This will issue reading eeprom response.

    It is possible that between 1. and 2. w1 master thread will reset bus for
    searching and slave device will be even removed, but in this case 0xff will
    be read, since no device was selected.

    Signed-off-by: Evgeniy Polyakov
    Signed-off-by: Greg Kroah-Hartman

    Evgeniy Polyakov
     
  • This driver implements support for the National Semiconductor LM70
    temperature sensor.

    The LM70 temperature sensor chip supports a single temperature sensor.
    It communicates with a host processor (or microcontroller) via an
    SPI/Microwire Bus interface.

    Communication with the LM70 is simple: when the temperature is to be sensed,
    the driver accesses the LM70 using SPI communication: 16 SCLK cycles
    comprise the MOSI/MISO loop. At the end of the transfer, the 11-bit 2's
    complement digital temperature (sent via the SIO line), is available in the
    driver for interpretation. This driver makes use of the kernel's in-core
    SPI support.

    Signed-off-by: Kaiwan N Billimoria
    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Kaiwan N Billimoria
     
  • i2c-i801: Remove force_addr parameter

    Remove the force_addr module parameter. It doesn't appear to ever
    have been needed, and PCI resources shouldn't be arbitrarily
    changed anyway.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • Documentation update for the scx200_acb driver. Hopefully this will
    help future users.

    References:

    [lm-sensors] Support of i2c-nscacb (April, May 2005)
    http://lists.lm-sensors.org/pipermail/lm-sensors/2005-April/011756.html
    http://lists.lm-sensors.org/pipermail/lm-sensors/2005-May/012043.html

    [lm-sensors] making a geode i2c slave driver (April 2006)
    http://lists.lm-sensors.org/pipermail/lm-sensors/2006-April/015998.html

    Kernel bug #6445
    http://bugzilla.kernel.org/show_bug.cgi?id=6445

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • New hardware monitoring driver for the Abit uGuru

    Signed-off-by: Hans de Goede
    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Hans de Goede
     
  • Reword and complete certain parts of the hwmon sysfs-interface
    documentation file. Hopefully this will make things clearer for new
    driver authors.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • This patch cleans up hwmon sysfs documentation file, plus introduces
    the description of DC/PWM selection for fan speed control.

    Signed-off-by: Rudolf Marek
    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Rudolf Marek
     
  • The following patch adds support for the OpenCores I2C controller IP
    core (See http://www.opencores.org/projects.cgi/web/i2c/overview).

    Signed-off-by: Peter Korsgaard
    Signed-off-by: Andrew Morton
    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Peter Korsgaard
     
  • Improve the help text for CONFIG_HWMON to let the users know how they
    pick the right hardware monitoring driver(s) for their system.

    Also fix a couple typos in the related documentation file and improve
    some parts a bit.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • One more motherboard confirmed to have an LM83 temperature sensor chip.
    Thanks to Steven Hardy for reporting.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • Add support for the w83791d sensor chip. The w83791d hardware is
    somewhere between the w83781d and the w83792d and this driver code
    is derived from the code that supports those chips.

    Signed-off-by: Charles Spirakis
    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Charles Spirakis
     
  • Add support for the new nForce4 MCP51 (also known as nForce 410 or
    430) and nForce4 MCP55 to the i2c-nforce2 driver. Some code changes
    were required because the base I/O address registers have changed in
    these versions. Standard BARs are now being used, while the original
    nForce2 chips used non-standard ones.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • Properly document on which systems the i2c-piix4 SMBus driver will
    refuse to load. Hopefully this will make it clearer for users, which
    were often wondering why their destop or server systems were detected
    as laptops.

    Closes bug #6429.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare
     
  • Fix i2c-piix4 documentation typo.

    Signed-off-by: Jean Delvare
    Signed-off-by: Greg Kroah-Hartman

    Jean Delvare