Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com>
Cc: Roland McGrath <roland@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
        int ret;
 
        /* Are we from a system call? */
-       if (regs->orig_ax >= 0) {
+       if ((long)regs->orig_ax >= 0) {
                /* If so, check system call restarting.. */
                switch (regs->ax) {
                        case -ERESTART_RESTARTBLOCK:
        }
 
        /* Did we come from a system call? */
-       if (regs->orig_ax >= 0) {
+       if ((long)regs->orig_ax >= 0) {
                /* Restart the system call - no handlers present */
                switch (regs->ax) {
                case -ERESTARTNOHAND:
 
        unsigned long si;
        unsigned long di;
        unsigned long bp;
-       long ax;
+       unsigned long ax;
        unsigned long ds;
        unsigned long es;
        unsigned long fs;
        /* int  gs; */
-       long orig_ax;
+       unsigned long orig_ax;
        unsigned long ip;
        unsigned long cs;
        unsigned long flags;
 void signal_fault(struct pt_regs *regs, void __user *frame, char *where);
 #endif
 
-#define regs_return_value(regs) ((regs)->ax)
+static inline unsigned long regs_return_value(struct pt_regs *regs)
+{
+       return regs->ax;
+}
 
 /*
  * user_mode_vm(regs) determines whether a register set came from user mode.