1. 20 2月, 2006 5 次提交
    • M
      [PATCH] powerpc: Make UP -> SMP kexec work again · 8fca9270
      Michael Ellerman 提交于
      For UP to SMP kexec to work we need to jump into pSeries_secondary_smp_init
      event on a UP + KEXEC kernel. The secondary cpus will not find their hw_cpu_id
      in the paca and so they'll jump into kexec_wait, ready for a kexec.
      Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      8fca9270
    • M
      [PATCH] powerpc: Don't start secondary CPUs in a UP && KEXEC kernel · f018b36f
      Michael Ellerman 提交于
      Because smp_release_cpus() is built for SMP || KEXEC, it's not safe to
      unconditionally call it from setup_system(). On a UP && KEXEC kernel we'll
      start up the secondary CPUs which will then go beserk and we die.
      
      Simple fix is to conditionally call smp_release_cpus() in setup_system(). With
      that in place we don't need the dummy definition of smp_release_cpus() because
      all call sites are #ifdef'ed either SMP or KEXEC.
      Signed-off-by: NMichael Ellerman <michael@ellerman.id.au>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      f018b36f
    • O
      [PATCH] powerpc: Fix OOPS in lparcfg on G5 · 2b9a32ed
      Olof Johansson 提交于
      Fallback gracefully when reading /proc/ppc64/lparcfg when the /rtas
      device node can't be found.
      Signed-off-by: NOlof Johansson <olof@lixom.net>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      2b9a32ed
    • O
      [PATCH] powerpc: remove duplicate exports · 0728a2f9
      Olaf Hering 提交于
      A few symbols are exported twice, remove them from ppc_ksyms.c
      Remove users of sys_ctrler in arch/ppc/
      
      WARNING: vmlinux: duplicate symbol '__delay' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol '__up' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol '__down' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol '__down_interruptible' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'sys_ctrler' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strncat' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strncmp' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strchr' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strrchr' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strnlen' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strpbrk' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'memscan' previous definition was in vmlinux
      WARNING: vmlinux: duplicate symbol 'strstr' previous definition was in vmlinux
      Signed-off-by: NOlaf Hering <olh@suse.de>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      0728a2f9
    • P
      powerpc: Keep xtime and gettimeofday in sync · 092b8f34
      Paul Mackerras 提交于
      This fixes a regression which was introduced by moving ppc32 to use
      the same sort of lockless gettimeofday as ppc64 has been using for
      some time.  This involves getting the timebase and performing some
      simple arithmetic to convert it to seconds and microseconds.  However,
      the factor and offset used there weren't being updated when NTP
      varied the tick length using adjtimex.  64-bit didn't notice the
      problem because it had a hook in the 32-bit adjtimex compat routine
      that attempted to work out what the generic timekeeping code would
      do and alter the factor and offset to match.  However, that code
      was very complex and it wasn't clear that it still matched what the
      generic code would do.
      
      Now we use the generic current_tick_length() routine that was recently
      added to check that the current tick will be as long as we expect; if
      not we recompute the factor and offset.  This keeps gettimeofday and
      xtime in sync.  In addition we check that gettimeofday hasn't got ahead
      of xtime on each timer interrupt; if it has, we resync.
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      092b8f34
  2. 10 2月, 2006 2 次提交
  3. 08 2月, 2006 1 次提交
  4. 07 2月, 2006 16 次提交
  5. 02 2月, 2006 2 次提交
  6. 19 1月, 2006 2 次提交
  7. 15 1月, 2006 2 次提交
  8. 14 1月, 2006 8 次提交
  9. 13 1月, 2006 2 次提交
    • D
      [PATCH] powerpc: Remove lppaca structure from the PACA · 3356bb9f
      David Gibson 提交于
      At present the lppaca - the structure shared with the iSeries
      hypervisor and phyp - is contained within the PACA, our own low-level
      per-cpu structure.  This doesn't have to be so, the patch below
      removes it, making a separate array of lppaca structures.
      
      This saves approximately 500*NR_CPUS bytes of image size and kernel
      memory, because we don't need aligning gap between the Linux and
      hypervisor portions of every PACA.  On the other hand it means an
      extra level of dereference in many accesses to the lppaca.
      
      The patch also gets rid of several places where we assign the paca
      address to a local variable for no particular reason.
      Signed-off-by: NDavid Gibson <dwg@au1.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      3356bb9f
    • D
      [PATCH] powerpc: Cleanup LOADADDR etc. asm macros · e58c3495
      David Gibson 提交于
      This patch consolidates the variety of macros used for loading 32 or
      64-bit constants in assembler (LOADADDR, LOADBASE, SET_REG_TO_*).  The
      idea is to make the set of macros consistent across 32 and 64 bit and
      to make it more obvious which is the appropriate one to use in a given
      situation.  The new macros and their semantics are described in the
      comments in ppc_asm.h.
      
      In the process, we change several places that were unnecessarily using
      immediate loads on ppc64 to use the GOT/TOC.  Likewise we cleanup a
      couple of places where we were clumsily subtracting PAGE_OFFSET with
      asm instructions to use assemble-time arithmetic or the toreal() macro
      instead.
      Signed-off-by: NDavid Gibson <dwg@au1.ibm.com>
      Signed-off-by: NPaul Mackerras <paulus@samba.org>
      e58c3495