root/arch/alpha/kernel/entry.S

/* [previous][next][first][last][top][bottom][index][help] */
   1 /*
   2  * alpha/entry.S
   3  *
   4  * kernel entry-points
   5  */
   6 
   7 #include <asm/system.h>
   8 
   9 #define halt    .long PAL_halt
  10 #define rti     .long PAL_rti
  11 #define SIGCHLD 20
  12 
  13 #define NR_SYSCALLS 350
  14 #define osf_vfork sys_fork
  15 
  16 /*
  17  * These offsets must match with "struct hae" in io.h:  
  18  */
  19 #define HAE_CACHE       0
  20 #define HAE_REG         8
  21 
  22 /*
  23  * stack offsets
  24  */
  25 #define SP_OFF          160
  26 
  27 #define SWITCH_STACK_SIZE 320
  28 
  29 /*
  30  * task structure offsets
  31  */
  32 #define TASK_STATE      0
  33 #define TASK_COUNTER    8
  34 #define TASK_PRIORITY   16
  35 #define TASK_SIGNAL     24
  36 #define TASK_BLOCKED    32
  37 #define TASK_FLAGS      40
  38 
  39 /*
  40  * task flags (must match include/linux/sched.h):
  41  */
  42 #define PF_PTRACED      0x00000010
  43 
  44 /*
  45  * This defines the normal kernel pt-regs layout.
  46  *
  47  * regs 9-15 preserved by C code
  48  * regs 16-18 saved by PAL-code
  49  * regs 29-30 saved and set up by PAL-code
  50  */
  51 #define SAVE_ALL                        \
  52         subq    $30,160,$30;            \
  53         stq     $0,0($30);              \
  54         stq     $1,8($30);              \
  55         stq     $2,16($30);             \
  56         stq     $3,24($30);             \
  57         stq     $4,32($30);             \
  58         stq     $5,40($30);             \
  59         stq     $6,48($30);             \
  60         stq     $7,56($30);             \
  61         stq     $8,64($30);             \
  62         stq     $19,72($30);            \
  63         stq     $20,80($30);            \
  64         stq     $21,88($30);            \
  65         stq     $22,96($30);            \
  66         stq     $23,104($30);           \
  67         stq     $24,112($30);           \
  68         stq     $25,120($30);           \
  69         stq     $26,128($30);           \
  70         stq     $27,136($30);           \
  71         stq     $28,144($30);           \
  72         lda     $2,hae;                 \
  73         ldq     $2,HAE_CACHE($2);       \
  74         stq     $2,152($30)
  75 
  76 #define RESTORE_ALL                     \
  77         lda     $8,hae;                 \
  78         ldq     $7,HAE_CACHE($8);       \
  79         ldq     $6,152($30);            \
  80         subq    $7,$6,$5;               \
  81         beq     $5,99f;                 \
  82         ldq     $7,HAE_REG($8);         \
  83         addq    $31,7,$16;              \
  84         call_pal PAL_swpipl;            \
  85         stq     $6,HAE_CACHE($8);       \
  86         stq     $6,0($7);               \
  87         mb;                             \
  88         bis     $0,$0,$16;              \
  89         call_pal PAL_swpipl;            \
  90 99:;                                    \
  91         ldq     $0,0($30);              \
  92         ldq     $1,8($30);              \
  93         ldq     $2,16($30);             \
  94         ldq     $3,24($30);             \
  95         ldq     $4,32($30);             \
  96         ldq     $5,40($30);             \
  97         ldq     $6,48($30);             \
  98         ldq     $7,56($30);             \
  99         ldq     $8,64($30);             \
 100         ldq     $19,72($30);            \
 101         ldq     $20,80($30);            \
 102         ldq     $21,88($30);            \
 103         ldq     $22,96($30);            \
 104         ldq     $23,104($30);           \
 105         ldq     $24,112($30);           \
 106         ldq     $25,120($30);           \
 107         ldq     $26,128($30);           \
 108         ldq     $27,136($30);           \
 109         ldq     $28,144($30);           \
 110         addq    $30,160,$30
 111 
 112 .text
 113 .set noat
 114 #ifdef __linux__
 115   .set singlegp
 116 #endif
 117 
 118 .align 3
 119 .globl  entInt
 120 .ent    entInt
 121 entInt:
 122         SAVE_ALL
 123 /* start atomic operation with respect to software interrupts */
 124         lda     $0,intr_count
 125         ldq     $1,0($0)
 126         addq    $1,1,$1
 127         stq     $1,0($0)
 128 /* set up the arguments to the C interrupt handler */
 129         lda     $27,do_entInt
 130         jsr     $26,($27),do_entInt
 131 /* ok, return */
 132         lda     $0,intr_count
 133         ldq     $1,0($0)
 134         subq    $1,1,$1
 135         stq     $1,0($0)
 136         br      $31,ret_from_sys_call
 137 .end entInt
 138 
 139 .align 3
 140 .globl  entMM
 141 .ent    entMM
 142 entMM:
 143         SAVE_ALL
 144         lda     $27,do_page_fault
 145         lda     $26,ret_from_sys_call
 146         jsr     $31,($27),do_page_fault
 147 .end entMM
 148 
 149 .align 3
 150 .globl  entArith
 151 .ent    entArith
 152 entArith:
 153         SAVE_ALL
 154         lda     $27,do_entArith
 155         lda     $26,ret_from_sys_call
 156         jsr     $31,($27),do_entArith
 157 .end entArith
 158 
 159 .align 3
 160 .globl  entIF
 161 .ent    entIF
 162 entIF:
 163         SAVE_ALL
 164         lda     $27,do_entIF
 165         lda     $26,ret_from_sys_call
 166         jsr     $31,($27),do_entIF
 167 .end entIF
 168 
 169 /*
 170  * Fork() is one of the special system calls: it needs to
 171  * save the callee-saved regs so that the regs can be found
 172  * for the new process.. We save them in the "context switch"
 173  * stack format (see arch/alpha/kernel/process.c).
 174  *
 175  * Also, for the kernel fork, we need to fake the system call
 176  * stack buildup, as we can't do system calls from kernel space.
 177  */
 178 .align 3
 179 .ent    kernel_clone
 180 kernel_clone:
 181         subq $30,6*8,$30
 182         stq $31,0($30)
 183         stq $26,8($30)
 184         stq $29,16($30)
 185         stq $16,24($30)
 186         stq $17,32($30)
 187         stq $18,40($30)
 188         bis $31,2,$0    /* Register v0: syscall nr for fork() */
 189         SAVE_ALL
 190         lda $27,sys_clone
 191         jsr $26,($27),sys_clone
 192         stq $0,0($30)   
 193         br $31,ret_from_sys_call
 194 .end    kernel_clone
 195 
 196 /*
 197  * __kernel_thread(clone_flags, fn, arg)
 198  */
 199 .align 3
 200 .globl  __kernel_thread
 201 .ent    __kernel_thread
 202 __kernel_thread:
 203         subq $30,4*8,$30
 204         stq $9,0($30)
 205         stq $10,8($30)
 206         stq $26,16($30)
 207         bis $17,$17,$9          /* save fn */
 208         bis $18,$18,$10         /* save arg */
 209         bsr $26,kernel_clone
 210         bne $20,1f              /* $20 is non-zero in child */
 211         ldq $9,0($30)
 212         ldq $10,8($30)
 213         ldq $26,16($30)
 214         addq $30,4*8,$30
 215         ret $31,($26),1
 216 /* this is in child: look out as we don't have any stack here.. */
 217 1:      bis $9,$9,$27           /* get fn */
 218         bis $10,$10,$16         /* get arg */
 219         jsr $26,($27)
 220         bis $0,$0,$16
 221         lda $27,sys_exit
 222         jsr $26,($27),sys_exit
 223         call_pal PAL_halt
 224 .end    __kernel_thread
 225 
 226 .align 3
 227 .ent    do_switch_stack
 228 do_switch_stack:
 229         lda $30,-SWITCH_STACK_SIZE($30)
 230         stq  $9,0($30)
 231         stq $10,8($30)
 232         stq $11,16($30)
 233         stq $12,24($30)
 234         stq $13,32($30)
 235         stq $14,40($30)
 236         stq $15,48($30)
 237         stq $26,56($30)
 238         stt $f0,64($30)
 239         stt $f1,72($30)
 240         stt $f2,80($30)
 241         stt $f3,88($30)
 242         stt $f4,96($30)
 243         stt $f5,104($30)
 244         stt $f6,112($30)
 245         stt $f7,120($30)
 246         stt $f8,128($30)
 247         stt $f9,136($30)
 248         stt $f10,144($30)
 249         stt $f11,152($30)
 250         stt $f12,160($30)
 251         stt $f13,168($30)
 252         stt $f14,176($30)
 253         stt $f15,184($30)
 254         stt $f16,192($30)
 255         stt $f17,200($30)
 256         stt $f18,208($30)
 257         stt $f19,216($30)
 258         stt $f20,224($30)
 259         stt $f21,232($30)
 260         stt $f22,240($30)
 261         stt $f23,248($30)
 262         stt $f24,256($30)
 263         stt $f25,264($30)
 264         stt $f26,272($30)
 265         stt $f27,280($30)
 266         mf_fpcr $f0             # get fpcr
 267         stt $f28,288($30)
 268         stt $f29,296($30)
 269         stt $f30,304($30)
 270         stt $f0,312($30)        # save fpcr in slot of $f31
 271         ret $31,($1),1
 272 .end do_switch_stack
 273 
 274 .align 3
 275 .ent    undo_switch_stack
 276 undo_switch_stack:
 277         ldq  $9,0($30)
 278         ldq $10,8($30)
 279         ldq $11,16($30)
 280         ldq $12,24($30)
 281         ldq $13,32($30)
 282         ldq $14,40($30)
 283         ldq $15,48($30)
 284         ldq $26,56($30)
 285         ldt $f30,312($30)       # get saved fpcr
 286         ldt $f0,64($30)
 287         ldt $f1,72($30)
 288         ldt $f2,80($30)
 289         ldt $f3,88($30)
 290         mt_fpcr $f30            # install saved fpcr
 291         ldt $f4,96($30)
 292         ldt $f5,104($30)
 293         ldt $f6,112($30)
 294         ldt $f7,120($30)
 295         ldt $f8,128($30)
 296         ldt $f9,136($30)
 297         ldt $f10,144($30)
 298         ldt $f11,152($30)
 299         ldt $f12,160($30)
 300         ldt $f13,168($30)
 301         ldt $f14,176($30)
 302         ldt $f15,184($30)
 303         ldt $f16,192($30)
 304         ldt $f17,200($30)
 305         ldt $f18,208($30)
 306         ldt $f19,216($30)
 307         ldt $f20,224($30)
 308         ldt $f21,232($30)
 309         ldt $f22,240($30)
 310         ldt $f23,248($30)
 311         ldt $f24,256($30)
 312         ldt $f25,264($30)
 313         ldt $f26,272($30)
 314         ldt $f27,280($30)
 315         ldt $f28,288($30)
 316         ldt $f29,296($30)
 317         ldt $f30,304($30)
 318         lda $30,SWITCH_STACK_SIZE($30)
 319         ret $31,($1),1
 320 .end undo_switch_stack
 321 
 322 .align 3
 323 .globl  entUna
 324 .ent    entUna
 325 entUna:
 326         lda $30,-256($30)
 327         stq $0,0($30)
 328         ldq $0,256($30)         /* get PS */
 329         stq $1,8($30)
 330         stq $2,16($30)
 331         stq $3,24($30)
 332         and $0,8,$0             /* user mode? */
 333         stq $4,32($30)
 334         bne $0,entUnaUser       /* yup -> do user-level unaligned fault */
 335         stq $5,40($30)
 336         stq $6,48($30)
 337         stq $7,56($30)
 338         stq $8,64($30)
 339         stq $9,72($30)
 340         stq $10,80($30)
 341         stq $11,88($30)
 342         stq $12,96($30)
 343         stq $13,104($30)
 344         stq $14,112($30)
 345         stq $15,120($30)
 346         /* 16-18 PAL-saved */
 347         stq $19,152($30)
 348         stq $20,160($30)
 349         stq $21,168($30)
 350         stq $22,176($30)
 351         stq $23,184($30)
 352         stq $24,192($30)
 353         stq $25,200($30)
 354         stq $26,208($30)
 355         stq $27,216($30)
 356         stq $28,224($30)
 357         stq $29,232($30)
 358         stq $30,240($30)
 359         stq $31,248($30)
 360         lda $27,do_entUna
 361         jsr $26,($27),do_entUna
 362         ldq $0,0($30)
 363         ldq $1,8($30)
 364         ldq $2,16($30)
 365         ldq $3,24($30)
 366         ldq $4,32($30)
 367         ldq $5,40($30)
 368         ldq $6,48($30)
 369         ldq $7,56($30)
 370         ldq $8,64($30)
 371         ldq $9,72($30)
 372         ldq $10,80($30)
 373         ldq $11,88($30)
 374         ldq $12,96($30)
 375         ldq $13,104($30)
 376         ldq $14,112($30)
 377         ldq $15,120($30)
 378         /* 16-18 PAL-saved */
 379         ldq $19,152($30)
 380         ldq $20,160($30)
 381         ldq $21,168($30)
 382         ldq $22,176($30)
 383         ldq $23,184($30)
 384         ldq $24,192($30)
 385         ldq $25,200($30)
 386         ldq $26,208($30)
 387         ldq $27,216($30)
 388         ldq $28,224($30)
 389         ldq $29,232($30)
 390         ldq $30,240($30)
 391         lda $30,256($30)
 392         rti
 393 .end entUna
 394 
 395 .align 3
 396 .ent    entUnaUser
 397 entUnaUser:
 398         ldq $0,0($30)                   /* restore original $0 */
 399         lda $30,256($30)                /* pop entUna's stack frame */
 400         SAVE_ALL                        /* setup normal kernel stack */
 401         lda $30,-56($30)
 402         stq $9,0($30)
 403         stq $10,8($30)
 404         stq $11,16($30)
 405         stq $12,24($30)
 406         stq $13,32($30)
 407         stq $14,40($30)
 408         stq $15,48($30)
 409         lda $27,do_entUnaUser
 410         bis $31,$30,$19
 411         jsr $26,($27),do_entUnaUser
 412         ldq $9,0($30)
 413         ldq $10,8($30)
 414         ldq $11,16($30)
 415         ldq $12,24($30)
 416         ldq $13,32($30)
 417         ldq $14,40($30)
 418         ldq $15,48($30)
 419         lda $30,56($30)
 420         br $31,ret_from_sys_call
 421 
 422 .end    entUnaUser
 423 
 424 /*
 425  * A fork is the same as clone(SIGCHLD, 0);
 426 */
 427 .align 3
 428 .globl  sys_fork
 429 .ent    sys_fork
 430 sys_fork:
 431         br $1,do_switch_stack
 432         bis $31,SIGCHLD,$16
 433         bis $31,$31,$17
 434         bis $30,$30,$18
 435         lda $27,alpha_clone
 436         jsr $26,($27),alpha_clone
 437         br $1,undo_switch_stack
 438         ret $31,($26),1
 439 .end    sys_fork
 440 
 441 .align 3
 442 .globl  sys_clone
 443 .ent    sys_clone
 444 sys_clone:
 445         br $1,do_switch_stack
 446         /* arg1 and arg2 come from the user */
 447         bis $30,$30,$18
 448         lda $27,alpha_clone
 449         jsr $26,($27),alpha_clone
 450         br $1,undo_switch_stack
 451         ret $31,($26),1
 452 .end    sys_clone
 453 
 454 .align 3
 455 .globl  alpha_switch_to
 456 .ent    alpha_switch_to
 457 alpha_switch_to:
 458         br $1,do_switch_stack
 459         call_pal PAL_swpctx
 460         br $1,undo_switch_stack
 461         ret $31,($26),1
 462 .end alpha_switch_to
 463 
 464 /*
 465  * Oh, well.. Disassembling OSF/1 binaries to find out how the
 466  * system calls work isn't much fun.
 467  *
 468  * entSys is special in that the PAL-code doesn't save a0-a2, so
 469  * we start off by doing that by hand.
 470  */
 471 .align 3
 472 .globl  entSys
 473 .globl  ret_from_sys_call
 474 .ent    entSys
 475 entSys:
 476         stq     $16,24($30)
 477         stq     $17,32($30)
 478         stq     $18,40($30)
 479         SAVE_ALL
 480         lda     $1,NR_SYSCALLS($31)
 481         lda     $2,sys_call_table
 482         lda     $27,do_entSys
 483         cmpult  $0,$1,$1
 484         s8addq  $0,$2,$2
 485         beq     $1,1f
 486         ldq     $27,0($2)
 487 1:      jsr     $26,($27),do_entSys
 488         blt     $0,syscall_error        /* the call failed */
 489         stq     $0,0($30)
 490         stq     $31,72($30)             /* a3=0 => no error */
 491 
 492 .align 3
 493 ret_from_sys_call:
 494         cmovne  $26,0,$19               /* $19 = 0 => non-restartable */
 495         /* check bottom half interrupts */
 496         lda     $0,intr_count
 497         ldq     $1,0($0)
 498         bne     $1,ret_from_handle_bh
 499         lda     $2,bh_active
 500         ldq     $3,0($2)
 501         lda     $2,bh_mask
 502         ldq     $4,0($2)
 503         addq    $1,1,$1
 504         and     $3,$4,$2
 505         bne     $2,handle_bottom_half   
 506 ret_from_handle_bh:
 507         ldq     $0,SP_OFF($30)
 508         and     $0,8,$0
 509         beq     $0,restore_all
 510 ret_from_reschedule:
 511         lda     $0,need_resched
 512         lda     $1,current_set
 513         ldl     $2,0($0)
 514         lda     $4,init_task
 515         ldq     $3,0($1)
 516         bne     $2,reschedule
 517         subq    $4,$3,$4
 518         beq     $4,restore_all
 519         ldq     $4,TASK_SIGNAL($3)
 520         ldq     $16,TASK_BLOCKED($3)
 521         bic     $4,$16,$4
 522         bne     $4,signal_return
 523 restore_all:
 524         RESTORE_ALL
 525         rti
 526 
 527         .align 3
 528 handle_bottom_half:
 529         /*
 530          * We're called with $0 containing the address of
 531          * 'intr_count' and $1 containing 'intr_count+1'
 532          */
 533         stq     $1,0($0)        /* intr_count = 1 */
 534         subq    $30,16,$30
 535         stq     $19,0($30)      /* save syscall nr */
 536         stq     $20,8($30)      /* and error indication (a3) */
 537         lda     $27,do_bottom_half
 538         jsr     $26,($27),do_bottom_half
 539         lda     $0,intr_count
 540         ldq     $19,0($30)
 541         ldq     $20,8($30)
 542         addq    $30,16,$30
 543         stq     $31,0($0)       /* intr_count = 0 */
 544         br      $31,ret_from_handle_bh
 545 
 546         .align 3
 547 syscall_error:
 548         /*
 549          * Some system calls (e.g., ptrace) can return arbitrary
 550          * values which might normally be mistaken as error numbers.
 551          * Those functions must zero $0 (v0) directly in the stack
 552          * frame to indicate that a negative return value wasn't an
 553          * error number..
 554          */
 555         ldq     $19,0($30)      /* old syscall nr (zero if success) */
 556         beq     $19,ret_success
 557 
 558         ldq     $20,72($30)     /* .. and this a3 */
 559         subq    $31,$0,$0       /* with error in v0 */
 560         addq    $31,1,$1        /* set a3 for errno return */
 561         bis     $31,$31,$26     /* tell "ret_from_sys_call" that we can restart */
 562         stq     $1,72($30)      /* a3 for return */
 563 ret_success:
 564         stq     $0,0($30)
 565         br      $31,ret_from_sys_call
 566 
 567 .align 3
 568 signal_return:
 569         bis     $30,$30,$17
 570         br      $1,do_switch_stack
 571         bis     $30,$30,$18
 572         lda     $27,do_signal
 573         jsr     $26,($27),do_signal
 574         lda     $30,SWITCH_STACK_SIZE($30)
 575         br      $31,restore_all
 576 .end entSys
 577 
 578 .align 3
 579 .ent reschedule
 580 reschedule:
 581         subq    $30,16,$30
 582         stq     $19,0($30)      /* save syscall nr */
 583         stq     $20,8($30)      /* and error indication (a3) */
 584         lda     $27,schedule
 585         jsr     $26,($27),schedule
 586         ldq     $19,0($30)
 587         ldq     $20,8($30)
 588         addq    $30,16,$30
 589         br      $31,ret_from_reschedule
 590 .end reschedule
 591 
 592 .align 3
 593 .ent sys_sigreturn
 594 sys_sigreturn:
 595         bis     $30,$30,$17
 596         lda     $30,-SWITCH_STACK_SIZE($30)
 597         bis     $30,$30,$18
 598         lda     $27,do_sigreturn
 599         jsr     $26,($27),do_sigreturn
 600         br      $1,undo_switch_stack
 601         br      $31,ret_from_sys_call
 602 .end sys_sigreturn
 603 
 604 .align 3
 605 .ent sys_sigsuspend
 606 sys_sigsuspend:
 607         bis     $30,$30,$17
 608         br      $1,do_switch_stack
 609         bis     $30,$30,$18
 610         lda     $27,do_sigsuspend
 611         jsr     $26,($27),do_sigsuspend
 612         lda     $30,SWITCH_STACK_SIZE($30)
 613         br      $31,ret_from_sys_call
 614 .end sys_sigsuspend
 615 
 616         .align 3
 617         .globl sys_call_table
 618 sys_call_table:
 619 /*0*/   .quad do_entSys, sys_exit, sys_fork, sys_read, sys_write
 620         .quad do_entSys, sys_close, sys_wait4, do_entSys, sys_link
 621         .quad sys_unlink, do_entSys, sys_chdir, sys_fchdir, sys_mknod
 622         .quad sys_chmod, sys_chown, sys_brk, do_entSys, sys_lseek
 623         .quad sys_getxpid, osf_mount, osf_umount, sys_setuid, sys_getxuid
 624         .quad do_entSys, sys_ptrace, do_entSys, do_entSys, do_entSys
 625         .quad do_entSys, do_entSys, do_entSys, sys_access, do_entSys
 626         .quad do_entSys, sys_sync, sys_kill, do_entSys, sys_setpgid
 627         .quad do_entSys, sys_dup, sys_pipe, do_entSys, do_entSys
 628         .quad sys_open, do_entSys, sys_getxgid, osf_sigprocmask, do_entSys
 629 /*50*/  .quad do_entSys, sys_acct, sys_sigpending, do_entSys, sys_ioctl
 630         .quad do_entSys, do_entSys, sys_symlink, sys_readlink, sys_execve
 631         .quad sys_umask, sys_chroot, do_entSys, sys_getpgrp, sys_getpagesize
 632         .quad do_entSys, osf_vfork, sys_newstat, sys_newlstat, do_entSys
 633         .quad do_entSys, osf_mmap, do_entSys, sys_munmap, sys_mprotect
 634         .quad sys_madvise, sys_vhangup, do_entSys, do_entSys, sys_getgroups
 635         /* map BSD's setpgrp to sys_setpgid for binary compatibility: */
 636         .quad sys_setgroups, do_entSys, sys_setpgid, sys_setitimer, do_entSys
 637         .quad do_entSys, sys_getitimer, sys_gethostname, sys_sethostname, sys_getdtablesize
 638         .quad sys_dup2, sys_newfstat, sys_fcntl, sys_select, do_entSys
 639         .quad sys_fsync, sys_setpriority, sys_socket, sys_connect, sys_accept
 640 /*100*/ .quad osf_getpriority, sys_send, sys_recv, sys_sigreturn, sys_bind
 641         .quad sys_setsockopt, sys_listen, do_entSys, do_entSys, do_entSys
 642         .quad do_entSys, sys_sigsuspend, do_entSys, sys_recvmsg, sys_sendmsg
 643         .quad do_entSys, sys_gettimeofday, sys_getrusage, sys_getsockopt, do_entSys
 644         .quad sys_readv, sys_writev, sys_settimeofday, sys_fchown, sys_fchmod
 645         .quad sys_recvfrom, sys_setreuid, sys_setregid, sys_rename, sys_truncate
 646         .quad sys_ftruncate, sys_flock, sys_setgid, sys_sendto, sys_shutdown
 647         .quad sys_socketpair, sys_mkdir, sys_rmdir, sys_utimes, do_entSys
 648         .quad do_entSys, sys_getpeername, do_entSys, do_entSys, sys_getrlimit
 649         .quad sys_setrlimit, do_entSys, sys_setsid, sys_quotactl, do_entSys
 650 /*150*/ .quad sys_getsockname, do_entSys, do_entSys, do_entSys, do_entSys
 651         .quad do_entSys, sys_sigaction, do_entSys, do_entSys, osf_getdirentries
 652         .quad osf_statfs, osf_fstatfs, do_entSys, do_entSys, do_entSys
 653         .quad osf_getdomainname, sys_setdomainname, do_entSys, do_entSys, do_entSys
 654         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 655         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 656         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 657         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 658         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 659         .quad do_entSys, do_entSys, do_entSys, do_entSys, osf_swapon
 660 /*200*/ .quad sys_msgctl, sys_msgget, sys_msgrcv, sys_msgsnd, sys_semctl
 661         .quad sys_semget, sys_semop, osf_utsname, do_entSys, osf_shmat
 662         .quad sys_shmctl, sys_shmdt, sys_shmget, do_entSys, do_entSys
 663         .quad do_entSys, do_entSys, sys_msync, do_entSys, do_entSys
 664         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 665         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 666         .quad do_entSys, do_entSys, do_entSys, sys_getpgid, sys_getsid
 667         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 668         .quad do_entSys, do_entSys, do_entSys, do_entSys, osf_proplist_syscall
 669         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 670 /*250*/ .quad do_entSys, osf_usleep_thread, do_entSys, do_entSys, sys_sysfs
 671         .quad do_entSys, osf_getsysinfo, osf_setsysinfo, do_entSys, do_entSys
 672         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 673         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 674         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 675         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 676         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 677         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 678         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 679         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys
 680 /* linux-specific system calls start at 300 */
 681 /*300*/ .quad sys_bdflush, sys_sethae, sys_mount, sys_adjtimex, sys_swapoff
 682         .quad sys_getdents, alpha_create_module, sys_init_module, sys_delete_module, sys_get_kernel_syms
 683         .quad sys_syslog, sys_reboot, sys_clone, sys_uselib, sys_mlock
 684         .quad sys_munlock, sys_mlockall, sys_munlockall, sys_sysinfo, sys_sysctl
 685         .quad sys_idle, sys_umount, sys_swapon, sys_times, sys_personality
 686         .quad sys_setfsuid, sys_setfsgid, sys_ustat, sys_statfs, sys_fstatfs
 687         .quad sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler, sys_sched_yield
 688         .quad sys_sched_get_priority_max, sys_sched_get_priority_min, sys_sched_rr_get_interval, do_entSys /* sys_afs_syscall */, sys_newuname
 689         .quad sys_nanosleep, do_entSys, do_entSys, do_entSys, do_entSys
 690         .quad do_entSys, do_entSys, do_entSys, do_entSys, do_entSys

/* [previous][next][first][last][top][bottom][index][help] */