21 Apr, 2006

12 commits


20 Apr, 2006

28 commits

  • * 'for-linus' of git://brick.kernel.dk/data/git/linux-2.6-block:
    [PATCH] block/elevator.c: remove unused exports
    [PATCH] splice: fix smaller sized splice reads
    [PATCH] Don't inherit ->splice_pipe across forks
    [patch] cleanup: use blk_queue_stopped
    [PATCH] Document online io scheduler switching

    Linus Torvalds
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SPARC]: __NR_sys_splice --> __NR_splice

    Linus Torvalds
     
  • It seems latest kernel has a wrong/missing __read_mostly implementation
    for x86_64

    __read_mostly macro should be declared outside of #if CONFIG_X86_VSMP block

    Signed-off-by: Eric Dumazet
    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Eric Dumazet
     
  • AMD K7/K8 CPUs only save/restore the FOP/FIP/FDP x87 registers in FXSAVE
    when an exception is pending. This means the value leak through
    context switches and allow processes to observe some x87 instruction
    state of other processes.

    This was actually documented by AMD, but nobody recognized it as
    being different from Intel before.

    The fix first adds an optimization: instead of unconditionally
    calling FNCLEX after each FXSAVE test if ES is pending and skip
    it when not needed. Then do a x87 load from a kernel variable to
    clear FOP/FIP/FDP.

    This means other processes always will only see a constant value
    defined by the kernel in their FP state.

    I took some pain to make sure to chose a variable that's already
    in L1 during context switch to make the overhead of this low.

    Also alternative() is used to patch away the new code on CPUs
    who don't need it.

    Patch for both i386/x86-64.

    The problem was discovered originally by Jan Beulich. Richard
    Brunner provided the basic code for the workarounds, with contribution
    from Jan.

    This is CVE-2006-1056

    Cc: richard.brunner@amd.com
    Cc: jbeulich@novell.com

    Signed-off-by: Andi Kleen
    Signed-off-by: Linus Torvalds

    Andi Kleen
     
  • - fix mddev_lock() usage bugs in md_attr_show() and md_attr_store().
    [they did not anticipate the possibility of getting a signal]

    - remove mddev_lock_uninterruptible() [unused]

    Signed-off-by: Ingo Molnar
    Acked-by: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • We don't have to #if guard prototypes.

    This also fixes a bug observed by Randy Dunlap due to a misspelled
    option in the #if.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • There was a report of a regression in the ALSA driver for the same
    hardware.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • Update the schedule for the removal of drivers depending on
    OBSOLETE_OSS_DRIVER as follows:

    - adjust OBSOLETE_OSS_DRIVER dependencie
    - from the release of 2.6.16 till the release of 2.6.17:
    approx. two months for users to report problems with the ALSA
    drivers for the same hardware
    - after the release of 2.6.17 (and before 2.6.18):
    remove the subset of drivers marked at OBSOLETE_OSS_DRIVER without
    known regressions in the ALSA drivers for the same hardware

    Additionally, correct some OBSOLETE_OSS_DRIVER dependencies.
    A rationale of the changes is in
    http://lkml.org/lkml/2006/1/28/135

    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     
  • Add a test to detect the ICH7 based Core Duo SONY laptops (such as the SZ1)
    as type3 models.

    Signed-off-by: Arnaud MAZIN < arnaud.mazin@gmail.com>
    Acked-by: Stelian Pop
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Arnaud MAZIN
     
  • This fixes a hang in mpu401_uart.c that can occur when the mpu401 interface
    is non-existent or otherwise doesn't respond to commands but we issue IO
    anyway. snd_mpu401_uart_cmd now returns an error code that is passed up
    the stack so that an open() will fail immediately in such cases.

    Eventually discovered after wine/cxoffice would constantly cause hard
    lockups on my desktop immediately after loading (emulating Windows too
    well). Turned out that I'd recently moved my sound cards around and using
    /dev/sequencer now talks to a sound card with a broken MPU.

    This second version changes -EFAULT to -EIO and frees open resources on
    error too. Test booted and seems to work ok.

    Signed-off-by: Jon Masters
    Cc: Jaroslav Kysela
    Acked-by: Takashi Iwai
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jon Masters
     
  • Fix for bug #6395:

    Fail to resume on Tecra M2 with ADM1032 and Intel 82801DBM

    The BIOS of the Tecra M2 doesn't like it when it has to reboot or resume
    after the i2c-i801 driver has left the SMBus in PEC mode. The most simple
    fix is to clear the PEC bit after after every transaction. That's what
    this driver was doing up to 2.6.15 (inclusive).

    Thanks to Daniele Gaffuri for the very good report.

    Signed-off-by: Jean Delvare
    Cc: Greg KH
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jean Delvare
     
  • On the MSI-K8T-NEO2 FIR ( Athlon-64, Socket 939 with VIA-K8T800- Chipset
    and onboard Sound,... ) the BIOS lets you choose "DISABLED" or "AUTO" for
    the On-Board Sound Device.

    If you add another PCI-Sound-Card the BIOS disables the on-board device.

    So far I have a Quirk, that does set the correspondent BIT in the
    PCI-registers to enable the soundcard.

    But how to ensure that the code is executed ONLY on excactly this kind of
    boards (not any other with similar Chipset)?

    Cc: Jaroslav Kysela
    Acked-by: Takashi Iwai
    Cc: Lee Revell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Johannes Goecke
     
  • Remove the dependence on the async_icount structure in the TIOCGICOUNT
    macro for Xtensa. (Thanks Russell and Adrian for pointing this out)

    Signed-off-by: Chris Zankel
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chris Zankel
     
  • …ences and other cleanups

    During module unloading, cdev_del() must be called to unmap cdev related
    kobject references and other cleanups(such as inode->i_cdev being set to
    NULL) which prevents the OOPS upon subsequent loading, usage and unloading
    of modules(as seen in the mail thread
    http://marc.theaimsgroup.com/?l=linux-kernel&m=114533640609018&w=2).

    Also, remove unneeded test of gpio_base.

    Signed-off-by: Thayumanavar Sachithanantham <thayumk@gmail.com>
    Signed-off-by: Andrew Morton <akpm@osdl.org>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>

    Thayumanavar Sachithanantham
     
  • WARNING: drivers/video/pm2fb.o - Section mismatch: reference
    to .init.data: from .text after 'pm2fb_set_par' (at offset 0xd5d)
    WARNING: drivers/video/pm2fb.o - Section mismatch: reference
    to .init.data: from .text after 'pm2fb_set_par' (at offset 0xd82)

    They are caused because pm2fb_set_par() uses lowhsync and lowvsync which
    are marked __devinitdata.

    Signed-off-by: Darren Jenkins
    Signed-off-by: Adrian Bunk
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Darren Jenkins
     
  • gather_stats() is called with a spinlock held from check_pte_range. We
    cannot reschedule with a lock held.

    Signed-off-by: Christoph Lameter
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     
  • Add myself as the IPMI maintainer.

    Signed-off-by: Corey Minyard
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Corey Minyard
     
  • In cases where a struct kretprobe's *_handler fields are non-NULL, it is
    possible to cause a system crash, due to the possibility of calls ending up
    in zombie functions. Documentation clearly states that unused *_handlers
    should be set to NULL, but kprobe users sometimes fail to do so.

    Fix it by setting the non-relevant fields of the struct kretprobe to NULL.

    Signed-off-by: Ananth N Mavinakayanahalli
    Acked-by: Jim Keniston
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ananth N Mavinakayanahalli
     
  • This patch removes the following unused EXPORT_SYMBOL's:
    - elv_requeue_request
    - elv_completed_request

    They are only used by the block core, hence they need not be exported.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Jens Axboe

    Adrian Bunk
     
  • Signed-off-by: Jens Axboe

    Jens Axboe
     
  • It's really task private, so clear that field on fork after copying
    task structure.

    Signed-off-by: Jens Axboe

    Jens Axboe
     
  • This cleanup the source to use blk_queue_stopped.

    Signed-off-by: Coywolf Qi Hunt
    Signed-off-by: Jens Axboe

    Coywolf Qi Hunt
     
  • We added the ability to change a block device's IO elevator scheduler both
    at kernel boot and on-the-fly, but we only documented the elevator= boot
    parameter. Add a quick how-to on doing it on the fly.

    Signed-off-by: Valdis Kletnieks
    Signed-off-by: Andrew Morton
    Signed-off-by: Jens Axboe

    Valdis Kletnieks
     
  • Make all the vmalloc calls in net/bridge/netfilter/ebtables.c follow
    the standard convention. Remove unnecessary casts, and use '*object'
    instead of 'type'.

    Signed-off-by: Jayachandran C.
    Signed-off-by: Andrew Morton
    Signed-off-by: David S. Miller

    Jayachandran C
     
  • Add some sanity checking. truesize should be at least sizeof(struct
    sk_buff) plus the current packet length. If not, then truesize is
    seriously mangled and deserves a kernel log message.

    Currently we'll do the check for release of stream socket buffers.

    But we can add checks to more spots over time.

    Incorporating ideas from Herbert Xu.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Make sure that we get the full sizeof(struct sk_buff)
    plus the data size accounted for in skb->truesize.

    This will create invariants that will allow adding
    assertion checks on skb->truesize.

    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     
  • Those also break userland regs like following.

    00000000 :
    0: 0f b7 44 24 0c movzwl 0xc(%esp),%eax
    5: 83 ca ff or $0xffffffff,%edx
    8: 0f b7 4c 24 08 movzwl 0x8(%esp),%ecx
    d: 66 83 f8 ff cmp $0xffffffff,%ax
    11: 0f 44 c2 cmove %edx,%eax
    14: 66 83 f9 ff cmp $0xffffffff,%cx
    18: 0f 45 d1 cmovne %ecx,%edx
    1b: 89 44 24 0c mov %eax,0xc(%esp)
    1f: 89 54 24 08 mov %edx,0x8(%esp)
    23: e9 fc ff ff ff jmp 24

    where the tailcall at the end overwrites the incoming stack-frame.

    Signed-off-by: OGAWA Hirofumi
    [ I would _really_ like to have a way to tell gcc about calling
    conventions. The "prevent_tail_call()" macro is pretty ugly ]
    Signed-off-by: Linus Torvalds

    OGAWA Hirofumi
     
  • In a short discussion with Benjamin Herrenschmidt he mentioned
    that Marvell PHYs are powered down the same way as the other
    ones we currently handle. Thus actually do that, hopefully
    saving some power during suspend.

    Signed-off-by: Johannes Berg
    Acked-by: Benjamin Herrenschmidt
    Signed-off-by: David S. Miller

    Johannes Berg