Permalink
Commits on Oct 11, 2005
  1. Linux v2.6.14-rc4

    Linus Torvalds committed Oct 11, 2005
Commits on Oct 10, 2005
  1. [PATCH] i386: Don't discard upper 32bits of HWCR on K8

    Need to use long long, not long when RMWing a MSR. I think
    it's harmless right now, but still should be better fixed
    if AMD adds any bits in the upper 32bit of HWCR.
    
    Bug was introduced with the TLB flush filter fix for i386
    
    Signed-off-by: Andi Kleen <ak@suse.de>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Andi Kleen committed with Linus Torvalds Oct 10, 2005
  2. [PATCH] x86_64: Allocate cpu local data for all possible CPUs

    CPU hotplug fills up the possible map to NR_CPUs, but it did that after
    setting up per CPU data. This lead to CPU data not getting allocated
    for all possible CPUs, which lead to various side effects.
    
    Signed-off-by: Andi Kleen <ak@suse.de>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Andi Kleen committed with Linus Torvalds Oct 10, 2005
  3. Use the new "kill_proc_info_as_uid()" for USB disconnect too

    All the same issues - we can't just save the pointer to the thread, we
    must save the pid/uid/euid combination.
    
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Linus Torvalds committed Oct 10, 2005
  4. @laf0rge

    [PATCH] Fix signal sending in usbdevio on async URB completion

    If a process issues an URB from userspace and (starts to) terminate
    before the URB comes back, we run into the issue described above.  This
    is because the urb saves a pointer to "current" when it is posted to the
    device, but there's no guarantee that this pointer is still valid
    afterwards.
    
    In fact, there are three separate issues:
    
    1) the pointer to "current" can become invalid, since the task could be
       completely gone when the URB completion comes back from the device.
    
    2) Even if the saved task pointer is still pointing to a valid task_struct,
       task_struct->sighand could have gone meanwhile.
    
    3) Even if the process is perfectly fine, permissions may have changed,
       and we can no longer send it a signal.
    
    So what we do instead, is to save the PID and uid's of the process, and
    introduce a new kill_proc_info_as_uid() function.
    
    Signed-off-by: Harald Welte <laforge@gnumonks.org>
    [ Fixed up types and added symbol exports ]
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    laf0rge committed with Linus Torvalds Oct 10, 2005
  5. [SPARC64]: Fix Ultra5, Ultra60, et al. boot failures.

    On the boot processor, we need to do the move onto the Linux trap
    table a little bit differently else we'll take unhandlable faults in
    the firmware address space.
    
    Previously we would do the following:
    
    1) Disable PSTATE_IE in %pstate.
    2) Set %tba by hand to sparc64_ttable_tl0
    3) Initialize alternate, mmu, and interrupt global
       trap registers.
    4) Call prom_set_traptable()
    
    That doesn't work very well actually with the way we boot the kernel
    VM these days.  It worked by luck on many systems because the firmware
    accesses for the prom_set_traptable() call happened to be loaded into
    the TLB already, something we cannot assume.
    
    So the new scheme is this:
    
    1) Clear PSTATE_IE in %pstate and set %pil to 15
    2) Call prom_set_traptable()
    3) Initialize alternate, mmu, and interrupt global
       trap registers.
    
    and this works quite well.  This sequence has been moved into a
    callable function in assembler named setup-trap_table().  The idea is
    that eventually trampoline.S can use this code as well.  That isn't
    possible currently due to some complications, but eventually we should
    be able to do it.
    
    Thanks to Meelis Roos for the Ultra5 boot failure report.
    
    Signed-off-by: David S. Miller <davem@davemloft.net>
    David S. Miller committed Oct 10, 2005
  6. [PATCH] x86_64: Fix change_page_attr cache flushing

    Noticed by Terence Ripperda
    
    Undo wrong change in global_flush_tlb. We need to flush the caches in all
    cases, not just when pages were reverted. This was a bogus optimization
    added earlier, but it was wrong.
    
    Signed-off-by: Andi Kleen <ak@suse.de>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Andi Kleen committed with Linus Torvalds Oct 10, 2005
  7. Merge master.kernel.org:/home/rmk/linux-2.6-ucb

    Linus Torvalds committed Oct 10, 2005
  8. Merge master.kernel.org:/home/rmk/linux-2.6-arm

    Linus Torvalds committed Oct 10, 2005
  9. @kyllikki

    [ARM] 2968/1: defconfig for the ARM Collie platform

    Patch from Vincent Sanders
    
    Add a defconfig for the ARM Collie platform
    
    Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
    Signed-off-by: Vincent Sanders <vince@arm.linux.org.uk>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    kyllikki committed with Russell King Oct 10, 2005
  10. @kyllikki

    [ARM] 2967/1: defconfig for the ARM Corgi platform

    Patch from Vincent Sanders
    
    Add a defconfig for the ARM Corgi Zarus platform
    
    Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
    Signed-off-by: Vincent Sanders <vince@arm.linux.org.uk>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    kyllikki committed with Russell King Oct 10, 2005
  11. @kyllikki

    [ARM] 2966/1: defconfig for the ARM Poodle platform

    Patch from Vincent Sanders
    
    Add a defconfig for the ARM Poodle Zarus platform
    
    Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
    Signed-off-by: Vincent Sanders <vince@arm.linux.org.uk>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    kyllikki committed with Russell King Oct 10, 2005
  12. @kyllikki

    [ARM] 2965/1: defconfig for the ARM Spitz platform

    Patch from Vincent Sanders
    
    Add a defconfig for the ARM Spitz Zarus platform
    
    Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
    Signed-off-by: Vincent Sanders <vince@arm.linux.org.uk>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    kyllikki committed with Russell King Oct 10, 2005
  13. [ARM] 2956/1: fix the "Fix gcc4 build errors in ucb1x00-core.c"

    Patch from Nicolas Pitre
    
    drivers/mfd/ucb1x00-core.c: In function 'ucb1x00_probe':
    drivers/mfd/ucb1x00-core.c:482: error: 'ucb1x00_class' undeclared (first use in this function)
    
    Signed-off-by: Nicolas Pitre <nico@cam.org>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    Nicolas Pitre committed with Russell King Oct 10, 2005
  14. @markus-oberhumer

    [PATCH] i386: fix stack alignment for signal handlers

    This fixes the setup of the alignment of the signal frame, so that all
    signal handlers are run with a properly aligned stack frame.
    
    The current code "over-aligns" the stack pointer so that the stack frame
    is effectively always mis-aligned by 4 bytes.  But what we really want
    is that on function entry ((sp + 4) & 15) == 0, which matches what would
    happen if the stack were aligned before a "call" instruction.
    
    Signed-off-by: Markus F.X.J. Oberhumer <markus@oberhumer.com>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    markus-oberhumer committed with Linus Torvalds Oct 9, 2005
  15. @ozbenh

    [PATCH] ide: Workaround PM problem

    The logic in ide_do_request() doesn't guarantee that both drives will be
    serviced after a call.  It may "forget" to service one in some
    circumstances, including when one of the drive is suspended (it will
    eventually fail to service the slave when the master is suspended for
    example).  This prevents the wakeup requests that gets queued on wakeup
    from sleep from beeing serviced in some cases when 2 drives are sharing
    an IDE bus.
    
    The problem is deep enough in the way this code works (and there are
    probably a few other problematic but rare corner cases) and fixing it
    would require some major rethinking of the way IDE decides which channel
    to service.  This is not 2.6.14 material.  However, in the meantime,
    Bart has accepted this simple workaround that will fix the crash on
    wakeup from sleep since this specific corner case is actually hitting
    users to get into 2.6.14.
    
    Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    ozbenh committed with Linus Torvalds Oct 9, 2005
  16. [PATCH] relayfs: fix bogus param value in call to vmap

    The third param in this call to vmap shouldn't be GFP_KERNEL, which
    makes no sense, but rather VM_MAP.  Thanks to Al Viro for spotting
    this.
    
    Signed-off-by: Tom Zanussi <zanussi@us.ibm.com>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Tom Zanussi committed with Linus Torvalds Oct 9, 2005
  17. Merge master.kernel.org:/home/rmk/linux-2.6-arm

    Linus Torvalds committed Oct 10, 2005
  18. [PATCH] uml: fix x86_64 with !CONFIG_FRAME_POINTER

    UML/x86_64 doesn't run when built with frame pointers disabled.  There
    was an implicit frame pointer assumption in the stub segfault handler.
    With frame pointers disabled, UML dies on handling its first page fault.
    
    The container-of part of this is from Paolo Giarrusso <blaisorblade@yahoo.it>.
    
    Signed-off-by: Jeff Dike <jdike@addtoit.com>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Jeff Dike committed with Linus Torvalds Oct 9, 2005
  19. @rjwysocki

    [PATCH] x86_64: Set up safe page tables during resume

    The following patch makes swsusp avoid the possible temporary corruption
    of page translation tables during resume on x86-64.  This is achieved by
    creating a copy of the relevant page tables that will not be modified by
    swsusp and can be safely used by it on resume.
    
    The problem is that during resume on x86-64 swsusp may temporarily
    corrupt the page tables used for the direct mapping of RAM.  If that
    happens, a page fault occurs and cannot be handled properly, which leads
    to the solid hang of the affected system.  This leads to the loss of the
    system's state from before suspend and may result in the loss of data or
    the corruption of filesystems, so it is a serious issue.  Also, it
    appears to happen quite often (for me, as often as 50% of the time).
    
    The problem is related to the fact that (at least) one of the PMD
    entries used in the direct memory mapping (starting at PAGE_OFFSET)
    points to a page table the physical address of which is much greater
    than the physical address of the PMD entry itself.  Moreover,
    unfortunately, the physical address of the page table before suspend
    (i.e.  the one stored in the suspend image) happens to be different to
    the physical address of the corresponding page table used during resume
    (i.e.  the one that is valid right before swsusp_arch_resume() in
    arch/x86_64/kernel/suspend_asm.S is executed).  Thus while the image is
    restored, the "offending" PMD entry gets overwritten, so it does not
    point to the right physical address any more (i.e.  there's no page
    table at the address pointed to by it, because it points to the address
    the page table has been at during suspend).  Consequently, if the PMD
    entry is used later on, and it _is_ used in the process of copying the
    image pages, a page fault occurs, but it cannot be handled in the normal
    way and the system hangs.
    
    In principle we can call create_resume_mapping() from
    swsusp_arch_resume() (ie.  from suspend_asm.S), but then the memory
    allocations in create_resume_mapping(), resume_pud_mapping(), and
    resume_pmd_mapping() must be made carefully so that we use _only_
    NosaveFree pages in them (the other pages are overwritten by the loop in
    swsusp_arch_resume()).  Additionally, we are in atomic context at that
    time, so we cannot use GFP_KERNEL.  Moreover, if one of the allocations
    fails, we should free all of the allocated pages, so we need to trace
    them somehow.
    
    All of this is done in the appended patch, except that the functions
    populating the page tables are located in arch/x86_64/kernel/suspend.c
    rather than in init.c.  It may be done in a more elegan way in the
    future, with the help of some swsusp patches that are in the works now.
    
    [AK: move some externs into headers, renamed a function]
    
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Signed-off-by: Andi Kleen <ak@suse.de>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    rjwysocki committed with Linus Torvalds Oct 9, 2005
  20. [PATCH] uml: cleanup whitespace for COW driver

    Fix whitespace - I split this off the previous patch for easier review.
    
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Paolo 'Blaisorblade' Giarrusso committed with Linus Torvalds Oct 9, 2005
  21. [PATCH] uml: cleanup byte order macros for COW driver

    After restoring the existing code, make it work also when included in
    kernelspace code (which isn't currently the case, but at least this will prevent
    people from "fixing" it as just happened).
    Whitespace is fixed in next patch - it cluttered the diff too much.
    
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Paolo 'Blaisorblade' Giarrusso committed with Linus Torvalds Oct 9, 2005
  22. [PATCH] uml: restore include breakage, breaking binary format of COW …

    …driver
    
    Commit 44456d3, between 2.6.13-rc3 and -rc4,
    was a "nice cleanup" which broke something. Revert the offending part.
    
    It broke because:
    a) because this part doesn't fall under the description
    b) the author didn't know what he was doing here
    c) the author didn't try to compile the existing code and see that it worked
       perfectly.
    d) the author didn't ask us what was happening
    e) you didn't either, and somebody there should have learned that UML is a bit
       different.
    
    In fact, UML is special in linking to host libc and using its includes.
    
    In particular, since host includes always define both __BIG_ENDIAN and
    __LITTLE_ENDIAN, ntohll() macros started thinking to be in a big-endian world;
    and on-disk compatibility was broken.
    
    Many thanks go to Nix for reporting the problem and correctly diagnosing an
    endianness problem.
    
    Btw, this patch restores the previous code, which worked; but the definitions
    would be uncorrect if used in kernelspace files.
    
    Next patch addresses that.
    
    Cc: Nix <nix@esperi.org.uk>, Olaf Hering <olh@suse.de>
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Paolo 'Blaisorblade' Giarrusso committed with Linus Torvalds Oct 9, 2005
  23. [PATCH] uml: allow building .s/.i/.lst files from userspace files

    For files which need to include glibc headers (i.e. userspace files), we
    specified the correct flags only for .o, not for .s/.lst/.i. Fix this.
    
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Paolo 'Blaisorblade' Giarrusso committed with Linus Torvalds Oct 9, 2005
  24. [PATCH] uml: add mode=skas0 as a synonym of skas0

    Too many people were confused by skas0 and tried using "mode=skas0". And after
    all, they are right - accept this.
    
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Paolo 'Blaisorblade' Giarrusso committed with Linus Torvalds Oct 9, 2005
  25. [PATCH] Uml: hide commands when not being verbose

    Add a missing $(Q) to a "ln" invocation.
    
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    Paolo 'Blaisorblade' Giarrusso committed with Linus Torvalds Oct 9, 2005
  26. @rostedt

    [PATCH] pcmcia: fix task state at pccard thread exit

    The pccardd thread has a race in it that it can shutdown in the
    TASK_INTERRUPTIBLE state.
    
    Make sure we mark ourselves runnable again as we remove ourselves from
    the wait queue.
    
    Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
    Signed-off-by: Linus Torvalds <torvalds@osdl.org>
    rostedt committed with Linus Torvalds Oct 10, 2005
  27. [ARM] 2964/1: S3C2410 - serial: add .owner to driver

    Patch from Ben Dooks
    
    Initialise the driver's .owner field so that
    the device driver can be referenced to the
    module that owns it
    
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    Ben Dooks committed with Russell King Oct 10, 2005
  28. [ARM] 2963/1: S3C2410 - add .owner field to device_driver

    Patch from Ben Dooks
    
    Add initialisation of .owner field so that
    the device driver can be referenced to the
    module that owns it.
    
    Signed-off-by: Ben Dooks <ben-linux@fluff.org>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    Ben Dooks committed with Russell King Oct 10, 2005
  29. @rpurdie

    [ARM] 2962/1: scoop: Allow GPIO pin suspend state to be specified

    Patch from Richard Purdie
    
    Allow the GPIO pin suspend states to be specified for SCOOP devices.
    This is needed for correct operation on the spitz platform.
    
    Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    rpurdie committed with Russell King Oct 10, 2005
  30. @rpurdie

    [ARM] 2961/1: corgi: Add missing include

    Patch from Richard Purdie
    
    Add a missing include from corgi.c
    
    Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    rpurdie committed with Russell King Oct 10, 2005
  31. @rpurdie

    [ARM] 2960/1: collie: Add missing scoop call parameters

    Patch from Richard Purdie
    
    Add some missing parameters from the scoop calls on collie.
    
    Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    rpurdie committed with Russell King Oct 10, 2005
  32. [ARM] 2959/1: Add test for invalid LDRD/STRD Rd cases in ARM alignmen…

    …t handler
    
    Patch from George G. Davis
    
    Add test for invalid LDRD/STRD Rd cases in ARM alignment handler
    and restore SWP printk KERN_ERR.
    
    Signed-off-by: Steve Longerbeam <slongerbeam@mvista.com>
    Signed-off-by: George G. Davis <gdavis@mvista.com>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    George G. Davis committed with Russell King Oct 10, 2005
  33. [ARM] 2958/1: fix definition in imx-regs.h

    Patch from Sascha Hauer
    
    Fix PD7_AF_UART2_DTR definition
    
    Signed-off-by: Giancarlo Formicuccia <gformicuccia@atinno.com>
    Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
    Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
    Sascha Hauer committed with Russell King Oct 10, 2005