RTEMS-6
Annotated Report
libfsmount
Sun Feb 28 23:52:50 2021
0011238c <rtems_fsmount>:
)
/*-------------------------------------------------------------------------*\
| Return Value: |
| 0, if success, -1 and errno if failed |
\*=========================================================================*/
{
11238c: e92d 4ff0 stmdb sp!, {r4, r5, r6, r7, r8, r9, sl, fp, lr} <== NOT EXECUTED
112390: b087 sub sp, #28 <== NOT EXECUTED
bool terminate = false;
/*
* scan through all fstab entries;
*/
while (!terminate &&
112392: 460f mov r7, r1 <== NOT EXECUTED
{
112394: 9204 str r2, [sp, #16] <== NOT EXECUTED
while (!terminate &&
112396: 2900 cmp r1, #0 <== NOT EXECUTED
112398: d076 beq.n 112488 <rtems_fsmount+0xfc> <== NOT EXECUTED
rc = tmp_rc;
}
}
else {
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_OK)) {
fprintf(stdout,"fsmount: mounting of \"%s\" to"
11239a: f242 3a0c movw sl, #8972 ; 0x230c <== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
11239e: f242 29dc movw r9, #8924 ; 0x22dc <== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
1123a2: f242 28a8 movw r8, #8872 ; 0x22a8 <== NOT EXECUTED
1123a6: f100 0414 add.w r4, r0, #20 <== NOT EXECUTED
size_t fstab_idx = 0;
1123aa: 2600 movs r6, #0 <== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
1123ac: f2c0 0a15 movt sl, #21 <== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
1123b0: f2c0 0915 movt r9, #21 <== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
1123b4: f2c0 0815 movt r8, #21 <== NOT EXECUTED
1123b8: e00b b.n 1123d2 <rtems_fsmount+0x46> <== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNTPNT_CRTERR)) {
1123ba: f834 3c04 ldrh.w r3, [r4, #-4] <== NOT EXECUTED
1123be: 079a lsls r2, r3, #30 <== NOT EXECUTED
1123c0: d42f bmi.n 112422 <rtems_fsmount+0x96> <== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNTPNT_CRTERR)) {
1123c2: f834 3c02 ldrh.w r3, [r4, #-2] <== NOT EXECUTED
1123c6: 079b lsls r3, r3, #30 <== NOT EXECUTED
1123c8: d41d bmi.n 112406 <rtems_fsmount+0x7a> <== NOT EXECUTED
/*
* proceed to next entry
*/
if (!terminate) {
fstab_ptr++;
fstab_idx++;
1123ca: 3601 adds r6, #1 <== NOT EXECUTED
while (!terminate &&
1123cc: 3414 adds r4, #20 <== NOT EXECUTED
1123ce: 42b7 cmp r7, r6 <== NOT EXECUTED
1123d0: d05d beq.n 11248e <rtems_fsmount+0x102> <== NOT EXECUTED
tmp_rc = rtems_mkdir(fstab_ptr->target, S_IRWXU | S_IRWXG | S_IRWXO);
1123d2: f854 0c10 ldr.w r0, [r4, #-16] <== NOT EXECUTED
1123d6: f240 11ff movw r1, #511 ; 0x1ff <== NOT EXECUTED
1123da: f013 fa0f bl 1257fc <rtems_mkdir> <== NOT EXECUTED
if (tmp_rc != 0) {
1123de: 4605 mov r5, r0 <== NOT EXECUTED
1123e0: 2800 cmp r0, #0 <== NOT EXECUTED
1123e2: d1ea bne.n 1123ba <rtems_fsmount+0x2e> <== NOT EXECUTED
tmp_rc = mount(fstab_ptr->source,
1123e4: e954 2303 ldrd r2, r3, [r4, #-12] <== NOT EXECUTED
1123e8: e954 0105 ldrd r0, r1, [r4, #-20] <== NOT EXECUTED
1123ec: 9500 str r5, [sp, #0] <== NOT EXECUTED
1123ee: f7f6 fe47 bl 109080 <mount> <== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_FAILED)) {
1123f2: f834 3c04 ldrh.w r3, [r4, #-4] <== NOT EXECUTED
if (tmp_rc != 0) {
1123f6: 4605 mov r5, r0 <== NOT EXECUTED
1123f8: b160 cbz r0, 112414 <rtems_fsmount+0x88> <== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_FAILED)) {
1123fa: 075b lsls r3, r3, #29 <== NOT EXECUTED
1123fc: d424 bmi.n 112448 <rtems_fsmount+0xbc> <== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_FAILED)) {
1123fe: f834 3c02 ldrh.w r3, [r4, #-2] <== NOT EXECUTED
112402: 0758 lsls r0, r3, #29 <== NOT EXECUTED
112404: d5e1 bpl.n 1123ca <rtems_fsmount+0x3e> <== NOT EXECUTED
}
}
if (fail_idx != NULL) {
112406: 9b04 ldr r3, [sp, #16] <== NOT EXECUTED
112408: b103 cbz r3, 11240c <rtems_fsmount+0x80> <== NOT EXECUTED
*fail_idx = fstab_idx;
11240a: 601e str r6, [r3, #0] <== NOT EXECUTED
}
return rc;
}
11240c: 4628 mov r0, r5 <== NOT EXECUTED
11240e: b007 add sp, #28 <== NOT EXECUTED
112410: e8bd 8ff0 ldmia.w sp!, {r4, r5, r6, r7, r8, r9, sl, fp, pc} <== NOT EXECUTED
if (0 != (fstab_ptr->report_reasons & FSMOUNT_MNT_OK)) {
112414: 07d9 lsls r1, r3, #31 <== NOT EXECUTED
112416: d42e bmi.n 112476 <rtems_fsmount+0xea> <== NOT EXECUTED
if (0 != (fstab_ptr->abort_reasons & FSMOUNT_MNT_OK)) {
112418: f834 3c02 ldrh.w r3, [r4, #-2] <== NOT EXECUTED
11241c: 07da lsls r2, r3, #31 <== NOT EXECUTED
11241e: d4f2 bmi.n 112406 <rtems_fsmount+0x7a> <== NOT EXECUTED
112420: e7d3 b.n 1123ca <rtems_fsmount+0x3e> <== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
112422: f7f3 fa5b bl 1058dc <__getreent> <== NOT EXECUTED
112426: f854 2c10 ldr.w r2, [r4, #-16] <== NOT EXECUTED
11242a: f8d0 b008 ldr.w fp, [r0, #8] <== NOT EXECUTED
11242e: 9203 str r2, [sp, #12] <== NOT EXECUTED
strerror(errno));
112430: f02b ff90 bl 13e354 <__errno> <== NOT EXECUTED
fprintf(stdout,"fsmount: creation of mount point \"%s\" failed: %s\n",
112434: 6800 ldr r0, [r0, #0] <== NOT EXECUTED
112436: f030 ffc7 bl 1433c8 <strerror> <== NOT EXECUTED
11243a: 9a03 ldr r2, [sp, #12] <== NOT EXECUTED
11243c: 4603 mov r3, r0 <== NOT EXECUTED
11243e: 4641 mov r1, r8 <== NOT EXECUTED
112440: 4658 mov r0, fp <== NOT EXECUTED
112442: f02c fba7 bl 13eb94 <fprintf> <== NOT EXECUTED
112446: e7bc b.n 1123c2 <rtems_fsmount+0x36> <== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
112448: f7f3 fa48 bl 1058dc <__getreent> <== NOT EXECUTED
11244c: f854 2c14 ldr.w r2, [r4, #-20] <== NOT EXECUTED
112450: f854 3c10 ldr.w r3, [r4, #-16] <== NOT EXECUTED
112454: f8d0 b008 ldr.w fp, [r0, #8] <== NOT EXECUTED
112458: 9205 str r2, [sp, #20] <== NOT EXECUTED
11245a: 9303 str r3, [sp, #12] <== NOT EXECUTED
strerror(errno));
11245c: f02b ff7a bl 13e354 <__errno> <== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
112460: 6800 ldr r0, [r0, #0] <== NOT EXECUTED
112462: f030 ffb1 bl 1433c8 <strerror> <== NOT EXECUTED
112466: 9b03 ldr r3, [sp, #12] <== NOT EXECUTED
112468: 4649 mov r1, r9 <== NOT EXECUTED
11246a: 9000 str r0, [sp, #0] <== NOT EXECUTED
11246c: 4658 mov r0, fp <== NOT EXECUTED
11246e: 9a05 ldr r2, [sp, #20] <== NOT EXECUTED
112470: f02c fb90 bl 13eb94 <fprintf> <== NOT EXECUTED
112474: e7c3 b.n 1123fe <rtems_fsmount+0x72> <== NOT EXECUTED
fprintf(stdout,"fsmount: mounting of \"%s\" to"
112476: f7f3 fa31 bl 1058dc <__getreent> <== NOT EXECUTED
11247a: e954 2305 ldrd r2, r3, [r4, #-20] <== NOT EXECUTED
11247e: 4651 mov r1, sl <== NOT EXECUTED
112480: 6880 ldr r0, [r0, #8] <== NOT EXECUTED
112482: f02c fb87 bl 13eb94 <fprintf> <== NOT EXECUTED
112486: e7c7 b.n 112418 <rtems_fsmount+0x8c> <== NOT EXECUTED
size_t fstab_idx = 0;
112488: 460e mov r6, r1 <== NOT EXECUTED
int rc = 0;
11248a: 460d mov r5, r1 <== NOT EXECUTED
11248c: e7bb b.n 112406 <rtems_fsmount+0x7a> <== NOT EXECUTED
11248e: 2500 movs r5, #0 <== NOT EXECUTED
112490: e7b9 b.n 112406 <rtems_fsmount+0x7a> <== NOT EXECUTED
112492: bf00 nop