1. 06 10月, 2012 1 次提交
    • J
      cross-arch: don't corrupt personality flags upon exec() · 16f3e95b
      Jiri Kosina 提交于
      Historically, the top three bytes of personality have been used for
      things such as ADDR_NO_RANDOMIZE, which made sense only for specific
      architectures.
      
      We now however have a flag there that is general no matter the
      architecture (UNAME26); generally we have to be careful to preserve the
      personality flags across exec().
      
      This patch tries to fix all architectures that forcefully overwrite
      personality flags during exec() (ppc32 and s390 have been fixed recently
      by commits f9783ec8 ("[S390] Do not clobber personality flags on
      exec") and 59e4c3a2 ("powerpc/32: Don't clobber personality flags on
      exec") in a similar way already).
      Signed-off-by: NJiri Kosina <jkosina@suse.cz>
      Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
      Cc: Hans-Christian Egtvedt <egtvedt@samfundet.no>
      Cc: Mike Frysinger <vapier@gentoo.org>
      Cc: Mark Salter <msalter@redhat.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Jesper Nilsson <jesper.nilsson@axis.com>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Richard Kuo <rkuo@codeaurora.org>
      Cc: Hirokazu Takata <takata@linux-m32r.org>
      Cc: Geert Uytterhoeven <geert@linux-m68k.org>
      Cc: Michal Simek <monstr@monstr.eu>
      Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
      Cc: Jonas Bonn <jonas@southpole.se>
      Cc: Chen Liqin <liqin.chen@sunplusct.com>
      Cc: Lennox Wu <lennox.wu@gmail.com>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Chris Zankel <chris@zankel.net>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      16f3e95b
  2. 05 10月, 2012 1 次提交
    • M
      c6x: remove c6x signal.h · 2e919f76
      Mark Salter 提交于
      The c6x signal.h includes the asm-generic version and provides
      a couple of extern declarations. David Howells pointed out that
      the externs needed to be protected by ifdef __KERNEL__. As it
      turns out, the externs aren't really needed since the functions
      are only called from asm code. So this patch gets rid of the
      c6x signal.h and uses just the asm-generic version.
      Signed-off-by: NMark Salter <msalter@redhat.com>
      2e919f76
  3. 04 10月, 2012 2 次提交
    • D
      UAPI: Fix the guards on various asm/unistd.h files · 89013952
      David Howells 提交于
      asm-generic/unistd.h and a number of asm/unistd.h files have been given
      reinclusion guards that allow the guard to be overridden if __SYSCALL is
      defined.  Unfortunately, these files define __SYSCALL and don't undefine it
      when they've finished with it, thus rendering the guard ineffective.
      
      The reason for this override is to allow the file to be #included multiple
      times with different settings on __SYSCALL for purposes like generating syscall
      tables.
      
      The following guards are problematic:
      
      arch/arm64/include/asm/unistd.h:#if !defined(__ASM_UNISTD_H) || defined(__SYSCALL)
      arch/arm64/include/asm/unistd32.h:#if !defined(__ASM_UNISTD32_H) || defined(__SYSCALL)
      arch/c6x/include/asm/unistd.h:#if !defined(_ASM_C6X_UNISTD_H) || defined(__SYSCALL)
      arch/hexagon/include/asm/unistd.h:#if !defined(_ASM_HEXAGON_UNISTD_H) || defined(__SYSCALL)
      arch/openrisc/include/asm/unistd.h:#if !defined(__ASM_OPENRISC_UNISTD_H) || defined(__SYSCALL)
      arch/score/include/asm/unistd.h:#if !defined(_ASM_SCORE_UNISTD_H) || defined(__SYSCALL)
      arch/tile/include/asm/unistd.h:#if !defined(_ASM_TILE_UNISTD_H) || defined(__SYSCALL)
      arch/unicore32/include/asm/unistd.h:#if !defined(__UNICORE_UNISTD_H__) || defined(__SYSCALL)
      include/asm-generic/unistd.h:#if !defined(_ASM_GENERIC_UNISTD_H) || defined(__SYSCALL)
      
      On the assumption that the guards' ineffectiveness has passed unnoticed, just
      remove these guards entirely.
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      Acked-by: NCatalin Marinas <catalin.marinas@arm.com>
      89013952
    • M
      c6x: make dsk6455 the default config · 37d11ab8
      Mark Salter 提交于
      C6X had no defconfig, so DSK6455 is as good as any.
      Signed-off-by: NMark Salter <msalter@redhat.com>
      37d11ab8
  4. 03 10月, 2012 1 次提交
  5. 25 9月, 2012 1 次提交
    • M
      c6x: use asm-generic/barrier.h · b02d6175
      Mark Salter 提交于
      A recent patch in the linux-next tree caused a build failure on
      C6X because C6X didn't define a read_barrier_depends() macro. C6X
      does not support SMP and the architecture doesn't provide any
      special memory ordering instructions, so it makes sense to just
      use the generic barrier.h rather than patching the existing c6x
      specific header.
      Signed-off-by: NMark Salter <msalter@redhat.com>
      b02d6175
  6. 16 8月, 2012 2 次提交
    • M
      C6X: select GENERIC_ATOMIC64 · 01ddd9a8
      Mark Salter 提交于
      The generic atomic64 support came in 2009 to support the perf subsystem
      with the expectation that all architectures would implement atomic64
      support. Since then, other optional parts of the generic kernel have
      also come to expect atomic64 support. This patch enables generic atomic64
      support for C6X architecture.
      Signed-off-by: NMark Salter <msalter@redhat.com>
      01ddd9a8
    • M
      C6X: add Lx_CACHE_SHIFT defines · 6330c790
      Mark Salter 提交于
      C6X currently lacks Lx_CACHE_SHIFT defines which are needed in a
      few places in the generic kernel. This patch adds _SHIFT defines
      for the various caches and bases the Lx_CACHE_BYTES defines on
      them.
      Signed-off-by: NMark Salter <msalter@redhat.com>
      6330c790
  7. 19 7月, 2012 4 次提交
  8. 17 7月, 2012 1 次提交
  9. 02 6月, 2012 6 次提交
  10. 24 5月, 2012 1 次提交
  11. 22 5月, 2012 2 次提交
  12. 21 5月, 2012 1 次提交
  13. 18 5月, 2012 1 次提交
  14. 17 5月, 2012 1 次提交
    • S
      fork: move the real prepare_to_copy() users to arch_dup_task_struct() · 55ccf3fe
      Suresh Siddha 提交于
      Historical prepare_to_copy() is mostly a no-op, duplicated for majority of
      the architectures and the rest following the x86 model of flushing the extended
      register state like fpu there.
      
      Remove it and use the arch_dup_task_struct() instead.
      Suggested-by: NOleg Nesterov <oleg@redhat.com>
      Suggested-by: NLinus Torvalds <torvalds@linux-foundation.org>
      Signed-off-by: NSuresh Siddha <suresh.b.siddha@intel.com>
      Link: http://lkml.kernel.org/r/1336692811-30576-1-git-send-email-suresh.b.siddha@intel.comAcked-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Cc: David Howells <dhowells@redhat.com>
      Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Paul Mundt <lethal@linux-sh.org>
      Cc: Chris Zankel <chris@zankel.net>
      Cc: Richard Henderson <rth@twiddle.net>
      Cc: Russell King <linux@arm.linux.org.uk>
      Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
      Cc: Mike Frysinger <vapier@gentoo.org>
      Cc: Mark Salter <msalter@redhat.com>
      Cc: Aurelien Jacquiot <a-jacquiot@ti.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
      Cc: Richard Kuo <rkuo@codeaurora.org>
      Cc: Tony Luck <tony.luck@intel.com>
      Cc: Michal Simek <monstr@monstr.eu>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: Jonas Bonn <jonas@southpole.se>
      Cc: James E.J. Bottomley <jejb@parisc-linux.org>
      Cc: Helge Deller <deller@gmx.de>
      Cc: Martin Schwidefsky <schwidefsky@de.ibm.com>
      Cc: Heiko Carstens <heiko.carstens@de.ibm.com>
      Cc: Chen Liqin <liqin.chen@sunplusct.com>
      Cc: Lennox Wu <lennox.wu@gmail.com>
      Cc: David S. Miller <davem@davemloft.net>
      Cc: Chris Metcalf <cmetcalf@tilera.com>
      Cc: Jeff Dike <jdike@addtoit.com>
      Cc: Richard Weinberger <richard@nod.at>
      Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
      Signed-off-by: NH. Peter Anvin <hpa@linux.intel.com>
      55ccf3fe
  15. 15 5月, 2012 1 次提交
    • M
      C6X: add support to build with BINFMT_ELF_FDPIC · fce24476
      Mark Salter 提交于
      C6x userspace supports a shared library mechanism called DSBT for systems with
      no MMU. DSBT is similar to FDPIC in allowing shared text segments and private
      copies of data segments without an MMU. Both methods access data using a base
      register and offset. With FDPIC, the caller of an external function sets up the
      base register for the callee. With DSBT, the called function sets up its own
      base register. Other details differ but both userspaces need the same thing
      from the kernel loader: a map of where each ELF segment was loaded. The FDPIC
      loader already provides this, so DSBT just uses it.
      
      This patch enables BINFMT_ELF_FDPIC by default for C6X and provides the
      necessary architecture hooks for the generic loader.
      Signed-off-by: NMark Salter <msalter@redhat.com>
      fce24476
  16. 08 5月, 2012 1 次提交
  17. 05 5月, 2012 2 次提交
  18. 02 5月, 2012 1 次提交
  19. 11 4月, 2012 1 次提交
  20. 08 4月, 2012 1 次提交
  21. 06 4月, 2012 1 次提交
  22. 29 3月, 2012 3 次提交
  23. 24 3月, 2012 1 次提交
  24. 16 3月, 2012 1 次提交
    • M
      C6X: remove dead code from entry.S · 6e780cf5
      Mark Salter 提交于
      The ENDPROC() on sys_fadvise64_c6x() in arch/c6x/kernel/entry.S is
      outside of the conditional block with the matching ENTRY() macro. This
      leads a newer (v2.22 vs. v2.20) assembler to complain:
      
        /tmp/ccGZBaPT.s: Assembler messages:
        /tmp/ccGZBaPT.s: Error: .size expression for sys_fadvise64_c6x does not evaluate to a constant
      
      The conditional block became dead code when c6x switched to generic
      unistd.h and should be removed along with the offending ENDPROC().
      Signed-off-by: NMark Salter <msalter@redhat.com>
      Acked-by: NDavid Howells <dhowells@redhat.com>
      6e780cf5
  25. 08 3月, 2012 1 次提交
    • M
      C6X: fix KSTK_EIP and KSTK_ESP macros · 4cd7c0a0
      Mark Salter 提交于
      There was a latent typo in the C6X KSTK_EIP and KSTK_ESP macros which
      caused a problem with a new patch which used them. The broken definitions
      were of the form:
      
        #define KSTK_FOO(tsk) (task_pt_regs(task)->foo)
      
      Note the use of task vs tsk. This actually worked before because the
      only place in the kernel which used these macros passed in a local
      pointer named task.
      Signed-off-by: NMark Salter <msalter@redhat.com>
      4cd7c0a0
  26. 16 2月, 2012 1 次提交