12 Sep, 2009

3 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6: (377 commits)
    ASoC: au1x: PSC-AC97 bugfixes
    ALSA: dummy - Increase MAX_PCM_SUBSTREAMS to 128
    ALSA: dummy - Add debug proc file
    ALSA: Add const prefix to proc helper functions
    ALSA: Re-export snd_pcm_format_name() function
    ALSA: hda - Use auto model for HP laptops with ALC268 codec
    ALSA: cs46xx - Fix minimum period size
    ASoC: Fix WM835x Out4 capture enumeration
    ALSA: Remove unneeded ifdef from sound/core.h
    ALSA: Remove struct snd_monitor_file from public sound/core.h
    ASoC: Remove unuused hw_read_t
    sound: oxygen: work around MCE when changing volume
    ALSA: dummy - Fake buffer allocations
    ALSA: hda/realtek: Added support for CLEVO M540R subsystem, 6 channel + digital
    ASoC: fix pxa2xx-ac97.c breakage
    ALSA: dummy - Fix the timer calculation in systimer mode
    ALSA: dummy - Add more description
    ALSA: dummy - Better jiffies handling
    ALSA: dummy - Support high-res timer mode
    ALSA: Release v1.0.21
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: (54 commits)
    [S390] tape: Use pr_xxx instead of dev_xxx in shared driver code
    [S390] Wire up page fault events for software perf counters.
    [S390] Remove smp_cpu_not_running.
    [S390] Get rid of cpuid.h header file.
    [S390] Limit cpu detection to 256 physical cpus.
    [S390] tape: Fix device online messages
    [S390] Enable guest page hinting by default.
    [S390] use generic scatterlist.h
    [S390] s390dbf: Add description for usage of "%s" in sprintf events
    [S390] Initialize __LC_THREAD_INFO early.
    [S390] fix recursive locking on page_table_lock
    [S390] kvm: use console_initcall() to initialize s390 virtio console
    [S390] tape: reversed order of labels
    [S390] hypfs: Use "%u" instead of "%d" for unsigned ints in snprintf
    [S390] kernel: Print an error message if kernel NSS cannot be defined
    [S390] zcrypt: Free ap_device if dev_set_name fails.
    [S390] zcrypt: Use spin_lock_bh in suspend callback
    [S390] xpram: Remove checksum validation for suspend/resume
    [S390] vmur: Invalid allocation sequence for vmur class
    [S390] hypfs: remove useless variable qname
    ...

    Linus Torvalds
     
  • * 'kmemleak' of git://linux-arm.org/linux-2.6:
    kmemleak: Improve the "Early log buffer exceeded" error message
    kmemleak: fix sparse warning for static declarations
    kmemleak: fix sparse warning over overshadowed flags
    kmemleak: move common painting code together
    kmemleak: add clear command support
    kmemleak: use bool for true/false questions
    kmemleak: Do no create the clean-up thread during kmemleak_disable()
    kmemleak: Scan all thread stacks
    kmemleak: Don't scan uninitialized memory when kmemcheck is enabled
    kmemleak: Ignore the aperture memory hole on x86_64
    kmemleak: Printing of the objects hex dump
    kmemleak: Do not report alloc_bootmem blocks as leaks
    kmemleak: Save the stack trace for early allocations
    kmemleak: Mark the early log buffer as __initdata
    kmemleak: Dump object information on request
    kmemleak: Allow rescheduling during an object scanning

    Linus Torvalds
     

11 Sep, 2009

3 commits


10 Sep, 2009

3 commits

  • * topic/soundcore-preclaim:
    sound: make OSS device number claiming optional and schedule its removal
    sound: request char-major-* module aliases for missing OSS devices
    chrdev: implement __[un]register_chrdev()

    Takashi Iwai
     
  • * topic/snd-printk:
    ALSA: Fixed a typo of printk()
    ALSA: Add debug module option
    ALSA: core - strip too long file names in snd_print*()

    Takashi Iwai
     
  • * topic/hda: (92 commits)
    ALSA: hda - Use auto model for HP laptops with ALC268 codec
    ALSA: hda/realtek: Added support for CLEVO M540R subsystem, 6 channel + digital
    ALSA: hda - Add support of Alienware M17x laptop
    ALSA: hda - Remove dead codes from patch_sigmatel.c
    ALSA: hda - Fix input source selection of IDT92HD73xx
    ALSA: hda - Fix obsolete CONFIG_SND_DEBUG_DETECT
    ALSA: hda - Unmute docking line-out as default with AD1984A codec
    ALSA: hda - Add another entry for Nvidia HDMI device
    ALSA: hda - Add missing GPIO initialization for AD1984A laptop model
    ALSA: hda - Add support of docking auto-mute/mic for AD1984A laptop model
    ALSA: hda - Fix ALC268/ALC269 headphone pin routing
    ALSA: hda - Create "Digital Mic Capture Volume" correctly for IDT codecs
    ALSA: hda - Add more quirk for HP laptops with AD1984A
    ALSA: hda - Add / fix model entries for HD-audio driver
    ALSA: hda - Add full audio support on Acer Aspire 7730G notebook
    ALSA: hda - Improve auto-cfg mixer name for ALC662
    ALSA: hda - Improve auto-cfg mixer name for ALC861-VD
    ALSA: hda - Improve auto-cfg mixer name for ALC262
    ALSA: hda - Improve auto-cfg mixer name for ALC260
    ALSA: hda - Improve auto-cfg mixer name for ALC880
    ...

    Takashi Iwai
     

08 Sep, 2009

1 commit

  • In an ideal world your kmemleak output will be small, when its
    not (usually during initial bootup) you can use the clear command
    to ingore previously reported and unreferenced kmemleak objects. We
    do this by painting all currently reported unreferenced objects grey.
    We paint them grey instead of black to allow future scans on the same
    objects as such objects could still potentially reference newly
    allocated objects in the future.

    To test a critical section on demand with a clean
    /sys/kernel/debug/kmemleak you can do:

    echo clear > /sys/kernel/debug/kmemleak
    test your kernel or modules
    echo scan > /sys/kernel/debug/kmemleak

    Then as usual to get your report with:

    cat /sys/kernel/debug/kmemleak

    Signed-off-by: Luis R. Rodriguez
    Signed-off-by: Catalin Marinas

    Luis R. Rodriguez
     

07 Sep, 2009

2 commits

  • Instead of allocating the real buffers, use a fake buffer and ignore
    read/write in the dummy driver so that we can save the resources.
    For mmap, a single page (unique to the direction, though) is reused
    to all buffers.

    When the app requires to read/write the real buffers, pass fake_buffer=0
    module option at loading time. This will get back to the old behavior.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • The model clevo-m540r was created with 6-channel and digital support. All
    functions verified except spdif. Tested with a VIT D2000 laptop which has:

    [lspci extract]
    Audio device [0403]: Intel Corporation 82801H (ICH8 Family) HD Audio
    Controller [8086:284b] (rev 03)
    Subsystem: CLEVO/KAPOK Computer Device [1558:5409]

    [/proc/asound/card0/codec\#0 header]
    Codec: Realtek ALC883
    Address: 0
    Function Id: 0x1
    Vendor Id: 0x10ec0883
    Subsystem Id: 0x15585409
    Revision Id: 0x100002

    [Added a comment about HP mute and the model description by tiwai]

    Signed-off-by: Dhionel Diaz
    Signed-off-by: Takashi Iwai

    ddiaz@cenditel.gob.ve
     

03 Sep, 2009

1 commit


02 Sep, 2009

3 commits

  • Add a keyctl to install a process's session keyring onto its parent. This
    replaces the parent's session keyring. Because the COW credential code does
    not permit one process to change another process's credentials directly, the
    change is deferred until userspace next starts executing again. Normally this
    will be after a wait*() syscall.

    To support this, three new security hooks have been provided:
    cred_alloc_blank() to allocate unset security creds, cred_transfer() to fill in
    the blank security creds and key_session_to_parent() - which asks the LSM if
    the process may replace its parent's session keyring.

    The replacement may only happen if the process has the same ownership details
    as its parent, and the process has LINK permission on the session keyring, and
    the session keyring is owned by the process, and the LSM permits it.

    Note that this requires alteration to each architecture's notify_resume path.
    This has been done for all arches barring blackfin, m68k* and xtensa, all of
    which need assembly alteration to support TIF_NOTIFY_RESUME. This allows the
    replacement to be performed at the point the parent process resumes userspace
    execution.

    This allows the userspace AFS pioctl emulation to fully emulate newpag() and
    the VIOCSETTOK and VIOCSETTOK2 pioctls, all of which require the ability to
    alter the parent process's PAG membership. However, since kAFS doesn't use
    PAGs per se, but rather dumps the keys into the session keyring, the session
    keyring of the parent must be replaced if, for example, VIOCSETTOK is passed
    the newpag flag.

    This can be tested with the following program:

    #include
    #include
    #include

    #define KEYCTL_SESSION_TO_PARENT 18

    #define OSERROR(X, S) do { if ((long)(X) == -1) { perror(S); exit(1); } } while(0)

    int main(int argc, char **argv)
    {
    key_serial_t keyring, key;
    long ret;

    keyring = keyctl_join_session_keyring(argv[1]);
    OSERROR(keyring, "keyctl_join_session_keyring");

    key = add_key("user", "a", "b", 1, keyring);
    OSERROR(key, "add_key");

    ret = keyctl(KEYCTL_SESSION_TO_PARENT);
    OSERROR(ret, "KEYCTL_SESSION_TO_PARENT");

    return 0;
    }

    Compiled and linked with -lkeyutils, you should see something like:

    [dhowells@andromeda ~]$ keyctl show
    Session Keyring
    -3 --alswrv 4043 4043 keyring: _ses
    355907932 --alswrv 4043 -1 \_ keyring: _uid.4043
    [dhowells@andromeda ~]$ /tmp/newpag
    [dhowells@andromeda ~]$ keyctl show
    Session Keyring
    -3 --alswrv 4043 4043 keyring: _ses
    1055658746 --alswrv 4043 4043 \_ user: a
    [dhowells@andromeda ~]$ /tmp/newpag hello
    [dhowells@andromeda ~]$ keyctl show
    Session Keyring
    -3 --alswrv 4043 4043 keyring: hello
    340417692 --alswrv 4043 4043 \_ user: a

    Where the test program creates a new session keyring, sticks a user key named
    'a' into it and then installs it on its parent.

    Signed-off-by: David Howells
    Signed-off-by: James Morris

    David Howells
     
  • Add garbage collection for dead, revoked and expired keys. This involved
    erasing all links to such keys from keyrings that point to them. At that
    point, the key will be deleted in the normal manner.

    Keyrings from which garbage collection occurs are shrunk and their quota
    consumption reduced as appropriate.

    Dead keys (for which the key type has been removed) will be garbage collected
    immediately.

    Revoked and expired keys will hang around for a number of seconds, as set in
    /proc/sys/kernel/keys/gc_delay before being automatically removed. The default
    is 5 minutes.

    Signed-off-by: David Howells
    Signed-off-by: James Morris

    David Howells
     
  • Added the quirk for Alienware M17x with IDT 92HD73* codec chip.
    It has two HP and one line-out jack, one mic jack, a built-in
    speaker and a built-in mic.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     

28 Aug, 2009

1 commit

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ericvh/v9fs:
    9p: update documentation pointers
    9p: remove unnecessary v9fses->options which duplicates the mount string
    net/9p: insulate the client against an invalid error code sent by a 9p server
    9p: Add missing cast for the error return value in v9fs_get_inode
    9p: Remove redundant inode uid/gid assignment
    9p: Fix possible regressions when ->get_sb fails.
    9p: Fix v9fs show_options
    9p: Fix possible memleak in v9fs_inode_from fid.
    9p: minor comment fixes
    9p: Fix possible inode leak in v9fs_get_inode.
    9p: Check for error in return value of v9fs_fid_add

    Linus Torvalds
     

27 Aug, 2009

2 commits

  • Add debug module option to snd core.
    This controls the debug print level. When CONFIG_SND_DEBUG_VERBOSE
    is set, you can suppress the debug messages by giving or changing this
    parameter to a lower value. debug=0 means no debug messsages.
    As default, it's set to the verbose level 2.

    Since this option can be changed dynamically via sysfs file, you can
    suppress the verbose debug messages on the fly, which wasn't possible
    before.

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • By writing dump= to the kmemleak file, kmemleak will look up an
    object with that address and dump the information it has about it to
    syslog. This is useful in debugging memory leaks.

    Signed-off-by: Catalin Marinas

    Catalin Marinas
     

26 Aug, 2009

1 commit


20 Aug, 2009

1 commit

  • Fix some issues with the AFS documentation, found when testing AFS on ppc64:

    - Update AFS features: reading/writing, local caching
    - Typo in kafs sysfs debug file
    - Use modprobe instead of insmod in example
    - Update IPs for grand.central.org

    Signed-off-by: Anton Blanchard
    Signed-off-by: David Howells
    Signed-off-by: Linus Torvalds

    Anton Blanchard
     

19 Aug, 2009

1 commit

  • The commit 2ff05b2b (oom: move oom_adj value) moveed the oom_adj value to
    the mm_struct. It was a very good first step for sanitize OOM.

    However Paul Menage reported the commit makes regression to his job
    scheduler. Current OOM logic can kill OOM_DISABLED process.

    Why? His program has the code of similar to the following.

    ...
    set_oom_adj(OOM_DISABLE); /* The job scheduler never killed by oom */
    ...
    if (vfork() == 0) {
    set_oom_adj(0); /* Invoked child can be killed */
    execve("foo-bar-cmd");
    }
    ....

    vfork() parent and child are shared the same mm_struct. then above
    set_oom_adj(0) doesn't only change oom_adj for vfork() child, it's also
    change oom_adj for vfork() parent. Then, vfork() parent (job scheduler)
    lost OOM immune and it was killed.

    Actually, fork-setting-exec idiom is very frequently used in userland program.
    We must not break this assumption.

    Then, this patch revert commit 2ff05b2b and related commit.

    Reverted commit list
    ---------------------
    - commit 2ff05b2b4e (oom: move oom_adj value from task_struct to mm_struct)
    - commit 4d8b9135c3 (oom: avoid unnecessary mm locking and scanning for OOM_DISABLE)
    - commit 8123681022 (oom: only oom kill exiting tasks with attached memory)
    - commit 933b787b57 (mm: copy over oom_adj value at fork time)

    Signed-off-by: KOSAKI Motohiro
    Cc: Paul Menage
    Cc: David Rientjes
    Cc: KAMEZAWA Hiroyuki
    Cc: Rik van Riel
    Cc: Linus Torvalds
    Cc: Oleg Nesterov
    Cc: Nick Piggin
    Cc: Mel Gorman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    KOSAKI Motohiro
     

18 Aug, 2009

1 commit


14 Aug, 2009

3 commits


12 Aug, 2009

1 commit


10 Aug, 2009

3 commits

  • This will register the ioctl range used by nilfs2 file system to the
    table listed in Documentation/ioctl/ioctl-number.txt.

    Signed-off-by: Ryusuke Konishi
    Signed-off-by: Linus Torvalds

    Ryusuke Konishi
     
  • If any OSS support is enabled, regardless of built-in or module,
    sound_core claims full OSS major number (that is, the old 0-255
    region) to trap open attempts and request sound modules using custom
    module aliases. This feature is redundant as chrdev already has such
    mechanism. This preemptive claiming prevents alternative OSS
    implementation.

    The custom module aliases are scheduled to be removed and the previous
    patch made soundcore emit the standard chrdev aliases too to help
    transition.

    This patch schedule the feature for removal in a year and makes it
    optional so that developers and distros can try new things in the
    meantime without rebuilding the kernel. The pre-claiming can be
    turned off by using SOUND_OSS_CORE_PRECLAIM and/or kernel parameter
    soundcore.preclaim_oss.

    As this allows sound minors to be individually grabbed by other users,
    this patch updates sound_insert_unit() such that if registering
    individual device region fails, it tries the next available slot.

    For details on removal plan, please read the entry added by this patch
    in feature-removal-schedule.txt .

    Signed-off-by: Tejun Heo
    Cc: Alan Cox
    Signed-off-by: Takashi Iwai

    Tejun Heo
     
  • …el/git/tip/linux-2.6-tip

    * 'core-fixes-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    lockdep: Fix typos in documentation
    lockdep: Fix file mode of lock_stat
    rtmutex: Avoid deadlock in rt_mutex_start_proxy_lock()

    Linus Torvalds
     

08 Aug, 2009

1 commit

  • * master.kernel.org:/home/rmk/linux-2.6-arm: (30 commits)
    ARM: 5639/1: arm: clkdev.c should include
    ARM: 5638/1: arch/arm/kernel/signal.c: use correct address space for CRUNCH
    ARM: 5637/1: [KS8695] Don't reference CLOCK_TICK_RATE in drivers
    ARM: S3C64XX: serial: Fix section mismatch warning
    ARM: S3C24XX: serial: Fix section mismatch warnings
    ARM: S3C: PWM fix for low duty cycle
    ARM: 5597/1: [PCI] reset all internal hardware prior PCI initialization
    ARM: 5627/1: Fix restoring of lr at the end of mcount
    ARM: 5624/1: Document cache aliasing region
    S3C64XX: Fix ARMCLK configuration
    S3C64XX: Fix get_rate() for ARMCLK
    S3C24XX: GPIO: Fix pin range check in s3c_gpiolib_getchip
    mx3 defconfig update
    mx27 defconfig update
    ARM: 5623/1: Treo680: ir shutdown typo fix
    ARM: includecheck fix: plat-stmp3xxx/pinmux.c
    ARM: includecheck fix: plat-s3c64xx/pm.c
    ARM: includecheck fix: mach-omap2/mcbsp.c
    ARM: includecheck fix: mach-omap1/mcbsp.c
    ARM: includecheck fix: board-sffsdr.c
    ...

    Linus Torvalds
     

07 Aug, 2009

1 commit


05 Aug, 2009

2 commits

  • * 'for-linus' of git://git.kernel.dk/linux-2.6-block:
    Make SCSI SG v4 driver enabled by default and remove EXPERIMENTAL dependency, since udev depends on BSG
    block: Update topology documentation
    block: Stack optimal I/O size
    block: Add a wrapper for setting minimum request size without a queue
    block: Make blk_queue_stack_limits use the new stacking interface

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (47 commits)
    ehea: Fix napi list corruption on ifconfig down
    igbvf: Allow VF driver to correctly recognize failure to set mac
    3c59x: Fix build failure with gcc 3.2
    sky2: Avoid transmits during sky2_down()
    iwlagn: do not send key clear commands when rfkill enabled
    libertas: Read buffer overflow
    drivers/net/wireless: introduce missing kfree
    drivers/net/wireless/iwlwifi: introduce missing kfree
    zd1211rw: fix unaligned access in zd_mac_rx
    cfg80211: fix regression on beacon world roaming feature
    cfg80211: add two missing NULL pointer checks
    ixgbe: Patch to modify 82598 PCIe completion timeout values
    bluetooth: rfcomm_init bug fix
    mlx4_en: Fix double pci unmapping.
    mISDN: Fix handling of receive buffer size in L1oIP
    pcnet32: VLB support fixes
    pcnet32: remove superfluous NULL pointer check in pcnet32_probe1()
    net: restore the original spinlock to protect unicast list
    netxen: fix coherent dma mask setting
    mISDN: Read buffer overflow
    ...

    Linus Torvalds
     

02 Aug, 2009

1 commit

  • The standard ACPI dock driver can handle the hotplug bays and docks of
    the ThinkPads just fine (including batteries) as of 2.6.27, and the
    code in thinkpad-acpi for the dock and bay subdrivers is currently
    broken anyway...

    Userspace needs some love to support the two-stage ejection nicely,
    but it is simple enough to do through udev rules (you don't even need
    HAL) so this wouldn't justify fixing the dock and bay subdrivers,
    either.

    That leaves warm-swap bays (_EJ3) support for thinkpad-acpi, as well
    as support for the weird dock of the model 570, but since such support
    has never left the "experimental" stage, it is also not a strong
    enough reason to find a way to fix this code.

    Users of ThinkPads with warm-swap bays are urged to request that _EJ3
    support be added to the regular ACPI dock driver, if such feature is
    indeed useful for them.

    Signed-off-by: Henrique de Moraes Holschuh
    Signed-off-by: Len Brown

    Henrique de Moraes Holschuh
     

01 Aug, 2009

1 commit


31 Jul, 2009

2 commits


30 Jul, 2009

2 commits