1. 12 Jun, 2009 1 commit
  2. 14 Apr, 2009 1 commit
  3. 31 Dec, 2008 1 commit
  4. 25 Dec, 2008 2 commits
    • Martin Schwidefsky's avatar
      [S390] Remove config options. · c185b783
      Martin Schwidefsky authored
      On s390 we always want to run with precise cputime accounting.
      Remove the config options VIRT_TIMER and VIRT_CPU_ACCOUNTING.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
    • Al Viro's avatar
      [S390] audit: get s390 ret_from_fork in sync with other architectures · 8f2961c3
      Al Viro authored
      	On s390 we have ret_from_fork jump not to the "do all work we
      normally do on return from syscall" as on x86, ppc, etc., but to the
      "do all such work except audit".  Historical reasons - the codepath
      triggered when we have AUDIT process flag set is separated from the
      normall one and they converge at sysc_return, which is the common
      part of post-syscall work.  And does not include calling audit_syscall_exit() -
      that's done in the end of sysc_tracesys path, just before that path jumps
      to sysc_return.
      	IOW, the child returning from fork()/clone()/vfork() doesn't
      call audit_syscall_exit() at all, so no matter what we do with its
      audit context, we are not going to see the audit entry.
      	The fix is simple: have ret_from_fork go to the point just past
      the call of sys_.... in the 'we have AUDIT flag set' path.  There we
      have (64bit variant; for 31bit the situation is the same):
              tm      __TI_flags+7(%r9),(_TIF_SYSCALL_TRACE|_TIF_SYSCALL_AUDIT)
              jz      sysc_return
              la      %r2,SP_PTREGS(%r15)     # load pt_regs
              larl    %r14,sysc_return        # return point is sysc_return
              jg      do_syscall_trace_exit
      which is precisely what we need - check the flag, bugger off to sysc_return
      if not set, otherwise call do_syscall_trace_exit() and bugger off to
      sysc_return.  r9 has just been properly set by ret_from_fork itself,
      so we are fine.
      	Tested on s390x, seems to work fine.  WARNING: it's been about
      16 years since my last contact with 3X0 assembler[1], so additional
      review would be very welcome.  I don't think I've managed to screw it
      up, but...
      [1] that *was* in another country and besides, the box is dead...
      Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
      Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
  5. 27 Nov, 2008 1 commit
    • Martin Schwidefsky's avatar
      [S390] fix system call parameter functions. · 59da2139
      Martin Schwidefsky authored
      syscall_get_nr() currently returns a valid result only if the call
      chain of the traced process includes do_syscall_trace_enter(). But
      collect_syscall() can be called for any sleeping task, the result of
      syscall_get_nr() in general is completely bogus.
      To make syscall_get_nr() work for any sleeping task the traps field
      in pt_regs is replace with svcnr - the system call number the process
      is executing. If svcnr == 0 the process is not on a system call path.
      The syscall_get_arguments and syscall_set_arguments use regs->gprs[2]
      for the first system call parameter. This is incorrect since gprs[2]
      may have been overwritten with the system call number if the call
      chain includes do_syscall_trace_enter. Use regs->orig_gprs2 instead.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
  6. 14 Nov, 2008 2 commits
  7. 10 Oct, 2008 1 commit
  8. 07 May, 2008 1 commit
    • Martin Schwidefsky's avatar
      [S390] s390: Optimize user and work TIF check · 2688905e
      Martin Schwidefsky authored
      On return from syscall or interrupt, we have to check if we return to
      userspace (likely) and if there is work todo (less likely) to decide
      if we handle the work. We can optimize this check: we first check for
      the less likely work case and then check for userspace.
      This patch is also a preparation for an additional patch, that fixes a bug
      in KVM dealing with cpu bound guests.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
  9. 30 Apr, 2008 1 commit
  10. 05 Feb, 2008 1 commit
  11. 04 Dec, 2007 1 commit
  12. 20 Nov, 2007 2 commits
  13. 11 Oct, 2007 1 commit
  14. 27 Jul, 2007 1 commit
    • Heiko Carstens's avatar
      [S390] Fix IRQ tracing. · b771aeac
      Heiko Carstens authored
      If a machine check is pending and the external or I/O interrupt handler
      returns to userspace io_mcck_pending is going to call s390_handle_mcck.
      Before this happens a call to TRACE_IRQS_ON was already made since we
      know that we are going back to userspace and hence interrupts will be
      enabled. So there was an indication that interrupts are enabled while
      in reality they are still disabled.
      s390_handle_mcck will do a local_irq_save/restore pair and confuse
      lockdep which later complains about inconsistent irq tracing.
      To solve this just call trace_hardirqs_off before calling
      s390_handle_mcck and trace_hardirqs_on afterwards.
      Signed-off-by: default avatarHeiko Carstens <heiko.carstens@de.ibm.com>
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
  15. 10 Jul, 2007 1 commit
  16. 19 Jun, 2007 1 commit
  17. 27 Apr, 2007 1 commit
  18. 28 Sep, 2006 1 commit
  19. 20 Sep, 2006 1 commit
  20. 03 Jul, 2006 1 commit
  21. 01 Jul, 2006 1 commit
  22. 30 Jun, 2006 1 commit
  23. 29 Jun, 2006 2 commits
    • Martin Schwidefsky's avatar
      [S390] remove export of sys_call_table · 8f27766a
      Martin Schwidefsky authored
      Remove export of the sys_call_table symbol to prevent the misuse of it.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
    • Martin Schwidefsky's avatar
      [S390] virtual cpu accounting vs. machine checks. · 63b12246
      Martin Schwidefsky authored
      If a machine checks interrupts the external or the i/o interrupt
      handler before they have completed the cpu time calculations, the
      accounting goes wrong. After the cpu returned from the machine check
      handler to the interrupted interrupt handler, a negative cpu time delta
      can occur.  If the accumulated cpu time in lowcore is small enough
      this value can get negative as well. The next jiffy interrupt will pick
      up that negative value, shift it by 12 and add the now huge positive
      value to the cpu time of the process.
      To solve this the machine check handler is modified not to change any
      of the timestamps in the lowcore if the machine check interrupted kernel
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
  24. 01 Feb, 2006 1 commit
  25. 07 Nov, 2005 1 commit
  26. 17 Sep, 2005 1 commit
  27. 09 Sep, 2005 1 commit
  28. 05 Sep, 2005 1 commit
    • Martin Schwidefsky's avatar
      [PATCH] s390: machine check handler bugs · ae6aa2ea
      Martin Schwidefsky authored
      The new machine check handler still has a few bugs.
      1) The system entry time has to be stored in the machine check handler,
      2) the machine check return psw may not be stored at the usual place
         because it might overwrite the return psw of the interrupted context,
      3) the return address for the call to s390_handle_mcck in the i/o interrupt
         handler is not correct,
      4) the system call cleanup has to take the different save area of the
         machine check handler into account,
      5) the machine check handler may not call UPDATE_VTIME before
         CREATE_STACK_FRAME, and
      6) the io leave path needs a critical section cleanup to make sure that the
         TIF_MCCK_PENDING bit is really checked before switching back to user space.
      Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
  29. 27 Jul, 2005 1 commit
  30. 25 Jun, 2005 1 commit
  31. 16 Apr, 2005 1 commit
    • Linus Torvalds's avatar
      Linux-2.6.12-rc2 · 1da177e4
      Linus Torvalds authored
      Initial git repository build. I'm not bothering with the full history,
      even though we have it. We can create a separate "historical" git
      archive of that later if we want to, and in the meantime it's about
      3.2GB when imported into git - space that would just make the early
      git days unnecessarily complicated, when we don't have a lot of good
      infrastructure for it.
      Let it rip!