29 Apr, 2008

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6:
    sparc: video drivers: add facility level
    sparc: tcx.c make tcx_init and tcx_exit static
    sparc: ffb.c make ffb_init and ffb_exit static
    sparc: cg14.c make cg14_init and cg15_exit static
    sparc: bw2.c fix bw2_exit
    sparc64: Fix accidental syscall restart on child return from clone/fork/vfork.
    sparc64: Clean up handling of pt_regs trap type encoding.
    sparc: Remove old style signal frame support.
    sparc64: Kill bogus RT_ALIGNEDSZ macro from signal.c
    sparc: sunzilog.c remove unused argument
    sparc: fix drivers/video/tcx.c warning
    sparc64: Kill unused local ISA bus layer.
    input: Rewrite sparcspkr device probing.
    sparc64: Do not ignore 'pmu' device ranges.
    sparc64: Kill ISA_FLOPPY_WORKS code.
    sparc64: Kill CONFIG_SPARC32_COMPAT
    sparc64: Cleanups and corrections for arch/sparc64/Kconfig
    sparc64: Fix wedged irq regression.

    Linus Torvalds
     

28 Apr, 2008

3 commits

  • NR_PAGEFLAGS specifies the number of page flags we are using. From that we
    can calculate the number of bits leftover that can be used for zone, node (and
    maybe the sections id). There is no need anymore for FLAGS_RESERVED if we use
    NR_PAGEFLAGS.

    Use the new methods to make NR_PAGEFLAGS available via the preprocessor.
    NR_PAGEFLAGS is used to calculate field boundaries in the page flags fields.
    These field widths have to be available to the preprocessor.

    Signed-off-by: Christoph Lameter
    Cc: David Miller
    Cc: Andy Whitcroft
    Cc: KAMEZAWA Hiroyuki
    Cc: KOSAKI Motohiro
    Cc: Rik van Riel
    Cc: Mel Gorman
    Cc: Jeremy Fitzhardinge
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christoph Lameter
     
  • This fixes a regression added by
    238468b2ac76020c192a7402c92df5097916bf4a ("[SPARC64]: Use trap type
    stored in pt_regs to handle syscall restart.")

    Because we now encode the "returning from syscall" status in the
    pt_regs area, we have to be mindful to zap it out in the child
    of a fork.

    During a parallel kernel build I saw an accidental -EINTR return
    from vfork() in 'make' because of this bug.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • If we use this from more than one place, it's better to
    have helpers instead of twiddling magic constants all
    over.

    Add pt_regs_trap_type(), pt_regs_clear_trap_type(), and
    pt_regs_is_syscall().

    Use them in do_signal().

    Signed-off-by: David S. Miller

    David S. Miller
     

27 Apr, 2008

7 commits

  • Back around the same time we were bootstrapping the first 32-bit sparc
    Linux kernel with a SunOS userland, we made the signal frame match
    that of SunOS.

    By the time we even started putting together a native Linux userland
    for 32-bit Sparc we realized this layout wasn't sufficient for Linux's
    needs.

    Therefore we changed the layout, yet kept support for the old style
    signal frame layout in there. The detection mechanism is that we had
    sys_sigaction() start passing in a negative signal number to indicate
    "new style signal frames please".

    Anyways, no binaries exist in the world that use the old stuff. In
    fact, I bet Jakub Jelinek and myself are the only two people who ever
    had such binaries to be honest.

    So let's get rid of this stuff.

    I added an assertion using WARN_ON_ONCE() that makes sure 32-bit
    applications are passing in that negative signal number still.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • The structure has to be 8-byte aligned in size, so
    this macro is just noise.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • No more drivers use this, and therefore it can die.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • I must have disabled this due to other bugs which were fixed over
    time. And this is needed in order for child devices of "pmu"
    to get proper resource values.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • It's completely superfluous, CONFIG_COMPAT is sufficient.

    What this used to be is an umbrella for enabling code shared
    by all 32-bit compat binary support types. But with the
    removal of SunOS and Solaris support, the only one left is
    Linux 32-bit ELF.

    Update defconfig.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Refer to chip as "SPARC" throughout.

    Say 32-bit SPARC and 64-bit SPARC rather than mentioning specific
    chips such like UltraSPARC, as appropriate.

    Remove non-sense help text referring to things that will never appear
    on a SPARC system, such as EISA busses etc.

    Use "help" instead of "--help--"

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Kernel bugzilla 10273

    As reported by Jos van der Ende, ever since commit
    5a606b72a4309a656cd1a19ad137dc5557c4b8ea ("[SPARC64]: Do not ACK an
    INO if it is disabled or inprogress.") sun4u interrupts
    can get stuck.

    What this changset did was add the following conditional to
    the various IRQ chip ->enable() handlers on sparc64:

    if (unlikely(desc->status & (IRQ_DISABLED|IRQ_INPROGRESS)))
    return;

    which is correct, however it means that special care is needed
    in the ->enable() method.

    Specifically we must put the interrupt into IDLE state during
    an enable, or else it might never be sent out again.

    Setting the INO interrupt state to IDLE resets the state machine,
    the interrupt input to the INO is retested by the hardware, and
    if an interrupt is being signalled by the device, the INO
    moves back into TRANSMIT state, and an interrupt vector is sent
    to the cpu.

    The two sun4v IRQ chip handlers were already doing this properly,
    only sun4u got it wrong.

    Signed-off-by: David S. Miller

    David S. Miller
     

25 Apr, 2008

2 commits


24 Apr, 2008

18 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
     

19 Apr, 2008

1 commit


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


10 Apr, 2008

1 commit

  • 1) ptrace should pass 'current' to task_user_regset_view()

    2) When fetching general registers using a 64-bit view, and
    the target is 32-bit, we have to convert.

    3) Skip the whole register window get/set code block if
    the user isn't asking to access anything in there.

    Otherwise we have problems if the user doesn't have
    an address space setup. Fetching ptrace register is
    still valid at such a time, and ptrace does not try
    to access the register window area of the regset.

    Signed-off-by: David S. Miller

    David S. Miller
     

04 Apr, 2008

2 commits