RTEMS-5
Annotated Report
Fri Aug 10 14:30:33 2018
4000893c <rtems_fsmount>:
)
/*-------------------------------------------------------------------------*\
| Return Value: |
| 0, if success, -1 and errno if failed |
\*=========================================================================*/
{
4000893c: 9d e3 bf a0 save %sp, -96, %sp
<== NOT EXECUTED
rc = tmp_rc;
}
}
else {
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_OK)) {
fprintf(stdout,"fsmount: mounting of \"%s\" to"
40008940: 27 10 01 f3 sethi %hi(0x4007cc00), %l3
<== NOT EXECUTED
{
40008944: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
40008948: 25 10 01 f2 sethi %hi(0x4007c800), %l2
<== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
4000894c: 23 10 01 f2 sethi %hi(0x4007c800), %l1
<== NOT EXECUTED
bool terminate = false;
40008950: b8 10 20 00 clr %i4
<== NOT EXECUTED
size_t fstab_idx = 0;
40008954: b6 10 20 00 clr %i3
<== NOT EXECUTED
int rc = 0;
40008958: b0 10 20 00 clr %i0
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
4000895c: a6 14 e0 18 or %l3, 0x18, %l3
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
40008960: a4 14 a3 e8 or %l2, 0x3e8, %l2
<== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
40008964: a2 14 63 b0 or %l1, 0x3b0, %l1
<== NOT EXECUTED
(fstab_idx < fstab_count)) {
40008968: 80 a6 c0 19 cmp %i3, %i1
<== NOT EXECUTED
while (!terminate &&
4000896c: b8 1f 20 01 xor %i4, 1, %i4
<== NOT EXECUTED
(fstab_idx < fstab_count)) {
40008970: 82 40 20 00 addx %g0, 0, %g1
<== NOT EXECUTED
while (!terminate &&
40008974: 82 08 40 1c and %g1, %i4, %g1
<== NOT EXECUTED
40008978: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4000897c: 02 80 00 21 be 40008a00 <rtems_fsmount+0xc4>
<== NOT EXECUTED
40008980: b8 10 00 01 mov %g1, %i4
<== NOT EXECUTED
tmp_rc = rtems_mkdir(fstab_ptr->target, S_IRWXU | S_IRWXG | S_IRWXO);
40008984: d0 07 60 04 ld [ %i5 + 4 ], %o0
<== NOT EXECUTED
40008988: 40 00 10 0a call 4000c9b0 <rtems_mkdir>
<== NOT EXECUTED
4000898c: 92 10 21 ff mov 0x1ff, %o1
<== NOT EXECUTED
if (tmp_rc != 0) {
40008990: a0 92 20 00 orcc %o0, 0, %l0
<== NOT EXECUTED
40008994: 32 80 00 21 bne,a 40008a18 <rtems_fsmount+0xdc>
<== NOT EXECUTED
40008998: c2 17 60 10 lduh [ %i5 + 0x10 ], %g1
<== NOT EXECUTED
tmp_rc = mount(fstab_ptr->source,
4000899c: d6 07 60 0c ld [ %i5 + 0xc ], %o3
<== NOT EXECUTED
400089a0: d4 07 60 08 ld [ %i5 + 8 ], %o2
<== NOT EXECUTED
400089a4: d2 07 60 04 ld [ %i5 + 4 ], %o1
<== NOT EXECUTED
400089a8: d0 07 40 00 ld [ %i5 ], %o0
<== NOT EXECUTED
400089ac: 40 00 0d 54 call 4000befc <mount>
<== NOT EXECUTED
400089b0: 98 10 20 00 clr %o4
<== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_FAILED)) {
400089b4: c2 17 60 10 lduh [ %i5 + 0x10 ], %g1
<== NOT EXECUTED
if (tmp_rc != 0) {
400089b8: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
400089bc: 02 80 00 24 be 40008a4c <rtems_fsmount+0x110>
<== NOT EXECUTED
400089c0: a0 10 00 08 mov %o0, %l0
<== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_FAILED)) {
400089c4: 80 88 60 04 btst 4, %g1
<== NOT EXECUTED
400089c8: 12 80 00 3a bne 40008ab0 <rtems_fsmount+0x174>
<== NOT EXECUTED
400089cc: 01 00 00 00 nop
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_FAILED)) {
400089d0: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
400089d4: 80 88 60 04 btst 4, %g1
<== NOT EXECUTED
400089d8: 22 80 00 18 be,a 40008a38 <rtems_fsmount+0xfc>
<== NOT EXECUTED
400089dc: ba 07 60 14 add %i5, 0x14, %i5
<== NOT EXECUTED
(fstab_idx < fstab_count)) {
400089e0: 80 a6 c0 19 cmp %i3, %i1
<== NOT EXECUTED
while (!terminate &&
400089e4: b8 1f 20 01 xor %i4, 1, %i4
<== NOT EXECUTED
(fstab_idx < fstab_count)) {
400089e8: 82 40 20 00 addx %g0, 0, %g1
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {
400089ec: b0 10 00 10 mov %l0, %i0
<== NOT EXECUTED
while (!terminate &&
400089f0: 82 08 40 1c and %g1, %i4, %g1
<== NOT EXECUTED
400089f4: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
400089f8: 12 bf ff e3 bne 40008984 <rtems_fsmount+0x48>
<== NOT EXECUTED
400089fc: b8 10 00 01 mov %g1, %i4
<== NOT EXECUTED
if (!terminate) {
fstab_ptr++;
fstab_idx++;
}
}
if (fail_idx != NULL) {
40008a00: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
40008a04: 02 80 00 10 be 40008a44 <rtems_fsmount+0x108>
<== NOT EXECUTED
40008a08: 01 00 00 00 nop
<== NOT EXECUTED
*fail_idx = fstab_idx;
40008a0c: f6 26 80 00 st %i3, [ %i2 ]
<== NOT EXECUTED
}
return rc;
40008a10: 81 c7 e0 08 ret
<== NOT EXECUTED
40008a14: 81 e8 00 00 restore
<== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNTPNT_CRTERR)) {
40008a18: 80 88 60 02 btst 2, %g1
<== NOT EXECUTED
40008a1c: 12 80 00 17 bne 40008a78 <rtems_fsmount+0x13c>
<== NOT EXECUTED
40008a20: 01 00 00 00 nop
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {
40008a24: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
40008a28: 80 88 60 02 btst 2, %g1
<== NOT EXECUTED
40008a2c: 12 bf ff ee bne 400089e4 <rtems_fsmount+0xa8>
<== NOT EXECUTED
40008a30: 80 a6 c0 19 cmp %i3, %i1
<== NOT EXECUTED
fstab_ptr++;
40008a34: ba 07 60 14 add %i5, 0x14, %i5
<== NOT EXECUTED
fstab_idx++;
40008a38: b6 06 e0 01 inc %i3
<== NOT EXECUTED
40008a3c: 10 bf ff cb b 40008968 <rtems_fsmount+0x2c>
<== NOT EXECUTED
40008a40: b8 10 20 00 clr %i4
<== NOT EXECUTED
}
40008a44: 81 c7 e0 08 ret
<== NOT EXECUTED
40008a48: 81 e8 00 00 restore
<== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_OK)) {
40008a4c: 80 88 60 01 btst 1, %g1
<== NOT EXECUTED
40008a50: 12 80 00 28 bne 40008af0 <rtems_fsmount+0x1b4>
<== NOT EXECUTED
40008a54: 01 00 00 00 nop
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_OK)) {
40008a58: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
40008a5c: 80 88 60 01 btst 1, %g1
<== NOT EXECUTED
40008a60: 12 bf ff c3 bne 4000896c <rtems_fsmount+0x30>
<== NOT EXECUTED
40008a64: 80 a6 c0 19 cmp %i3, %i1
<== NOT EXECUTED
fstab_ptr++;
40008a68: ba 07 60 14 add %i5, 0x14, %i5
<== NOT EXECUTED
fstab_idx++;
40008a6c: b6 06 e0 01 inc %i3
<== NOT EXECUTED
40008a70: 10 bf ff be b 40008968 <rtems_fsmount+0x2c>
<== NOT EXECUTED
40008a74: b8 10 20 00 clr %i4
<== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
40008a78: 7f ff e8 4c call 40002ba8 <__getreent>
<== NOT EXECUTED
40008a7c: 01 00 00 00 nop
<== NOT EXECUTED
40008a80: ea 07 60 04 ld [ %i5 + 4 ], %l5
<== NOT EXECUTED
strerror(errno));
40008a84: 40 01 4f a4 call 4005c914 <__errno>
<== NOT EXECUTED
40008a88: e8 02 20 08 ld [ %o0 + 8 ], %l4
<== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
40008a8c: 40 01 6e c5 call 400645a0 <strerror>
<== NOT EXECUTED
40008a90: d0 02 00 00 ld [ %o0 ], %o0
<== NOT EXECUTED
40008a94: 94 10 00 15 mov %l5, %o2
<== NOT EXECUTED
40008a98: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
40008a9c: 92 10 00 11 mov %l1, %o1
<== NOT EXECUTED
40008aa0: 40 01 53 6e call 4005d858 <fprintf>
<== NOT EXECUTED
40008aa4: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {
40008aa8: 10 bf ff e0 b 40008a28 <rtems_fsmount+0xec>
<== NOT EXECUTED
40008aac: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
40008ab0: 7f ff e8 3e call 40002ba8 <__getreent>
<== NOT EXECUTED
40008ab4: 01 00 00 00 nop
<== NOT EXECUTED
40008ab8: ea 07 40 00 ld [ %i5 ], %l5
<== NOT EXECUTED
40008abc: e8 02 20 08 ld [ %o0 + 8 ], %l4
<== NOT EXECUTED
strerror(errno));
40008ac0: 40 01 4f 95 call 4005c914 <__errno>
<== NOT EXECUTED
40008ac4: ec 07 60 04 ld [ %i5 + 4 ], %l6
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
40008ac8: 40 01 6e b6 call 400645a0 <strerror>
<== NOT EXECUTED
40008acc: d0 02 00 00 ld [ %o0 ], %o0
<== NOT EXECUTED
40008ad0: 96 10 00 16 mov %l6, %o3
<== NOT EXECUTED
40008ad4: 98 10 00 08 mov %o0, %o4
<== NOT EXECUTED
40008ad8: 94 10 00 15 mov %l5, %o2
<== NOT EXECUTED
40008adc: 92 10 00 12 mov %l2, %o1
<== NOT EXECUTED
40008ae0: 40 01 53 5e call 4005d858 <fprintf>
<== NOT EXECUTED
40008ae4: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_FAILED)) {
40008ae8: 10 bf ff bb b 400089d4 <rtems_fsmount+0x98>
<== NOT EXECUTED
40008aec: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
40008af0: 7f ff e8 2e call 40002ba8 <__getreent>
<== NOT EXECUTED
40008af4: 01 00 00 00 nop
<== NOT EXECUTED
40008af8: d6 07 60 04 ld [ %i5 + 4 ], %o3
<== NOT EXECUTED
40008afc: d4 07 40 00 ld [ %i5 ], %o2
<== NOT EXECUTED
40008b00: d0 02 20 08 ld [ %o0 + 8 ], %o0
<== NOT EXECUTED
40008b04: 40 01 53 55 call 4005d858 <fprintf>
<== NOT EXECUTED
40008b08: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_OK)) {
40008b0c: 10 bf ff d4 b 40008a5c <rtems_fsmount+0x120>
<== NOT EXECUTED
40008b10: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED