RTEMS-5
Annotated Report
libfsmount
Sat Apr 11 19:31:13 2020
4000dfa0 <rtems_fsmount>:
)
/*-------------------------------------------------------------------------*\
| Return Value: |
| 0, if success, -1 and errno if failed |
\*=========================================================================*/
{
4000dfa0: 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"
4000dfa4: 27 10 01 e6 sethi %hi(0x40079800), %l3
<== NOT EXECUTED
{
4000dfa8: ba 10 00 18 mov %i0, %i5
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
4000dfac: 25 10 01 e6 sethi %hi(0x40079800), %l2
<== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
4000dfb0: 23 10 01 e6 sethi %hi(0x40079800), %l1
<== NOT EXECUTED
bool terminate = false;
4000dfb4: b8 10 20 00 clr %i4
<== NOT EXECUTED
size_t fstab_idx = 0;
4000dfb8: b6 10 20 00 clr %i3
<== NOT EXECUTED
int rc = 0;
4000dfbc: b0 10 20 00 clr %i0
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
4000dfc0: a6 14 e1 40 or %l3, 0x140, %l3
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
4000dfc4: a4 14 a1 10 or %l2, 0x110, %l2
<== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
4000dfc8: a2 14 60 d8 or %l1, 0xd8, %l1
<== NOT EXECUTED
(fstab_idx < fstab_count)) {
4000dfcc: 80 a6 c0 19 cmp %i3, %i1
<== NOT EXECUTED
while (!terminate &&
4000dfd0: b8 1f 20 01 xor %i4, 1, %i4
<== NOT EXECUTED
(fstab_idx < fstab_count)) {
4000dfd4: 82 40 20 00 addx %g0, 0, %g1
<== NOT EXECUTED
while (!terminate &&
4000dfd8: 82 08 40 1c and %g1, %i4, %g1
<== NOT EXECUTED
4000dfdc: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4000dfe0: 02 80 00 21 be 4000e064 <rtems_fsmount+0xc4>
<== NOT EXECUTED
4000dfe4: b8 10 00 01 mov %g1, %i4
<== NOT EXECUTED
tmp_rc = rtems_mkdir(fstab_ptr->target, S_IRWXU | S_IRWXG | S_IRWXO);
4000dfe8: d0 07 60 04 ld [ %i5 + 4 ], %o0
<== NOT EXECUTED
4000dfec: 40 00 ca 46 call 40040904 <rtems_mkdir>
<== NOT EXECUTED
4000dff0: 92 10 21 ff mov 0x1ff, %o1
<== NOT EXECUTED
if (tmp_rc != 0) {
4000dff4: a0 92 20 00 orcc %o0, 0, %l0
<== NOT EXECUTED
4000dff8: 32 80 00 21 bne,a 4000e07c <rtems_fsmount+0xdc>
<== NOT EXECUTED
4000dffc: c2 17 60 10 lduh [ %i5 + 0x10 ], %g1
<== NOT EXECUTED
tmp_rc = mount(fstab_ptr->source,
4000e000: d6 07 60 0c ld [ %i5 + 0xc ], %o3
<== NOT EXECUTED
4000e004: d4 07 60 08 ld [ %i5 + 8 ], %o2
<== NOT EXECUTED
4000e008: d2 07 60 04 ld [ %i5 + 4 ], %o1
<== NOT EXECUTED
4000e00c: d0 07 40 00 ld [ %i5 ], %o0
<== NOT EXECUTED
4000e010: 7f ff ef e6 call 40009fa8 <mount>
<== NOT EXECUTED
4000e014: 98 10 20 00 clr %o4
<== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_FAILED)) {
4000e018: c2 17 60 10 lduh [ %i5 + 0x10 ], %g1
<== NOT EXECUTED
if (tmp_rc != 0) {
4000e01c: 80 a2 20 00 cmp %o0, 0
<== NOT EXECUTED
4000e020: 02 80 00 24 be 4000e0b0 <rtems_fsmount+0x110>
<== NOT EXECUTED
4000e024: a0 10 00 08 mov %o0, %l0
<== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_FAILED)) {
4000e028: 80 88 60 04 btst 4, %g1
<== NOT EXECUTED
4000e02c: 12 80 00 3a bne 4000e114 <rtems_fsmount+0x174>
<== NOT EXECUTED
4000e030: 01 00 00 00 nop
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_FAILED)) {
4000e034: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
4000e038: 80 88 60 04 btst 4, %g1
<== NOT EXECUTED
4000e03c: 22 80 00 18 be,a 4000e09c <rtems_fsmount+0xfc>
<== NOT EXECUTED
4000e040: ba 07 60 14 add %i5, 0x14, %i5
<== NOT EXECUTED
(fstab_idx < fstab_count)) {
4000e044: 80 a6 c0 19 cmp %i3, %i1
<== NOT EXECUTED
while (!terminate &&
4000e048: b8 1f 20 01 xor %i4, 1, %i4
<== NOT EXECUTED
(fstab_idx < fstab_count)) {
4000e04c: 82 40 20 00 addx %g0, 0, %g1
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {
4000e050: b0 10 00 10 mov %l0, %i0
<== NOT EXECUTED
while (!terminate &&
4000e054: 82 08 40 1c and %g1, %i4, %g1
<== NOT EXECUTED
4000e058: 80 a0 60 00 cmp %g1, 0
<== NOT EXECUTED
4000e05c: 12 bf ff e3 bne 4000dfe8 <rtems_fsmount+0x48>
<== NOT EXECUTED
4000e060: b8 10 00 01 mov %g1, %i4
<== NOT EXECUTED
if (!terminate) {
fstab_ptr++;
fstab_idx++;
}
}
if (fail_idx != NULL) {
4000e064: 80 a6 a0 00 cmp %i2, 0
<== NOT EXECUTED
4000e068: 02 80 00 10 be 4000e0a8 <rtems_fsmount+0x108>
<== NOT EXECUTED
4000e06c: 01 00 00 00 nop
<== NOT EXECUTED
*fail_idx = fstab_idx;
4000e070: f6 26 80 00 st %i3, [ %i2 ]
<== NOT EXECUTED
}
return rc;
4000e074: 81 c7 e0 08 ret
<== NOT EXECUTED
4000e078: 81 e8 00 00 restore
<== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNTPNT_CRTERR)) {
4000e07c: 80 88 60 02 btst 2, %g1
<== NOT EXECUTED
4000e080: 12 80 00 17 bne 4000e0dc <rtems_fsmount+0x13c>
<== NOT EXECUTED
4000e084: 01 00 00 00 nop
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {
4000e088: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
4000e08c: 80 88 60 02 btst 2, %g1
<== NOT EXECUTED
4000e090: 12 bf ff ee bne 4000e048 <rtems_fsmount+0xa8>
<== NOT EXECUTED
4000e094: 80 a6 c0 19 cmp %i3, %i1
<== NOT EXECUTED
fstab_ptr++;
4000e098: ba 07 60 14 add %i5, 0x14, %i5
<== NOT EXECUTED
fstab_idx++;
4000e09c: b6 06 e0 01 inc %i3
<== NOT EXECUTED
4000e0a0: 10 bf ff cb b 4000dfcc <rtems_fsmount+0x2c>
<== NOT EXECUTED
4000e0a4: b8 10 20 00 clr %i4
<== NOT EXECUTED
}
4000e0a8: 81 c7 e0 08 ret
<== NOT EXECUTED
4000e0ac: 81 e8 00 00 restore
<== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_OK)) {
4000e0b0: 80 88 60 01 btst 1, %g1
<== NOT EXECUTED
4000e0b4: 12 80 00 28 bne 4000e154 <rtems_fsmount+0x1b4>
<== NOT EXECUTED
4000e0b8: 01 00 00 00 nop
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_OK)) {
4000e0bc: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
4000e0c0: 80 88 60 01 btst 1, %g1
<== NOT EXECUTED
4000e0c4: 12 bf ff c3 bne 4000dfd0 <rtems_fsmount+0x30>
<== NOT EXECUTED
4000e0c8: 80 a6 c0 19 cmp %i3, %i1
<== NOT EXECUTED
fstab_ptr++;
4000e0cc: ba 07 60 14 add %i5, 0x14, %i5
<== NOT EXECUTED
fstab_idx++;
4000e0d0: b6 06 e0 01 inc %i3
<== NOT EXECUTED
4000e0d4: 10 bf ff be b 4000dfcc <rtems_fsmount+0x2c>
<== NOT EXECUTED
4000e0d8: b8 10 20 00 clr %i4
<== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
4000e0dc: 7f ff d3 25 call 40002d70 <__getreent>
<== NOT EXECUTED
4000e0e0: 01 00 00 00 nop
<== NOT EXECUTED
4000e0e4: ea 07 60 04 ld [ %i5 + 4 ], %l5
<== NOT EXECUTED
strerror(errno));
4000e0e8: 40 01 3a ad call 4005cb9c <__errno>
<== NOT EXECUTED
4000e0ec: e8 02 20 08 ld [ %o0 + 8 ], %l4
<== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
4000e0f0: 40 01 57 ef call 400640ac <strerror>
<== NOT EXECUTED
4000e0f4: d0 02 00 00 ld [ %o0 ], %o0
<== NOT EXECUTED
4000e0f8: 94 10 00 15 mov %l5, %o2
<== NOT EXECUTED
4000e0fc: 96 10 00 08 mov %o0, %o3
<== NOT EXECUTED
4000e100: 92 10 00 11 mov %l1, %o1
<== NOT EXECUTED
4000e104: 40 01 3d f7 call 4005d8e0 <fprintf>
<== NOT EXECUTED
4000e108: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {
4000e10c: 10 bf ff e0 b 4000e08c <rtems_fsmount+0xec>
<== NOT EXECUTED
4000e110: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
4000e114: 7f ff d3 17 call 40002d70 <__getreent>
<== NOT EXECUTED
4000e118: 01 00 00 00 nop
<== NOT EXECUTED
4000e11c: ea 07 40 00 ld [ %i5 ], %l5
<== NOT EXECUTED
4000e120: e8 02 20 08 ld [ %o0 + 8 ], %l4
<== NOT EXECUTED
strerror(errno));
4000e124: 40 01 3a 9e call 4005cb9c <__errno>
<== NOT EXECUTED
4000e128: ec 07 60 04 ld [ %i5 + 4 ], %l6
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
4000e12c: 40 01 57 e0 call 400640ac <strerror>
<== NOT EXECUTED
4000e130: d0 02 00 00 ld [ %o0 ], %o0
<== NOT EXECUTED
4000e134: 96 10 00 16 mov %l6, %o3
<== NOT EXECUTED
4000e138: 98 10 00 08 mov %o0, %o4
<== NOT EXECUTED
4000e13c: 94 10 00 15 mov %l5, %o2
<== NOT EXECUTED
4000e140: 92 10 00 12 mov %l2, %o1
<== NOT EXECUTED
4000e144: 40 01 3d e7 call 4005d8e0 <fprintf>
<== NOT EXECUTED
4000e148: 90 10 00 14 mov %l4, %o0
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_FAILED)) {
4000e14c: 10 bf ff bb b 4000e038 <rtems_fsmount+0x98>
<== NOT EXECUTED
4000e150: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
4000e154: 7f ff d3 07 call 40002d70 <__getreent>
<== NOT EXECUTED
4000e158: 01 00 00 00 nop
<== NOT EXECUTED
4000e15c: d6 07 60 04 ld [ %i5 + 4 ], %o3
<== NOT EXECUTED
4000e160: d4 07 40 00 ld [ %i5 ], %o2
<== NOT EXECUTED
4000e164: d0 02 20 08 ld [ %o0 + 8 ], %o0
<== NOT EXECUTED
4000e168: 40 01 3d de call 4005d8e0 <fprintf>
<== NOT EXECUTED
4000e16c: 92 10 00 13 mov %l3, %o1
<== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_OK)) {
4000e170: 10 bf ff d4 b 4000e0c0 <rtems_fsmount+0x120>
<== NOT EXECUTED
4000e174: c2 17 60 12 lduh [ %i5 + 0x12 ], %g1
<== NOT EXECUTED