1. 25 2月, 2017 1 次提交
  2. 24 6月, 2015 1 次提交
  3. 18 4月, 2015 1 次提交
    • D
      tile/elf: reorganize notify_exec() · 5a3b4e80
      Davidlohr Bueso 提交于
      In the future mm->exe_file will be done without mmap_sem
      serialization, thus isolate and reorganize the tile elf
      code to make the transition easier. Good users will, make
      use of the more standard get_mm_exe_file(), requiring only
      holding the mmap_sem to read the value, and relying on reference
      counting to make sure that the exe file won't dissappear
      underneath us.
      
      The visible effects of this patch are:
      
         o We now take and drop the mmap_sem more often. Instead of
           just in arch_setup_additional_pages(), we also do it in:
      
           1) get_mm_exe_file()
           2) to get the mm->vm_file and notify the simulator.
      
          [Note that 1) will disappear once we change the locking
           rules for exe_file.]
      
         o We avoid getting a free page and doing d_path() while
           holding the mmap_sem. This requires reordering the checks.
      Signed-off-by: NDavidlohr Bueso <dbueso@suse.de>
      Signed-off-by: NChris Metcalf <cmetcalf@ezchip.com>
      5a3b4e80
  4. 14 8月, 2013 2 次提交
    • C
      tile: implement gettimeofday() via vDSO · 4a556f4f
      Chris Metcalf 提交于
      This change creates the framework for vDSO calls, makes the existing
      rt_sigreturn() mechanism use it, and adds a fast gettimeofday().
      Now that we need to expose the vDSO address to userspace, we add
      AT_SYSINFO_EHDR to the set of aux entries provided to userspace.
      (You can disable any extra vDSO support by booting with vdso=0,
      but the rt_sigreturn vDSO page will still be provided.)
      
      Note that glibc has supported the tile vDSO since release 2.17.
      Signed-off-by: NChris Metcalf <cmetcalf@tilera.com>
      4a556f4f
    • C
      tile: support simulator notification for ET_DYN objects · 0c1d1917
      Chris Metcalf 提交于
      The tile code notifies the simulator of new ET_EXEC objects starting
      to execute so that tracing code can properly annotate the objects.
      However, we didn't support ET_DYN executables like ld.so, so we
      didn't properly load symbols, etc.  This change enables that support;
      we use a variant of the SIM_CONTROL_DLOPEN simulator notification
      that newer simulators will recognize and use to set the base address
      for the next SIM_CONTROL_OS_EXEC notification.
      Signed-off-by: NChris Metcalf <cmetcalf@tilera.com>
      0c1d1917
  5. 24 2月, 2013 1 次提交
  6. 09 10月, 2012 1 次提交
  7. 29 3月, 2012 1 次提交
  8. 24 3月, 2012 1 次提交
    • J
      coredump: remove VM_ALWAYSDUMP flag · 909af768
      Jason Baron 提交于
      The motivation for this patchset was that I was looking at a way for a
      qemu-kvm process, to exclude the guest memory from its core dump, which
      can be quite large.  There are already a number of filter flags in
      /proc/<pid>/coredump_filter, however, these allow one to specify 'types'
      of kernel memory, not specific address ranges (which is needed in this
      case).
      
      Since there are no more vma flags available, the first patch eliminates
      the need for the 'VM_ALWAYSDUMP' flag.  The flag is used internally by
      the kernel to mark vdso and vsyscall pages.  However, it is simple
      enough to check if a vma covers a vdso or vsyscall page without the need
      for this flag.
      
      The second patch then replaces the 'VM_ALWAYSDUMP' flag with a new
      'VM_NODUMP' flag, which can be set by userspace using new madvise flags:
      'MADV_DONTDUMP', and unset via 'MADV_DODUMP'.  The core dump filters
      continue to work the same as before unless 'MADV_DONTDUMP' is set on the
      region.
      
      The qemu code which implements this features is at:
      
        http://people.redhat.com/~jbaron/qemu-dump/qemu-dump.patch
      
      In my testing the qemu core dump shrunk from 383MB -> 13MB with this
      patch.
      
      I also believe that the 'MADV_DONTDUMP' flag might be useful for
      security sensitive apps, which might want to select which areas are
      dumped.
      
      This patch:
      
      The VM_ALWAYSDUMP flag is currently used by the coredump code to
      indicate that a vma is part of a vsyscall or vdso section.  However, we
      can determine if a vma is in one these sections by checking it against
      the gate_vma and checking for a non-NULL return value from
      arch_vma_name().  Thus, freeing a valuable vma bit.
      Signed-off-by: NJason Baron <jbaron@redhat.com>
      Acked-by: NRoland McGrath <roland@hack.frob.com>
      Cc: Chris Metcalf <cmetcalf@tilera.com>
      Cc: Avi Kivity <avi@redhat.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      909af768
  9. 07 7月, 2010 1 次提交
    • C
      arch/tile: Miscellaneous cleanup changes. · 0707ad30
      Chris Metcalf 提交于
      This commit is primarily changes caused by reviewing "sparse"
      and "checkpatch" output on our sources, so is somewhat noisy, since
      things like "printk() -> pr_err()" (or whatever) throughout the
      codebase tend to get tedious to read.  Rather than trying to tease
      apart precisely which things changed due to which type of code
      review, this commit includes various cleanups in the code:
      
      - sparse: Add declarations in headers for globals.
      - sparse: Fix __user annotations.
      - sparse: Using gfp_t consistently instead of int.
      - sparse: removing functions not actually used.
      - checkpatch: Clean up printk() warnings by using pr_info(), etc.;
        also avoid partial-line printks except in bootup code.
        - checkpatch: Use exposed structs rather than typedefs.
        - checkpatch: Change some C99 comments to C89 comments.
      
      In addition, a couple of minor other changes are rolled in
      to this commit:
      
      - Add support for a "raise" instruction to cause SIGFPE, etc., to be raised.
      - Remove some compat code that is unnecessary when we fully eliminate
        some of the deprecated syscalls from the generic syscall ABI.
      - Update the tile_defconfig to reflect current config contents.
      Signed-off-by: NChris Metcalf <cmetcalf@tilera.com>
      Acked-by: NArnd Bergmann <arnd@arndb.de>
      0707ad30
  10. 05 6月, 2010 1 次提交