An error occurred fetching the project authors.
  1. 07 Oct, 2008 1 commit
    • Suresh Siddha's avatar
      x86: xsave: set FP, SSE bits in the xsave header in the user sigcontext · 04944b79
      Suresh Siddha authored
      If a processor implementation discern that a processor state component is in
      its initialized state, it may modify the corresponding bit in the
      xsave header.xstate_bv as '0'. State in the memory layout setup by 'xsave'
      will be consistent with the bit values in the header.
      
      During signal handling, legacy applications may change the FP/SSE bits
      in the sigcontext memory layout without touching the FP/SSE header bits
      in the xsave header. So always set FP/SSE bits in the xsave header
      while saving the sigcontext state to the user space. During signal return,
      this will enable the kernel to capture any changes to the FP/SSE bits by the
      legacy applications which don't touch xsave headers.
      
      xsave aware apps can change the xstate_bv in the xsave header aswell
      as change any contents in the memory layout. xrestor as part of sigreturn
      will capture all the changes.
      Signed-off-by: default avatarSuresh Siddha <suresh.b.siddha@intel.com>
      Signed-off-by: default avatarH. Peter Anvin <hpa@zytor.com>
      04944b79
  2. 30 Jul, 2008 7 commits
  3. 01 Jul, 2008 1 commit
  4. 30 Jun, 2008 1 commit
    • TAKADA Yoshihito's avatar
      ptrace GET/SET FPXREGS broken · 11dbc963
      TAKADA Yoshihito authored
      When I update kernel 2.6.25 from 2.6.24, gdb does not work.
      On 2.6.25, ptrace(PTRACE_GETFPXREGS, ...) returns ENODEV.
      
      But 2.6.24 kernel's ptrace() returns EIO.
      It is issue of compatibility.
      
      I attached test program as pt.c and patch for fix it.
      
      #include <stdio.h>
      #include <stdlib.h>
      #include <unistd.h>
      #include <signal.h>
      #include <errno.h>
      #include <sys/ptrace.h>
      #include <sys/types.h>
      
      struct user_fxsr_struct {
      	unsigned short	cwd;
      	unsigned short	swd;
      	unsigned short	twd;
      	unsigned short	fop;
      	long	fip;
      	long	fcs;
      	long	foo;
      	long	fos;
      	long	mxcsr;
      	long	reserved;
      	long	st_space[32];	/* 8*16 bytes for each FP-reg = 128 bytes */
      	long	xmm_space[32];	/* 8*16 bytes for each XMM-reg = 128 bytes */
      	long	padding[56];
      };
      
      int main(void)
      {
        pid_t pid;
      
        pid = fork();
      
        switch(pid){
        case -1:/*  error */
          break;
        case 0:/*  child */
          child();
          break;
        default:
          parent(pid);
          break;
        }
        return 0;
      }
      
      int child(void)
      {
        ptrace(PTRACE_TRACEME);
        kill(getpid(), SIGSTOP);
        sleep(10);
        return 0;
      }
      int parent(pid_t pid)
      {
        int ret;
        struct user_fxsr_struct fpxregs;
      
        ret = ptrace(PTRACE_GETFPXREGS, pid, 0, &fpxregs);
        if(ret < 0){
          printf("%d: %s.\n", errno, strerror(errno));
        }
        kill(pid, SIGCONT);
        wait(pid);
        return 0;
      }
      
      /* in the kerel, at kernel/i387.c get_fpxregs() */
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      11dbc963
  5. 04 Jun, 2008 1 commit
  6. 10 May, 2008 1 commit
  7. 19 Apr, 2008 2 commits
  8. 17 Apr, 2008 1 commit
    • Ingo Molnar's avatar
      x86: clean up i387.c · f668964e
      Ingo Molnar authored
      minor coding style cleanups.
      
      Before:
         total: 0 errors, 3 warnings, 479 lines checked
      After:
         total: 0 errors, 1 warnings, 483 lines checked
      
      No code changed:
      
      arch/x86/kernel/i387.o:
      
         text	   data	    bss	    dec	    hex	filename
         2379	      4	      8	   2391	    957	i387.o.before
         2379	      4	      8	   2391	    957	i387.o.after
      
      md5:
         e1434553a3b4ff1f52ad97a68b1fad8a  i387.o.before.asm
         e1434553a3b4ff1f52ad97a68b1fad8a  i387.o.after.asm
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      f668964e
  9. 07 Mar, 2008 1 commit
    • Jan Beulich's avatar
      x86: fix merge mistake in i387.c · 609b5297
      Jan Beulich authored
      convert_fxsr_to_user() in 2.6.24's i387_32.c did this, and
      convert_to_fxsr() also does the inverse, so I assume it's an oversight
      that it is no longer being done.
      
      [ mingo@elte.hu:
      
        we encode it this way because there's no space for the 'FPU Last
        Instruction Opcode' (->fop) field in the legacy user_i387_ia32_struct
        that PTRACE_GETFPREGS/PTRACE_SETFPREGS uses.
      
        it's probably pure legacy - i'd be surprised if any user-space relied on
        the FPU Last Opcode in any way. But indeed we used to do it previously
        so the most conservative thing is to preserve that piece of information.
      ]
      Signed-off-by: default avatarJan Beulich <jbeulich@novell.com>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      609b5297
  10. 04 Mar, 2008 1 commit
  11. 19 Feb, 2008 1 commit
  12. 30 Jan, 2008 4 commits
  13. 13 Oct, 2007 1 commit
    • Dave Jones's avatar
      Delete filenames in comments. · 835c34a1
      Dave Jones authored
      Since the x86 merge, lots of files that referenced their own filenames
      are no longer correct.  Rather than keep them up to date, just delete
      them, as they add no real value.
      
      Additionally:
      - fix up comment formatting in scx200_32.c
      - Remove a credit from myself in setup_64.c from a time when we had no SCM
      - remove longwinded history from tsc_32.c which can be figured out from
        git.
      Signed-off-by: default avatarDave Jones <davej@redhat.com>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      835c34a1
  14. 11 Oct, 2007 2 commits
  15. 30 Jun, 2006 1 commit
  16. 23 Jun, 2006 1 commit
  17. 22 Jul, 2005 1 commit
    • Linus Torvalds's avatar
      x86: make restore_fpu() use alternative assembler instructions · 8ed1383f
      Linus Torvalds authored
      It's really just a single instruction, conditional on whether the CPU
      supports FXSR or not, so implement it as such instead of making it a
      function that queries FXSR dynamically.
      
      This means that the instruction just gets automatically rewritten to the
      correct one at boot-time.
      8ed1383f
  18. 23 Jun, 2005 1 commit
  19. 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!
      1da177e4