1. 21 2月, 2013 7 次提交
    • J
      parisc: fixes and cleanups in page cache flushing (3/4) · 6d2439d9
      John David Anglin 提交于
      flush_cache_mm, for the non current case also uses flush_dcache_page_asm
      and flush_icache_page_asm which are TMPALIAS flushes.
      
      For the non current case, the algorithm used by get_ptep is derived from the
      vmalloc_to_page implementation in vmalloc.c.  It is essentially a generic page
      table lookup.  The other alternative was to duplicate the lookup in entry.S.
      The break point for switching to a full cache flush is somewhat arbitrary.  The
      same approach is used in flush_cache_range for non current case.  In a GCC
      build and check, many small programs are executed and this change provided a
      significant performance enhancement, e.g. GCC build time was cut almost in half
      on a rp3440 at j4.  Previously, we always flushed the entire cache.
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      6d2439d9
    • J
      parisc: fixes and cleanups in page cache flushing (2/4) · 6d2ddc2f
      John David Anglin 提交于
      Implement clear_page_asm and copy_page_asm. These are optimized routines to
      clear and copy a page.  I tested prefetch optimizations in clear_page_asm and
      copy_page_asm but didn't see any significant performance improvement on rp3440.
      I'm not sure if these are routines are significantly faster than memset and/or
      memcpy, but they are there for further performance evaluation.
      
      TLB purge operations on PA 1.X SMP machines are now serialized with the help of
      the new tlb_lock() and tlb_unlock() macros, since on some PA-RISC machines, TLB
      purges need to be serialized in software.  Obviously, lock isn't needed in UP
      kernels.  On PA 2.0 machines, there is a local TLB instruction which is much
      less disruptive to the memory subsystem.  No lock is needed for local purge.
      
      Loops are also unrolled in flush_instruction_cache_local and
      flush_data_cache_local.
      
      The implementation of what used to be copy_user_page (now copy_user_page_asm)
      is now fixed. Additionally 64-bit support is now added. Read the preceding
      comment which I didn't change.  I left the comment but it is now inaccurate.
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      6d2ddc2f
    • J
      parisc: fixes and cleanups in page cache flushing (1/4) · 76334539
      John David Anglin 提交于
      This is the first patch in a series of 4, with which the page cache flushing of
      parisc will gets fixed and enhanced. This even fixes the nasty "minifail" bug
      (http://wiki.parisc-linux.org/TestCases?highlight=%28minifail%29) which
      prevented parisc to stay an official debian port.  Basically the flush in
      copy_user_page together with the TLB patch from commit
      7139bc15 is what fixes the minifail bug.
      
      This patch still uses the TMPALIAS approach.  The new copy_user_page
      implementation calls flush_dcache_page_asm to flush the user dcache page
      (crucial for minifail fix) via a kernel TMPALIAS mapping.  After that, it just
      copies the page using the kernel mapping.  It does a final flush if needed.
      Generally it is hard to avoid doing some cache flushes using the kernel mapping
      (e.g., copy_to_user_page and copy_from_user_page).
      
      This patch depends on a subsequent change to pacache.S implementing
      clear_page_asm and copy_page_asm.  These are optimized routines to clear and
      copy a page.  The calls in clear_user_page and copy_user_page could be replaced
      by calls to memset and memcpy, respectively.  I tested prefetch optimizations
      in clear_page_asm and copy_page_asm but didn't see any significant performance
      improvement on rp3440.  I'm not sure if these are routines are significantly
      faster than memset and/or memcpy, but they are there for further performance
      evaluation.
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      76334539
    • W
      parisc: fix possible memory leak in pat_query_module() · fbd48433
      Wei Yongjun 提交于
      pa_pdc_cell has been allocated in this function and so should be
      freed before leaving from the error handling cases.
      
      spatch with a semantic match is used to found this problem.
      (http://coccinelle.lip6.fr/)
      Signed-off-by: NWei Yongjun <yongjun_wei@trendmicro.com.cn>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      fbd48433
    • H
      parisc: add CONFIG_MLONGCALLS option to enable linkage of huge vmlinux executables · ec758f98
      Helge Deller 提交于
      When building a 64bit kernel which includes all necessary drivers and
      filesystems the vmlinux kernel often gets so huge, that the linker won't
      be able to resolve the branch stubs. This patch overcomes this limit by
      providing an option to compile the kernel with the -mlong-calls compiler
      option.
      Signed-off-by: NHelge Deller <deller@gmx.de>
      ec758f98
    • J
      parisc: Fix comment describing setup of access rights in entry.S · 1c4c6597
      John David Anglin 提交于
      This comment describes incredibly subtle code, so it should be right!
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      1c4c6597
    • H
      parisc: enhance automatic CONFIG_CROSS_COMPILE detection · 0e39718b
      Helge Deller 提交于
      The current Makefile will only choose the hppa64 cross compiler when
      running natively on hppa in a 32bit userspace.
      This patch additionally chooses the correct 32/64 bit hppa compiler even
      when doing real cross compiling to hppa/hppa64 from another architecture.
      Signed-off-by: NHelge Deller <deller@gmx.de>
      0e39718b
  2. 30 1月, 2013 1 次提交
  3. 29 1月, 2013 1 次提交
    • G
      parisc: Provide dummy dma_mmap_coherent() and dma_get_sgtable() · 59bb8407
      Geert Uytterhoeven 提交于
      parisc/allmodconfig:
      
      drivers/media/v4l2-core/videobuf2-dma-contig.c: In function ‘vb2_dc_mmap’:
      drivers/media/v4l2-core/videobuf2-dma-contig.c:204: error: implicit declaration of function ‘dma_mmap_coherent’
      drivers/media/v4l2-core/videobuf2-dma-contig.c: In function ‘vb2_dc_get_base_sgt’:
      drivers/media/v4l2-core/videobuf2-dma-contig.c:387: error: implicit declaration of function ‘dma_get_sgtable’
      
      For architectures using dma_map_ops, dma_mmap_coherent() and
      dma_get_sgtable() are provided in <asm-generic/dma-mapping-common.h>.
      
      Parisc does not use dma_map_ops, hence it should implement them itself.
      For now, use dummy implementations that just return -EINVAL, until the
      API has been finalized, as it cannot be supported on PA-RISC as-is.
      Signed-off-by: NGeert Uytterhoeven <geert@linux-m68k.org>
      Cc: Marek Szyprowski <m.szyprowski@samsung.com>
      Cc: James Bottomley <James.Bottomley@hansenpartnership.com>
      Cc: linux-parisc@vger.kernel.org
      Signed-off-by: NMarek Szyprowski <m.szyprowski@samsung.com>
      59bb8407
  4. 19 1月, 2013 1 次提交
  5. 08 1月, 2013 4 次提交
    • J
      parisc: sigaltstack doesn't round ss.ss_sp as required · ad30f3ff
      John David Anglin 提交于
      On 24-Nov-12, at 10:05 AM, John David Anglin wrote:
      
      > In trying to build the debian libsigsegv2 package, I found that sigaltstack
      > doesn't round ss.ss_sp. The tests intentionally pass an unaligned pointer.
      > This results in the two stack overflow tests failing.
      
      The attached patch fixes this issue.
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      ad30f3ff
    • J
      parisc: improve ptrace support for gdb single-step · 34360f08
      John David Anglin 提交于
      Various GCC tests use gdb to simulate a multithreaded application. Many of
      these tests have been failing on parisc linux.
      
      GCC does this by using gdb to single-step the application, then gdb is used to
      call other test specific code. Where this fails is when the application is
      stepped into the delay slot of a taken branch. This sets the PSW B bit. When
      the test specific code is executed, this usually clears the PSW B bit.
      Currently, gdb is not allowed to set the B bit. So, the code falls through what
      should be a taken branch.
      
      The attached patch adds the PSW B bit to the set of bits that gdb is allowed to
      set. In order to set the B bit, the trace system call must return using an
      interrupt restore. The patch also modifies this code to use the saved IAOQ
      values when they are saved by a ptrace syscall or interruption.
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      34360f08
    • J
      parisc: don't claim cpu irqs more than once · cac1f12b
      John David Anglin 提交于
      The CPU irqs (timer and IPI) are not shared and only need to be claimed once.
      A mismatch error occurs if they are claimed more than once.
      Signed-off-by: NJohn David Anglin <dave.anglin@nrc-cnrc.gc.ca>
      Cc: Kyle McMartin <kyle@mcmartin.ca>
      Cc: Helge Deller <deller@gmx.de>
      Cc: "James E.J. Bottomley" <jejb@parisc-linux.org>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      cac1f12b
    • J
      parisc: avoid undefined shift in cnv_float.h · cabd91c3
      John David Anglin 提交于
      The attached change fixes a float conversion problem found running the
      GCC testsuite with GCC configured with --with-arch=2.0.
      
      The actual problem occurs for an exponent value of 63. This is the
      maximum exponent value that can be passed. This causes a left shift by
      32 in the else hunk of the macro. This causes undefined behavior and the
      wrong value is returned for dresultB. The fix is the check "exponent <=
      62". If the exponent is 63, dresultB is set to 0. The patch also
      optimizes the operation a bit by copying "Sall(sgl_value) <<
      SGL_EXP_LENGTH" to val, so that sgl_value is not modified.
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Signed-off-by: NHelge Deller <deller@gmx.de>
      cabd91c3
  6. 04 1月, 2013 1 次提交
    • G
      ARCH: drivers remove __dev* attributes. · b881bc46
      Greg Kroah-Hartman 提交于
      This fixes up all of the smaller arches that had __dev* markings for
      their platform-specific drivers.
      
      CONFIG_HOTPLUG is going away as an option.  As a result, the __dev*
      markings need to be removed.
      
      This change removes the use of __devinit, __devexit_p, __devinitdata,
      __devinitconst, and __devexit from these drivers.
      
      Based on patches originally written by Bill Pemberton, but redone by me
      in order to handle some of the coding style issues better, by hand.
      
      Cc: Bill Pemberton <wfp5p@virginia.edu>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Paul Mackerras <paulus@samba.org>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Arnaldo Carvalho de Melo <acme@ghostprotocols.net>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Will Deacon <will.deacon@arm.com>
      Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
      Cc: Hans-Christian Egtvedt <egtvedt@samfundet.no>
      Cc: Mike Frysinger <vapier@gentoo.org>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Jesper Nilsson <jesper.nilsson@axis.com>
      Cc: David Howells <dhowells@redhat.com>
      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: "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: Paul Mundt <lethal@linux-sh.org>
      Cc: Chris Metcalf <cmetcalf@tilera.com>
      Cc: Guan Xuetao <gxt@mprc.pku.edu.cn>
      Cc: Bob Liu <lliubbo@gmail.com>
      Cc: Srinivas Kandagatla <srinivas.kandagatla@st.com>
      Cc: Bjorn Helgaas <bhelgaas@google.com>
      Cc: Myron Stowe <myron.stowe@redhat.com>
      Cc: Thomas Gleixner <tglx@linutronix.de>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Jesse Barnes <jbarnes@virtuousgeek.org>
      Cc: Sebastian Andrzej Siewior <sebastian@breakpoint.cc>
      Cc: Yinghai Lu <yinghai@kernel.org>
      Cc: Thierry Reding <thierry.reding@avionic-design.de>
      Cc: Greg Ungerer <gerg@uclinux.org>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Cc: "Srivatsa S. Bhat" <srivatsa.bhat@linux.vnet.ibm.com>
      Cc: Mark Salter <msalter@redhat.com>
      Cc: Yong Zhang <yong.zhang0@gmail.com>
      Cc: Michael Holzheu <holzheu@linux.vnet.ibm.com>
      Cc: Cornelia Huck <cornelia.huck@de.ibm.com>
      Cc: Jan Glauber <jang@linux.vnet.ibm.com>
      Cc: Wei Yongjun <yongjun_wei@trendmicro.com.cn>
      Cc: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      b881bc46
  7. 20 12月, 2012 2 次提交
  8. 14 12月, 2012 1 次提交
  9. 12 12月, 2012 1 次提交
    • A
      mm: support more pagesizes for MAP_HUGETLB/SHM_HUGETLB · 42d7395f
      Andi Kleen 提交于
      There was some desire in large applications using MAP_HUGETLB or
      SHM_HUGETLB to use 1GB huge pages on some mappings, and stay with 2MB on
      others.  This is useful together with NUMA policy: use 2MB interleaving
      on some mappings, but 1GB on local mappings.
      
      This patch extends the IPC/SHM syscall interfaces slightly to allow
      specifying the page size.
      
      It borrows some upper bits in the existing flag arguments and allows
      encoding the log of the desired page size in addition to the *_HUGETLB
      flag.  When 0 is specified the default size is used, this makes the
      change fully compatible.
      
      Extending the internal hugetlb code to handle this is straight forward.
      Instead of a single mount it just keeps an array of them and selects the
      right mount based on the specified page size.  When no page size is
      specified it uses the mount of the default page size.
      
      The change is not visible in /proc/mounts because internal mounts don't
      appear there.  It also has very little overhead: the additional mounts
      just consume a super block, but not more memory when not used.
      
      I also exported the new flags to the user headers (they were previously
      under __KERNEL__).  Right now only symbols for x86 and some other
      architecture for 1GB and 2MB are defined.  The interface should already
      work for all other architectures though.  Only architectures that define
      multiple hugetlb sizes actually need it (that is currently x86, tile,
      powerpc).  However tile and powerpc have user configurable hugetlb
      sizes, so it's not easy to add defines.  A program on those
      architectures would need to query sysfs and use the appropiate log2.
      
      [akpm@linux-foundation.org: cleanups]
      [rientjes@google.com: fix build]
      [akpm@linux-foundation.org: checkpatch fixes]
      Signed-off-by: NAndi Kleen <ak@linux.intel.com>
      Cc: Michael Kerrisk <mtk.manpages@gmail.com>
      Acked-by: NRik van Riel <riel@redhat.com>
      Acked-by: NKAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
      Cc: Hillf Danton <dhillf@gmail.com>
      Signed-off-by: NDavid Rientjes <rientjes@google.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      42d7395f
  10. 04 12月, 2012 1 次提交
    • A
      [parisc] open(2) compat bug · 25a3bc6b
      Al Viro 提交于
      In commit 9d73fc2d ("open*(2) compat fixes (s390, arm64)") I said:
      >
      > 	The usual rules for open()/openat()/open_by_handle_at() are
      > 1) native 32bit - don't force O_LARGEFILE in flags
      > 2) native 64bit - force O_LARGEFILE in flags
      > 3) compat on 64bit host - as for native 32bit
      > 4) native 32bit ABI for 64bit system (mips/n32, x86/x32) - as for native 64bit
      >
      > There are only two exceptions - s390 compat has open() forcing O_LARGEFILE and
      > arm64 compat has open_by_handle_at() doing the same thing.  The same binaries
      > on native host (s390/31 and arm resp.) will *not* force O_LARGEFILE, so IMO
      > both are emulation bugs.
      
      Three exceptions, actually - parisc open() is another case like that.
      Native 32bit won't force O_LARGEFILE, the same binary on parisc64 will.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      25a3bc6b
  11. 29 11月, 2012 4 次提交
  12. 22 11月, 2012 1 次提交
    • A
      [PARISC] fix user-triggerable panic on parisc · 441a179d
      Al Viro 提交于
      int sys32_rt_sigprocmask(int how, compat_sigset_t __user *set, compat_sigset_t __user *oset,
                                          unsigned int sigsetsize)
      {
              sigset_t old_set, new_set;
              int ret;
      
              if (set && get_sigset32(set, &new_set, sigsetsize))
      
      ...
      static int
      get_sigset32(compat_sigset_t __user *up, sigset_t *set, size_t sz)
      {
              compat_sigset_t s;
              int r;
      
              if (sz != sizeof *set) panic("put_sigset32()");
      
      In other words, rt_sigprocmask(69, (void *)69, 69) done by 32bit process
      will promptly panic the box.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      441a179d
  13. 16 11月, 2012 1 次提交
    • J
      TTY: call tty_port_destroy in the rest of drivers · 191c5f10
      Jiri Slaby 提交于
      After commit "TTY: move tty buffers to tty_port", the tty buffers are
      not freed in some drivers. This is because tty_port_destructor is not
      called whenever a tty_port is freed. This was an assumption I counted
      with but was unfortunately untrue. So fix the drivers to fulfil this
      assumption.
      
      To be sure, the TTY buffers (and later some stuff) are gone along with
      the tty_port, we have to call tty_port_destroy at tear-down places.
      This is mostly where the structure containing a tty_port is freed.
      This patch does exactly that -- put tty_port_destroy at those places.
      Signed-off-by: NJiri Slaby <jslaby@suse.cz>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      191c5f10
  14. 15 11月, 2012 1 次提交
    • J
      [PARISC] fix virtual aliasing issue in get_shared_area() · 949a05d0
      James Bottomley 提交于
      On Thu, 2012-11-01 at 16:45 -0700, Michel Lespinasse wrote:
      > Looking at the arch/parisc/kernel/sys_parisc.c implementation of
      > get_shared_area(), I do have a concern though. The function basically
      > ignores the pgoff argument, so that if one creates a shared mapping of
      > pages 0-N of a file, and then a separate shared mapping of pages 1-N
      > of that same file, both will have the same cache offset for their
      > starting address.
      >
      > This looks like this would create obvious aliasing issues. Am I
      > misreading this ? I can't understand how this could work good enough
      > to be undetected, so there must be something I'm missing here ???
      
      This turns out to be correct and we need to pay attention to the pgoff as
      well as the address when creating the virtual address for the area.
      Fortunately, the bug is rarely triggered as most applications which use pgoff
      tend to use large values (git being the primary one, and it uses pgoff in
      multiples of 16MB) which are larger than our cache coherency modulus, so the
      problem isn't often seen in practise.
      Reported-by: NMichel Lespinasse <walken@google.com>
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      949a05d0
  15. 14 11月, 2012 1 次提交
  16. 01 11月, 2012 1 次提交
    • P
      sk-filter: Add ability to get socket filter program (v2) · a8fc9277
      Pavel Emelyanov 提交于
      The SO_ATTACH_FILTER option is set only. I propose to add the get
      ability by using SO_ATTACH_FILTER in getsockopt. To be less
      irritating to eyes the SO_GET_FILTER alias to it is declared. This
      ability is required by checkpoint-restore project to be able to
      save full state of a socket.
      
      There are two issues with getting filter back.
      
      First, kernel modifies the sock_filter->code on filter load, thus in
      order to return the filter element back to user we have to decode it
      into user-visible constants. Fortunately the modification in question
      is interconvertible.
      
      Second, the BPF_S_ALU_DIV_K code modifies the command argument k to
      speed up the run-time division by doing kernel_k = reciprocal(user_k).
      Bad news is that different user_k may result in same kernel_k, so we
      can't get the original user_k back. Good news is that we don't have
      to do it. What we need to is calculate a user2_k so, that
      
        reciprocal(user2_k) == reciprocal(user_k) == kernel_k
      
      i.e. if it's re-loaded back the compiled again value will be exactly
      the same as it was. That said, the user2_k can be calculated like this
      
        user2_k = reciprocal(kernel_k)
      
      with an exception, that if kernel_k == 0, then user2_k == 1.
      
      The optlen argument is treated like this -- when zero, kernel returns
      the amount of sock_fprog elements in filter, otherwise it should be
      large enough for the sock_fprog array.
      
      changes since v1:
      * Declared SO_GET_FILTER in all arch headers
      * Added decode of vlan-tag codes
      Signed-off-by: NPavel Emelyanov <xemul@parallels.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      a8fc9277
  17. 26 10月, 2012 1 次提交
  18. 22 10月, 2012 1 次提交
  19. 17 10月, 2012 1 次提交
  20. 15 10月, 2012 4 次提交
  21. 14 10月, 2012 1 次提交
  22. 13 10月, 2012 1 次提交
    • J
      vfs: define struct filename and have getname() return it · 91a27b2a
      Jeff Layton 提交于
      getname() is intended to copy pathname strings from userspace into a
      kernel buffer. The result is just a string in kernel space. It would
      however be quite helpful to be able to attach some ancillary info to
      the string.
      
      For instance, we could attach some audit-related info to reduce the
      amount of audit-related processing needed. When auditing is enabled,
      we could also call getname() on the string more than once and not
      need to recopy it from userspace.
      
      This patchset converts the getname()/putname() interfaces to return
      a struct instead of a string. For now, the struct just tracks the
      string in kernel space and the original userland pointer for it.
      
      Later, we'll add other information to the struct as it becomes
      convenient.
      Signed-off-by: NJeff Layton <jlayton@redhat.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      91a27b2a
  23. 09 10月, 2012 1 次提交
    • M
      mm: replace vma prio_tree with an interval tree · 6b2dbba8
      Michel Lespinasse 提交于
      Implement an interval tree as a replacement for the VMA prio_tree.  The
      algorithms are similar to lib/interval_tree.c; however that code can't be
      directly reused as the interval endpoints are not explicitly stored in the
      VMA.  So instead, the common algorithm is moved into a template and the
      details (node type, how to get interval endpoints from the node, etc) are
      filled in using the C preprocessor.
      
      Once the interval tree functions are available, using them as a
      replacement to the VMA prio tree is a relatively simple, mechanical job.
      Signed-off-by: NMichel Lespinasse <walken@google.com>
      Cc: Rik van Riel <riel@redhat.com>
      Cc: Hillf Danton <dhillf@gmail.com>
      Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
      Cc: Catalin Marinas <catalin.marinas@arm.com>
      Cc: Andrea Arcangeli <aarcange@redhat.com>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      6b2dbba8
  24. 06 10月, 2012 1 次提交
    • D
      compat: move compat_siginfo_t definition to asm/compat.h · 751f409d
      Denys Vlasenko 提交于
      This is a preparatory patch for the introduction of NT_SIGINFO elf note.
      
      Make the location of compat_siginfo_t uniform across eight architectures
      which have it.  Now it can be pulled in by including asm/compat.h or
      linux/compat.h.
      
      Most of the copies are verbatim.  compat_uid[32]_t had to be replaced by
      __compat_uid[32]_t.  compat_uptr_t had to be moved up before
      compat_siginfo_t in asm/compat.h on a several architectures (tile already
      had it moved up).  compat_sigval_t had to be relocated from linux/compat.h
      to asm/compat.h.
      Signed-off-by: NDenys Vlasenko <vda.linux@googlemail.com>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Amerigo Wang <amwang@redhat.com>
      Cc: "Jonathan M. Foote" <jmfoote@cert.org>
      Cc: Roland McGrath <roland@hack.frob.com>
      Cc: Pedro Alves <palves@redhat.com>
      Cc: Fengguang Wu <fengguang.wu@intel.com>
      Cc: Stephen Rothwell <sfr@canb.auug.org.au>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      751f409d