27 Apr, 2008

1 commit

  • Implement __fls on all 64-bit archs:

    alpha has an implementation of fls64.
    Added __fls(x) = fls64(x) - 1.

    ia64 has fls, but not __fls.
    Added __fls based on code of fls.

    mips and powerpc have __ilog2, which is the same as __fls.
    Added __fls = __ilog2.

    parisc, s390, sh and sparc64:
    Include generic __fls.

    x86_64 already has __fls.

    Signed-off-by: Alexander van Heukelum
    Signed-off-by: Ingo Molnar

    Alexander van Heukelum
     

24 Apr, 2008

6 commits


22 Apr, 2008

3 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SPARC]: Remove SunOS and Solaris binary support.

    Linus Torvalds
     
  • * 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: (202 commits)
    [POWERPC] Fix compile breakage for 64-bit UP configs
    [POWERPC] Define copy_siginfo_from_user32
    [POWERPC] Add compat handler for PTRACE_GETSIGINFO
    [POWERPC] i2c: Fix build breakage introduced by OF helpers
    [POWERPC] Optimize fls64() on 64-bit processors
    [POWERPC] irqtrace support for 64-bit powerpc
    [POWERPC] Stacktrace support for lockdep
    [POWERPC] Move stackframe definitions to common header
    [POWERPC] Fix device-tree locking vs. interrupts
    [POWERPC] Make pci_bus_to_host()'s struct pci_bus * argument const
    [POWERPC] Remove unused __max_memory variable
    [POWERPC] Simplify xics direct/lpar irq_host setup
    [POWERPC] Use pseries_setup_i8259_cascade() in pseries_mpic_init_IRQ()
    [POWERPC] Turn xics_setup_8259_cascade() into a generic pseries_setup_i8259_cascade()
    [POWERPC] Move xics_setup_8259_cascade() into platforms/pseries/setup.c
    [POWERPC] Use asm-generic/bitops/find.h in bitops.h
    [POWERPC] 83xx: mpc8315 - fix USB UTMI Host setup
    [POWERPC] 85xx: Fix the size of qe muram for MPC8568E
    [POWERPC] 86xx: mpc86xx_hpcn - Temporarily accept old dts node identifier.
    [POWERPC] 86xx: mark functions static, other minor cleanups
    ...

    Linus Torvalds
     
  • As per Documentation/feature-removal-schedule.txt

    Signed-off-by: David S. Miller

    David S. Miller
     

18 Apr, 2008

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (58 commits)
    ide: remove ide_init_default_irq() macro
    ide: move default IDE ports setup to ide_generic host driver
    ide: remove obsoleted "idex=noprobe" kernel parameter (take 2)
    ide: remove needless hwif->irq check from ide_hwif_configure()
    ide: init hwif->{io_ports,irq} explicitly in legacy VLB host drivers
    ide: limit legacy VLB host drivers to alpha, x86 and mips
    cmd640: init hwif->{io_ports,irq} explicitly
    cmd640: cleanup setup_device_ptrs()
    ide: add ide-4drives host driver (take 3)
    ide: remove ppc ifdef from init_ide_data()
    ide: remove ide_default_io_ctl() macro
    ide: remove CONFIG_IDE_ARCH_OBSOLETE_INIT
    ide: add CONFIG_IDE_ARCH_OBSOLETE_DEFAULTS (take 2)
    ppc/pmac: remove no longer needed IDE quirk
    ppc: don't include
    ppc: remove ppc_ide_md
    ppc/pplus: remove ppc_ide_md.ide_init_hwif hook
    ppc/sandpoint: remove ppc_ide_md hooks
    ppc/lopec: remove ppc_ide_md hooks
    ppc/mpc8xx: remove ppc_ide_md hooks
    ...

    Linus Torvalds
     
  • It is always == '((base) + 0x206)' if CONFIG_IDE_ARCH_OBSOLETE_DEFAULTS=y
    and it is not needed otherwise (arm, blackfin, parisc, ppc64, sh, sparc[64]).

    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     

17 Apr, 2008

1 commit

  • Semaphores are no longer performance-critical, so a generic C
    implementation is better for maintainability, debuggability and
    extensibility. Thanks to Peter Zijlstra for fixing the lockdep
    warning. Thanks to Harvey Harrison for pointing out that the
    unlikely() was unnecessary.

    Signed-off-by: Matthew Wilcox
    Acked-by: Ingo Molnar

    Matthew Wilcox
     

14 Apr, 2008

1 commit


03 Apr, 2008

1 commit

  • Currently include/linux/kvm.h is not considered by make headers_install,
    because Kbuild cannot handle " unifdef-$(CONFIG_FOO) += foo.h. This problem
    was introduced by

    commit fb56dbb31c4738a3918db81fd24da732ce3b4ae6
    Author: Avi Kivity
    Date: Sun Dec 2 10:50:06 2007 +0200

    KVM: Export include/linux/kvm.h only if $ARCH actually supports KVM

    Currently, make headers_check barfs due to , which
    includes, not existing. Rather than add a zillion s, export kvm.
    only if the arch actually supports it.

    Signed-off-by: Avi Kivity

    which makes this an 2.6.25 regression.

    One way of solving the issue is to enhance Kbuild, but Avi and David conviced
    me, that changing headers_install is not the way to go. This patch changes
    the definition for linux/kvm.h to unifdef-y.

    If  unifdef-y is used for linux/kvm.h "make headers_check" will fail on all
    architectures without asm/kvm.h. Therefore, this patch also provides
    asm/kvm.h on all architectures.

    Signed-off-by: Christian Borntraeger
    Acked-by: Avi Kivity
    Cc: Sam Ravnborg
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christian Borntraeger
     

27 Mar, 2008

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SPARC64]: Define TASK_SIZE_OF()
    [SPARC64]: flush_ptrace_access() needs preemption disable.
    [SPARC64]: Update defconfig.
    [SPARC64]: Fix allnoconfig build, ptrace.c missing CONFIG_COMPAT checks.
    [SPARC64]: Fix __get_cpu_var in preemption-enabled area.
    [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/signal.c
    [SPARC64]: Fix most sparse warnings in arch/sparc64/kernel/sys_sparc.c
    [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/time.c
    [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/ptrace.c
    [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/irq.c
    [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/iommu.c
    [SPARC64]: Fix sparse errors in arch/sparc64/kernel/traps.c
    [SPARC64]: Fix sparse warnings in arch/sparc64/kernel/{cpu,setup}.c
    [SPARC64]: Adjust {TLBTEMP,TSBMAP}_BASE.
    [SPARC64]: Make save_stack_trace() more efficient.

    Linus Torvalds
     
  • This make "cat /proc/${PID}/pagemap" more efficient for
    32-bit tasks.

    Based upon a report by Mariusz Kozlowski.

    Signed-off-by: David S. Miller

    David S. Miller
     

26 Mar, 2008

6 commits


25 Mar, 2008

2 commits

  • Doing a 'flushw' every stack trace capture creates so much overhead
    that it makes lockdep next to unusable.

    We only care about the frame pointer chain and the function caller
    program counters, so flush those by hand to the stack frame.

    This is significantly more efficient than a 'flushw' because:

    1) We only save 16 bytes per active register window to the stack.

    2) This doesn't push the entire register window context of the current
    call chain out of the cpu, forcing register window fill traps as we
    return back down.

    Note that we can't use 'restore' and 'save' instructions to move
    around the register windows because that wouldn't work on Niagara
    processors. They optimize 'save' into a new register window by
    simply clearing out the registers instead of pulling them in from
    the on-chip register window backing store.

    Based upon a report by Tom Callaway.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SPARC64]: exec PT_DTRACE
    [SPARC64]: Use shorter list_splice_init() for brevity.
    [SPARC64]: Remove most limitations to kernel image size.

    Linus Torvalds
     

22 Mar, 2008

1 commit

  • Currently kernel images are limited to 8MB in size, and this causes
    problems especially when enabling features that take up a lot of
    kernel image space such as lockdep.

    The code now will align the kernel image size up to 4MB and map that
    many locked TLB entries. So, the only practical limitation is the
    number of available locked TLB entries which is 16 on Cheetah and 64
    on pre-Cheetah sparc64 cpus. Niagara cpus don't actually have hw
    locked TLB entry support. Rather, the hypervisor transparently
    provides support for "locked" TLB entries since it runs with physical
    addressing and does the initial TLB miss processing.

    Fully utilizing this change requires some help from SILO, a patch for
    which will be submitted to the maintainer. Essentially, SILO will
    only currently map up to 8MB for the kernel image and that needs to be
    increased.

    Note that neither this patch nor the SILO bits will help with network
    booting. The openfirmware code will only map up to a certain amount
    of kernel image during a network boot and there isn't much we can to
    about that other than to implemented a layered network booting
    facility. Solaris has this, and calls it "wanboot" and we may
    implement something similar at some point.

    Signed-off-by: David S. Miller

    David S. Miller
     

21 Mar, 2008

1 commit


19 Mar, 2008

1 commit


13 Mar, 2008

1 commit


05 Mar, 2008

2 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    [SPARC]: Fix link errors with gcc-4.3
    sparc64: replace remaining __FUNCTION__ occurances
    sparc: replace remaining __FUNCTION__ occurances
    [SPARC]: Add reboot_command[] extern decl to asm/system.h
    [SPARC]: Mark linux_sparc_{fpu,chips} static.

    Linus Torvalds
     
  • Add CONFIG_HAVE_KRETPROBES to the arch//Kconfig file for relevant
    architectures with kprobes support. This facilitates easy handling of
    in-kernel modules (like samples/kprobes/kretprobe_example.c) that depend on
    kretprobes being present in the kernel.

    Thanks to Sam Ravnborg for helping make the patch more lean.

    Per Mathieu's suggestion, added CONFIG_KRETPROBES and fixed up dependencies.

    Signed-off-by: Ananth N Mavinakayanahalli
    Acked-by: Mathieu Desnoyers
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ananth N Mavinakayanahalli
     

29 Feb, 2008

1 commit


26 Feb, 2008

1 commit


20 Feb, 2008

4 commits


19 Feb, 2008

1 commit


14 Feb, 2008

1 commit


10 Feb, 2008

1 commit