=============================================================================== 40086124 : 40086124: 40 08 60 38 @.`8 =============================================================================== 40086128 : 40086128: 40 08 60 28 00 00 00 00 72 74 65 6d 73 2d 72 66 @.`(....rtems-rf 40086138: 73 3a 20 62 6c 6f 63 6b 2d 6d 61 70 2d 67 72 6f s: block-map-gro 40086148: 77 3a 20 75 70 70 69 6e 67 3a 20 62 6c 6f 63 6b w: upping: block 40086158: 2d 63 6f 75 6e 74 3d 25 6c 64 0a 00 00 00 00 00 -count=%ld...... 40086168: 72 74 65 6d 73 2d 72 66 73 3a 20 62 6c 6f 63 6b rtems-rfs: block 40086178: 2d 66 69 6e 64 3a 20 69 6e 76 61 6c 69 64 20 62 -find: invalid b 40086188: 6c 6f 63 6b 20 69 6e 20 74 61 62 6c 65 3a 20 62 lock in table: b 40086198: 6c 6f 63 6b 3d 25 6c 64 2c 20 69 6e 64 69 72 65 lock=%ld, indire 400861a8: 63 74 3d 25 6c 64 2f 25 64 0a 00 00 00 00 00 00 ct=%ld/%d....... 400861b8: 72 74 65 6d 73 2d 72 66 73 3a 20 62 6c 6f 63 6b rtems-rfs: block 400861c8: 2d 6d 61 70 2d 67 72 6f 77 3a 20 65 6e 74 72 79 -map-grow: entry 400861d8: 3a 20 62 6c 6f 63 6b 73 3d 25 7a 64 20 63 6f 75 : blocks=%zd cou 400861e8: 6e 74 3d 25 6c 75 0a 00 72 74 65 6d 73 2d 72 66 nt=%lu..rtems-rf 400861f8: 73 3a 20 62 6c 6f 63 6b 2d 6d 61 70 2d 73 68 72 s: block-map-shr 40086208: 69 6e 6b 3a 20 65 6e 74 72 79 3a 20 62 6c 6f 63 ink: entry: bloc 40086218: 6b 73 3d 25 7a 64 20 63 6f 75 6e 74 3d 25 6c 75 ks=%zd count=%lu 40086228: 0a 00 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ........rtems-rf 40086238: 73 3a 20 62 75 66 66 65 72 2d 73 63 61 6e 3a 20 s: buffer-scan: 40086248: 63 6f 75 6e 74 3d 25 6c 75 2c 20 62 6c 6f 63 6b count=%lu, block 40086258: 3d 25 6c 75 3a 20 00 00 25 69 20 00 00 00 00 00 =%lu: ..%i ..... 40086268: 3a 20 66 6f 75 6e 64 20 62 6c 6f 63 6b 3d 25 69 : found block=%i 40086278: 0a 00 00 00 00 00 00 00 3a 20 6e 6f 74 20 66 6f ........: not fo 40086288: 75 6e 64 00 00 00 00 00 72 74 65 6d 73 2d 72 66 und.....rtems-rf 40086298: 73 3a 20 72 65 6c 65 61 73 65 2d 63 68 61 69 6e s: release-chain 400862a8: 3a 20 63 6f 75 6e 74 3d 25 6c 75 0a 00 00 00 00 : count=%lu..... 400862b8: 28 64 69 72 74 79 29 00 42 41 44 20 52 45 46 20 (dirty).BAD REF 400862c8: 43 4f 55 4e 54 00 00 00 72 74 65 6d 73 2d 72 66 COUNT...rtems-rf 400862d8: 73 3a 20 62 75 66 66 65 72 2d 72 65 6c 65 61 73 s: buffer-releas 400862e8: 65 3a 20 62 6c 6f 63 6b 3d 25 6c 75 20 25 73 20 e: block=%lu %s 400862f8: 72 65 66 73 3d 25 64 20 25 73 0a 00 00 00 00 00 refs=%d %s...... 40086308: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 40086318: 72 2d 72 65 6c 65 61 73 65 3a 20 6c 6f 63 61 6c r-release: local 40086328: 20 63 61 63 68 65 20 6f 76 65 72 66 6c 6f 77 3a cache overflow: 40086338: 20 25 6c 75 0a 00 00 00 72 65 61 64 00 00 00 00 %lu....read.... 40086348: 67 65 74 00 00 00 00 00 72 74 65 6d 73 2d 72 66 get.....rtems-rf 40086358: 73 3a 20 62 75 66 66 65 72 2d 72 65 71 75 65 73 s: buffer-reques 40086368: 74 3a 20 68 61 6e 64 6c 65 20 68 61 73 20 62 75 t: handle has bu 40086378: 66 66 65 72 3a 20 25 6c 75 0a 00 00 00 00 00 00 ffer: %lu....... 40086388: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 40086398: 72 2d 72 65 71 75 65 73 74 3a 20 62 6c 6f 63 6b r-request: block 400863a8: 3d 25 6c 75 0a 00 00 00 72 74 65 6d 73 2d 72 66 =%lu....rtems-rf 400863b8: 73 3a 20 62 75 66 66 65 72 2d 72 65 71 75 65 73 s: buffer-reques 400863c8: 74 3a 20 62 75 66 66 65 72 20 73 68 61 72 65 64 t: buffer shared 400863d8: 3a 20 72 65 66 73 3a 20 25 64 0a 00 00 00 00 00 : refs: %d...... 400863e8: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 400863f8: 72 2d 72 65 71 75 65 73 74 3a 20 62 6c 6f 63 6b r-request: block 40086408: 3d 25 6c 75 3a 20 62 64 62 75 66 2d 25 73 3a 20 =%lu: bdbuf-%s: 40086418: 25 64 3a 20 25 73 0a 00 72 74 65 6d 73 2d 72 66 %d: %s..rtems-rf 40086428: 73 3a 20 62 75 66 66 65 72 2d 72 65 71 75 65 73 s: buffer-reques 40086438: 74 3a 20 62 6c 6f 63 6b 3d 25 6c 75 20 62 64 62 t: block=%lu bdb 40086448: 75 66 2d 25 73 3d 25 6c 75 20 72 65 66 73 3d 25 uf-%s=%lu refs=% 40086458: 64 0a 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 d.......rtems-rf 40086468: 73 3a 20 62 75 66 66 65 72 2d 6f 70 65 6e 3a 20 s: buffer-open: 40086478: 6f 70 65 6e 69 6e 67 3a 20 25 73 0a 00 00 00 00 opening: %s..... 40086488: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 40086498: 72 2d 6f 70 65 6e 3a 20 63 61 6e 6e 6f 74 20 6f r-open: cannot o 400864a8: 70 65 6e 20 66 69 6c 65 00 00 00 00 00 00 00 00 pen file........ 400864b8: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 400864c8: 72 2d 6f 70 65 6e 3a 20 73 74 61 74 20 27 25 73 r-open: stat '%s 400864d8: 27 20 66 61 69 6c 65 64 3a 20 25 73 0a 00 00 00 ' failed: %s.... 400864e8: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 400864f8: 72 2d 6f 70 65 6e 3a 20 27 25 73 27 20 69 73 20 r-open: '%s' is 40086508: 6e 6f 74 20 61 20 62 6c 6f 63 6b 20 64 65 76 69 not a block devi 40086518: 63 65 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ce......rtems-rf 40086528: 73 3a 20 62 75 66 66 65 72 2d 6f 70 65 6e 3a 20 s: buffer-open: 40086538: 63 61 6e 6e 6f 74 20 6f 62 74 61 69 6e 20 74 68 cannot obtain th 40086548: 65 20 64 69 73 6b 00 00 72 74 65 6d 73 2d 72 66 e disk..rtems-rf 40086558: 73 3a 20 62 75 66 66 65 72 2d 6f 70 65 6e 3a 20 s: buffer-open: 40086568: 62 6c 6b 73 3d 25 6c 64 2c 20 62 6c 6b 2d 73 69 blks=%ld, blk-si 40086578: 7a 65 3d 25 6c 64 0a 00 72 74 65 6d 73 2d 72 66 ze=%ld..rtems-rf 40086588: 73 3a 20 62 75 66 66 65 72 2d 73 79 6e 63 3a 20 s: buffer-sync: 40086598: 73 79 6e 63 69 6e 67 00 72 74 65 6d 73 2d 72 66 syncing.rtems-rf 400865a8: 73 3a 20 62 75 66 66 65 72 2d 73 79 6e 63 3a 20 s: buffer-sync: 400865b8: 64 65 76 69 63 65 20 73 79 6e 63 20 66 61 69 6c device sync fail 400865c8: 65 64 3a 20 25 73 0a 00 72 74 65 6d 73 2d 72 66 ed: %s..rtems-rf 400865d8: 73 3a 20 62 75 66 66 65 72 73 2d 72 65 6c 65 61 s: buffers-relea 400865e8: 73 65 3a 20 61 63 74 69 76 65 3a 25 6c 75 20 72 se: active:%lu r 400865f8: 65 6c 65 61 73 65 3a 25 6c 75 20 72 65 6c 65 61 elease:%lu relea 40086608: 73 65 2d 6d 6f 64 69 66 69 65 64 3a 25 6c 75 0a se-modified:%lu. ... 40086620: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 40086630: 72 2d 73 65 74 62 6c 6b 73 69 7a 65 3a 20 62 6c r-setblksize: bl 40086640: 6f 63 6b 20 73 69 7a 65 3a 20 25 6c 75 0a 00 00 ock size: %lu... 40086650: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 40086660: 72 2d 73 65 74 62 6c 6b 73 69 7a 65 3a 20 62 75 r-setblksize: bu 40086670: 66 66 65 72 20 72 65 6c 65 61 73 65 20 66 61 69 ffer release fai 40086680: 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 led: %d: %s..... 40086690: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 400866a0: 72 2d 73 65 74 62 6c 6b 73 69 7a 65 3a 20 64 65 r-setblksize: de 400866b0: 76 69 63 65 20 73 79 6e 63 20 66 61 69 6c 65 64 vice sync failed 400866c0: 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 00 00 00 : %d: %s........ 400866d0: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 400866e0: 72 2d 63 6c 6f 73 65 3a 20 63 6c 6f 73 69 6e 67 r-close: closing ... 400866f8: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 40086708: 72 2d 63 6c 6f 73 65 3a 20 73 65 74 20 6d 65 64 r-close: set med 40086718: 69 61 20 62 6c 6f 63 6b 20 73 69 7a 65 20 66 61 ia block size fa 40086728: 69 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 iled: %d: %s.... 40086738: 72 74 65 6d 73 2d 72 66 73 3a 20 62 75 66 66 65 rtems-rfs: buffe 40086748: 72 2d 63 6c 6f 73 65 3a 20 66 69 6c 65 20 63 6c r-close: file cl 40086758: 6f 73 65 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 ose failed: %d: 40086768: 25 73 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 %s......rtems-rf 40086778: 73 3a 20 64 69 72 2d 6c 6f 6f 6b 75 70 2d 69 6e s: dir-lookup-in 40086788: 6f 3a 20 6c 6f 6f 6b 75 70 20 69 6e 6f 3a 20 72 o: lookup ino: r 40086798: 6f 6f 74 3d 25 6c 64 2c 20 70 61 74 68 3d 00 00 oot=%ld, path=.. 400867a8: 2c 20 6c 65 6e 3d 25 64 0a 00 00 00 00 00 00 00 , len=%d........ 400867b8: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 6c rtems-rfs: dir-l 400867c8: 6f 6f 6b 75 70 2d 69 6e 6f 3a 20 6d 61 70 20 6f ookup-ino: map o 400867d8: 70 65 6e 20 66 61 69 6c 65 64 20 66 6f 72 20 69 pen failed for i 400867e8: 6e 6f 20 25 6c 75 3a 20 25 64 3a 20 25 73 00 00 no %lu: %d: %s.. 400867f8: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 6c rtems-rfs: dir-l 40086808: 6f 6f 6b 75 70 2d 69 6e 6f 3a 20 62 6c 6f 63 6b ookup-ino: block 40086818: 20 6d 61 70 20 66 69 6e 64 20 66 61 69 6c 65 64 map find failed 40086828: 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 00 00 00 : %d: %s........ 40086838: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 6c rtems-rfs: dir-l 40086848: 6f 6f 6b 75 70 2d 69 6e 6f 3a 20 62 6c 6f 63 6b ookup-ino: block 40086858: 20 72 65 61 64 2c 20 69 6e 6f 3d 25 6c 75 20 62 read, ino=%lu b 40086868: 6e 6f 3d 25 6c 64 0a 00 72 74 65 6d 73 2d 72 66 no=%ld..rtems-rf 40086878: 73 3a 20 64 69 72 2d 6c 6f 6f 6b 75 70 2d 69 6e s: dir-lookup-in 40086888: 6f 3a 20 62 6c 6f 63 6b 20 72 65 61 64 2c 20 69 o: block read, i 40086898: 6e 6f 3d 25 6c 75 20 62 6c 6f 63 6b 3d 25 6c 64 no=%lu block=%ld 400868a8: 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 00 00 00 : %d: %s........ 400868b8: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 6c rtems-rfs: dir-l 400868c8: 6f 6f 6b 75 70 2d 69 6e 6f 3a 20 62 61 64 20 6c ookup-ino: bad l 400868d8: 65 6e 67 74 68 20 6f 72 20 69 6e 6f 20 66 6f 72 ength or ino for 400868e8: 20 69 6e 6f 20 25 6c 75 3a 20 25 75 2f 25 6c 64 ino %lu: %u/%ld 400868f8: 20 40 20 25 30 34 6c 78 0a 00 00 00 00 00 00 00 @ %04lx........ 40086908: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 6c rtems-rfs: dir-l 40086918: 6f 6f 6b 75 70 2d 69 6e 6f 3a 20 63 68 65 63 6b ookup-ino: check 40086928: 69 6e 67 20 65 6e 74 72 79 20 66 6f 72 20 69 6e ing entry for in 40086938: 6f 20 25 6c 64 3a 20 62 6e 6f 3d 25 30 34 6c 78 o %ld: bno=%04lx 40086948: 2f 6f 66 66 3d 25 30 34 6c 78 20 6c 65 6e 67 74 /off=%04lx lengt 40086958: 68 3a 25 64 20 69 6e 6f 3a 25 6c 64 0a 00 00 00 h:%d ino:%ld.... 40086968: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 6c rtems-rfs: dir-l 40086978: 6f 6f 6b 75 70 2d 69 6e 6f 3a 20 65 6e 74 72 79 ookup-ino: entry 40086988: 20 66 6f 75 6e 64 20 69 6e 20 69 6e 6f 20 25 6c found in ino %l 40086998: 75 2c 20 69 6e 6f 3d 25 6c 75 20 6f 66 66 73 65 u, ino=%lu offse 400869a8: 74 3d 25 6c 75 0a 00 00 72 74 65 6d 73 2d 72 66 t=%lu...rtems-rf 400869b8: 73 3a 20 64 69 72 2d 6c 6f 6f 6b 75 70 2d 69 6e s: dir-lookup-in 400869c8: 6f 3a 20 62 6c 6f 63 6b 20 6d 61 70 20 6e 65 78 o: block map nex 400869d8: 74 20 62 6c 6f 63 6b 20 66 61 69 6c 65 64 20 69 t block failed i 400869e8: 6e 20 69 6e 6f 20 25 6c 75 3a 20 25 64 3a 20 25 n ino %lu: %d: % 400869f8: 73 0a 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 s.......rtems-rf 40086a08: 73 3a 20 64 69 72 2d 6c 6f 6f 6b 75 70 2d 69 6e s: dir-lookup-in 40086a18: 6f 3a 20 62 6c 6f 63 6b 20 69 73 20 30 20 69 6e o: block is 0 in 40086a28: 20 69 6e 6f 20 25 6c 75 3a 20 25 64 3a 20 25 73 ino %lu: %d: %s 40086a38: 0a 00 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ........rtems-rf 40086a48: 73 3a 20 64 69 72 2d 61 64 64 2d 65 6e 74 72 79 s: dir-add-entry 40086a58: 3a 20 64 69 72 3d 25 6c 64 2c 20 6e 61 6d 65 3d : dir=%ld, name= ... 40086a70: 2c 20 6c 65 6e 3d 25 7a 64 0a 00 00 00 00 00 00 , len=%zd....... 40086a80: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 61 rtems-rfs: dir-a 40086a90: 64 64 2d 65 6e 74 72 79 3a 20 62 6c 6f 63 6b 20 dd-entry: block 40086aa0: 6d 61 70 20 66 69 6e 64 20 66 61 69 6c 65 64 20 map find failed 40086ab0: 66 6f 72 20 69 6e 6f 20 25 6c 75 3a 20 25 64 3a for ino %lu: %d: 40086ac0: 20 25 73 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %s.....rtems-rf 40086ad0: 73 3a 20 64 69 72 2d 61 64 64 2d 65 6e 74 72 79 s: dir-add-entry 40086ae0: 3a 20 62 6c 6f 63 6b 20 6d 61 70 20 67 72 6f 77 : block map grow 40086af0: 20 66 61 69 6c 65 64 20 66 6f 72 20 69 6e 6f 20 failed for ino 40086b00: 25 6c 75 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 %lu: %d: %s..... 40086b10: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 61 rtems-rfs: dir-a 40086b20: 64 64 2d 65 6e 74 72 79 3a 20 62 6c 6f 63 6b 20 dd-entry: block 40086b30: 62 75 66 66 65 72 20 72 65 71 20 66 61 69 6c 65 buffer req faile 40086b40: 64 20 66 6f 72 20 69 6e 6f 20 25 6c 75 3a 20 25 d for ino %lu: % 40086b50: 64 3a 20 25 73 0a 00 00 72 74 65 6d 73 2d 72 66 d: %s...rtems-rf 40086b60: 73 3a 20 64 69 72 2d 61 64 64 2d 65 6e 74 72 79 s: dir-add-entry 40086b70: 3a 20 62 61 64 20 6c 65 6e 67 74 68 20 6f 72 20 : bad length or 40086b80: 69 6e 6f 20 66 6f 72 20 69 6e 6f 20 25 6c 75 3a ino for ino %lu: 40086b90: 20 25 75 2f 25 6c 64 20 40 20 25 30 34 78 0a 00 %u/%ld @ %04x.. 40086ba0: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 64 rtems-rfs: dir-d 40086bb0: 65 6c 2d 65 6e 74 72 79 3a 20 64 69 72 3d 25 6c el-entry: dir=%l 40086bc0: 64 2c 20 65 6e 74 72 79 3d 25 6c 64 20 6f 66 66 d, entry=%ld off 40086bd0: 73 65 74 3d 25 6c 75 0a 00 00 00 00 00 00 00 00 set=%lu......... 40086be0: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 64 rtems-rfs: dir-d 40086bf0: 65 6c 2d 65 6e 74 72 79 3a 20 62 6c 6f 63 6b 20 el-entry: block 40086c00: 62 75 66 66 65 72 20 72 65 71 20 66 61 69 6c 65 buffer req faile 40086c10: 64 20 66 6f 72 20 69 6e 6f 20 25 6c 75 3a 20 25 d for ino %lu: % 40086c20: 64 3a 20 25 73 0a 00 00 72 74 65 6d 73 2d 72 66 d: %s...rtems-rf 40086c30: 73 3a 20 64 69 72 2d 64 65 6c 2d 65 6e 74 72 79 s: dir-del-entry 40086c40: 3a 20 62 61 64 20 6c 65 6e 67 74 68 20 6f 72 20 : bad length or 40086c50: 69 6e 6f 20 66 6f 72 20 69 6e 6f 20 25 6c 75 3a ino for ino %lu: 40086c60: 20 25 75 2f 25 6c 64 20 40 20 25 6c 75 2e 25 30 %u/%ld @ %lu.%0 40086c70: 34 78 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 4x......rtems-rf 40086c80: 73 3a 20 64 69 72 2d 64 65 6c 2d 65 6e 74 72 79 s: dir-del-entry 40086c90: 3a 20 6c 61 73 74 20 62 6c 6f 63 6b 20 66 72 65 : last block fre 40086ca0: 65 20 66 6f 72 20 69 6e 6f 20 25 6c 75 3a 20 65 e for ino %lu: e 40086cb0: 6c 65 6e 67 74 68 3d 25 69 20 62 6c 6f 63 6b 3d length=%i block= 40086cc0: 25 6c 75 20 6f 66 66 73 65 74 3d 25 64 20 6c 61 %lu offset=%d la 40086cd0: 73 74 3d 25 73 0a 00 00 72 74 65 6d 73 2d 72 66 st=%s...rtems-rf 40086ce0: 73 3a 20 64 69 72 2d 64 65 6c 2d 65 6e 74 72 79 s: dir-del-entry 40086cf0: 3a 20 62 6c 6f 63 6b 20 6d 61 70 20 73 68 72 69 : block map shri 40086d00: 6e 6b 20 66 61 69 6c 65 64 20 66 6f 72 20 69 6e nk failed for in 40086d10: 6f 20 25 6c 75 3a 20 25 64 3a 20 25 73 0a 00 00 o %lu: %d: %s... 40086d20: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 72 rtems-rfs: dir-r 40086d30: 65 61 64 3a 20 64 69 72 3d 25 6c 64 20 6f 66 66 ead: dir=%ld off 40086d40: 73 65 74 3d 25 6c 6c 64 0a 00 00 00 00 00 00 00 set=%lld........ 40086d50: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 72 rtems-rfs: dir-r 40086d60: 65 61 64 3a 20 62 61 64 20 6c 65 6e 67 74 68 20 ead: bad length 40086d70: 6f 72 20 69 6e 6f 20 66 6f 72 20 69 6e 6f 20 25 or ino for ino % 40086d80: 6c 75 3a 20 25 75 2f 25 6c 64 20 40 20 25 30 34 lu: %u/%ld @ %04 40086d90: 6c 78 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 lx......rtems-rf 40086da0: 73 3a 20 64 69 72 2d 72 65 61 64 3a 20 66 6f 75 s: dir-read: fou 40086db0: 6e 64 20 6f 66 66 3a 25 6c 6c 6f 20 69 6e 6f 3a nd off:%llo ino: 40086dc0: 25 6c 64 20 6e 61 6d 65 3d 25 73 0a 00 00 00 00 %ld name=%s..... 40086dd0: 72 74 65 6d 73 2d 72 66 73 3a 20 64 69 72 2d 72 rtems-rfs: dir-r 40086de0: 65 61 64 3a 20 6e 65 78 74 20 62 6c 6f 63 6b 3a ead: next block: 40086df0: 20 6f 66 66 3a 25 6c 6c 64 20 6c 65 6e 67 74 68 off:%lld length 40086e00: 3a 25 7a 64 0a 00 00 00 72 74 65 6d 73 2d 72 66 :%zd....rtems-rf 40086e10: 73 3a 20 64 69 72 2d 65 6d 70 74 79 3a 20 64 69 s: dir-empty: di 40086e20: 72 3d 25 6c 64 0a 00 00 72 74 65 6d 73 2d 72 66 r=%ld...rtems-rf 40086e30: 73 3a 20 64 69 72 2d 65 6d 70 74 79 3a 20 62 61 s: dir-empty: ba 40086e40: 64 20 6c 65 6e 67 74 68 20 6f 72 20 69 6e 6f 20 d length or ino 40086e50: 66 6f 72 20 69 6e 6f 20 25 6c 75 3a 20 25 75 2f for ino %lu: %u/ 40086e60: 25 6c 75 20 40 20 25 30 34 78 0a 00 00 00 00 00 %lu @ %04x...... 40086e70: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 40086e80: 6f 70 65 6e 3a 20 69 6e 6f 3d 25 6c 64 0a 00 00 open: ino=%ld... 40086e90: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 40086ea0: 6f 70 65 6e 3a 20 69 6e 6f 3d 25 6c 64 20 73 68 open: ino=%ld sh 40086eb0: 61 72 65 64 0a 00 00 00 72 74 65 6d 73 2d 72 66 ared....rtems-rf 40086ec0: 73 3a 20 66 69 6c 65 2d 6f 70 65 6e 3a 20 69 6e s: file-open: in 40086ed0: 6f 64 65 20 6f 70 65 6e 20 66 61 69 6c 65 64 3a ode open failed: 40086ee0: 20 25 64 3a 20 25 73 0a 00 00 00 00 00 00 00 00 %d: %s......... 40086ef0: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 40086f00: 6f 70 65 6e 3a 20 62 6c 6f 63 6b 20 6d 61 70 20 open: block map 40086f10: 6f 70 65 6e 20 66 61 69 6c 65 64 3a 20 25 64 3a open failed: %d: 40086f20: 20 25 73 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %s.....rtems-rf 40086f30: 73 3a 20 66 69 6c 65 2d 6f 70 65 6e 3a 20 69 6e s: file-open: in 40086f40: 6f 3d 25 6c 64 20 73 68 61 72 65 20 63 72 65 61 o=%ld share crea 40086f50: 74 65 64 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 ted.....rtems-rf 40086f60: 73 3a 20 66 69 6c 65 2d 63 6c 6f 73 65 3a 20 65 s: file-close: e 40086f70: 6e 74 72 79 3a 20 69 6e 6f 3d 25 6c 64 0a 00 00 ntry: ino=%ld... 40086f80: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 40086f90: 63 6c 6f 73 65 3a 20 6d 61 70 20 63 6c 6f 73 65 close: map close 40086fa0: 20 65 72 72 6f 72 3a 20 69 6e 6f 3d 25 6c 64 3a error: ino=%ld: 40086fb0: 20 25 64 3a 20 25 73 0a 00 00 00 00 00 00 00 00 %d: %s......... 40086fc0: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 40086fd0: 63 6c 6f 73 65 3a 20 69 6e 6f 64 65 20 63 6c 6f close: inode clo 40086fe0: 73 65 20 65 72 72 6f 72 3a 20 69 6e 6f 3d 25 6c se error: ino=%l 40086ff0: 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 00 00 d: %d: %s....... 40087000: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 40087010: 63 6c 6f 73 65 3a 20 72 65 73 75 6c 74 3a 20 25 close: result: % 40087020: 64 3a 20 25 73 0a 00 00 72 74 65 6d 73 2d 72 66 d: %s...rtems-rf 40087030: 73 3a 20 66 69 6c 65 2d 69 6f 3a 20 73 74 61 72 s: file-io: star 40087040: 74 3a 20 25 73 20 70 6f 73 3d 25 6c 75 3a 25 6c t: %s pos=%lu:%l 40087050: 75 0a 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 u.......rtems-rf 40087060: 73 3a 20 66 69 6c 65 2d 69 6f 3a 20 73 74 61 72 s: file-io: star 40087070: 74 3a 20 67 72 6f 77 00 72 74 65 6d 73 2d 72 66 t: grow.rtems-rf 40087080: 73 3a 20 66 69 6c 65 2d 69 6f 3a 20 73 74 61 72 s: file-io: star 40087090: 74 3a 20 62 6c 6f 63 6b 3d 25 6c 75 20 72 65 71 t: block=%lu req 400870a0: 75 65 73 74 2d 72 65 61 64 3d 25 73 0a 00 00 00 uest-read=%s.... 400870b0: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 400870c0: 69 6f 3a 20 73 74 61 72 74 3a 20 61 76 61 69 6c io: start: avail 400870d0: 61 62 6c 65 3d 25 7a 75 20 28 25 7a 75 29 0a 00 able=%zu (%zu).. 400870e0: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 400870f0: 69 6f 3a 20 20 20 65 6e 64 3a 20 25 73 20 73 69 io: end: %s si 40087100: 7a 65 3d 25 7a 75 0a 00 72 74 65 6d 73 2d 72 66 ze=%zu..rtems-rf 40087110: 73 3a 20 66 69 6c 65 2d 69 6f 3a 20 20 20 65 6e s: file-io: en 40087120: 64 3a 20 65 72 72 6f 72 20 6f 6e 20 72 65 6c 65 d: error on rele 40087130: 61 73 65 3a 20 25 73 20 73 69 7a 65 3d 25 7a 75 ase: %s size=%zu 40087140: 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 00 00 00 : %d: %s........ 40087150: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 40087160: 69 6f 3a 20 20 20 65 6e 64 3a 20 70 6f 73 3d 25 io: end: pos=% 40087170: 6c 75 3a 25 6c 75 20 25 63 20 25 63 20 25 63 0a lu:%lu %c %c %c. ... 40087188: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 40087198: 73 65 65 6b 3a 20 6e 65 77 3d 25 6c 6c 75 0a 00 seek: new=%llu.. 400871a8: 72 74 65 6d 73 2d 72 66 73 3a 20 66 69 6c 65 2d rtems-rfs: file- 400871b8: 73 65 74 2d 73 69 7a 65 3a 20 73 69 7a 65 3d 25 set-size: size=% 400871c8: 6c 6c 75 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 llu.....rtems-rf 400871d8: 73 3a 20 6f 70 65 6e 3a 20 25 73 0a 00 00 00 00 s: open: %s..... 400871e8: 72 74 65 6d 73 2d 72 66 73 3a 20 6f 70 65 6e 3a rtems-rfs: open: 400871f8: 20 6e 6f 20 6d 65 6d 6f 72 79 20 66 6f 72 20 66 no memory for f 40087208: 69 6c 65 20 73 79 73 74 65 6d 20 64 61 74 61 00 ile system data. 40087218: 72 74 65 6d 73 2d 72 66 73 3a 20 6f 70 65 6e 3a rtems-rfs: open: 40087228: 20 62 75 66 66 65 72 20 6f 70 65 6e 20 66 61 69 buffer open fai 40087238: 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 led: %d: %s..... 40087248: 72 74 65 6d 73 2d 72 66 73 3a 20 72 65 61 64 2d rtems-rfs: read- 40087258: 73 75 70 65 72 62 6c 6f 63 6b 3a 20 72 65 71 75 superblock: requ 40087268: 65 73 74 20 66 61 69 6c 65 64 25 64 3a 20 25 73 est failed%d: %s 40087278: 0a 00 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ........rtems-rf 40087288: 73 3a 20 72 65 61 64 2d 73 75 70 65 72 62 6c 6f s: read-superblo 40087298: 63 6b 3a 20 69 6e 76 61 6c 69 64 20 73 75 70 65 ck: invalid supe 400872a8: 72 62 6c 6f 63 6b 2c 20 62 61 64 20 6d 61 67 69 rblock, bad magi 400872b8: 63 00 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 c.......rtems-rf 400872c8: 73 3a 20 72 65 61 64 2d 73 75 70 65 72 62 6c 6f s: read-superblo 400872d8: 63 6b 3a 20 69 6e 76 61 6c 69 64 20 73 75 70 65 ck: invalid supe 400872e8: 72 62 6c 6f 63 6b 20 62 6c 6f 63 6b 2f 73 69 7a rblock block/siz 400872f8: 65 20 63 6f 75 6e 74 00 72 74 65 6d 73 2d 72 66 e count.rtems-rf 40087308: 73 3a 20 72 65 61 64 2d 73 75 70 65 72 62 6c 6f s: read-superblo 40087318: 63 6b 3a 20 69 6e 6f 64 65 20 73 69 7a 65 20 6d ck: inode size m 40087328: 69 73 6d 61 74 63 68 3a 20 66 73 3a 25 6c 64 20 ismatch: fs:%ld 40087338: 74 61 72 67 65 74 3a 25 6c 64 0a 00 00 00 00 00 target:%ld...... 40087348: 72 74 65 6d 73 2d 72 66 73 3a 20 72 65 61 64 2d rtems-rfs: read- 40087358: 73 75 70 65 72 62 6c 6f 63 6b 3a 20 67 72 6f 75 superblock: grou 40087368: 70 73 20 62 6c 6f 63 6b 73 20 6c 61 72 67 65 72 ps blocks larger 40087378: 20 74 68 61 6e 20 62 6c 6f 63 6b 20 62 69 74 73 than block bits ... 40087390: 72 74 65 6d 73 2d 72 66 73 3a 20 72 65 61 64 2d rtems-rfs: read- 400873a0: 73 75 70 65 72 62 6c 6f 63 6b 3a 20 69 6e 76 61 superblock: inva 400873b0: 6c 69 64 20 73 75 70 65 72 62 6c 6f 63 6b 20 62 lid superblock b 400873c0: 6c 6f 63 6b 20 73 69 7a 65 25 64 3a 20 25 73 0a lock size%d: %s. ... 400873d8: 72 74 65 6d 73 2d 72 66 73 3a 20 72 65 61 64 2d rtems-rfs: read- 400873e8: 73 75 70 65 72 62 6c 6f 63 6b 3a 20 6e 6f 20 6d superblock: no m 400873f8: 65 6d 6f 72 79 20 66 6f 72 20 67 72 6f 75 70 20 emory for group 40087408: 74 61 62 6c 65 00 00 00 72 74 65 6d 73 2d 72 66 table...rtems-rf 40087418: 73 3a 20 72 65 61 64 2d 73 75 70 65 72 62 6c 6f s: read-superblo 40087428: 63 6b 3a 20 6e 6f 20 6d 65 6d 6f 72 79 20 66 6f ck: no memory fo 40087438: 72 20 67 72 6f 75 70 20 74 61 62 6c 65 25 64 3a r group table%d: 40087448: 20 25 73 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %s.....rtems-rf 40087458: 73 3a 20 6f 70 65 6e 3a 20 72 65 61 64 69 6e 67 s: open: reading 40087468: 20 73 75 70 65 72 62 6c 6f 63 6b 3a 20 25 64 3a superblock: %d: 40087478: 20 25 73 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %s.....rtems-rf 40087488: 73 3a 20 6f 70 65 6e 3a 20 72 65 61 64 69 6e 67 s: open: reading 40087498: 20 72 6f 6f 74 20 69 6e 6f 64 65 3a 20 25 64 3a root inode: %d: 400874a8: 20 25 73 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %s.....rtems-rf 400874b8: 73 3a 20 6f 70 65 6e 3a 20 69 6e 76 61 6c 69 64 s: open: invalid 400874c8: 20 72 6f 6f 74 20 69 6e 6f 64 65 20 6d 6f 64 65 root inode mode ... 400874e0: 72 74 65 6d 73 2d 72 66 73 3a 20 6f 70 65 6e 3a rtems-rfs: open: 400874f0: 20 63 6c 6f 73 69 6e 67 20 72 6f 6f 74 20 69 6e closing root in 40087500: 6f 64 65 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 ode: %d: %s..... 40087510: 72 74 65 6d 73 2d 72 66 73 3a 20 63 6c 6f 73 65 rtems-rfs: close ... 40087528: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087538: 74 3a 20 25 73 0a 00 00 72 74 65 6d 73 2d 72 66 t: %s...rtems-rf 40087548: 73 3a 20 66 6f 72 6d 61 74 3a 20 62 75 66 66 65 s: format: buffe 40087558: 72 20 6f 70 65 6e 20 66 61 69 6c 65 64 3a 20 25 r open failed: % 40087568: 64 3a 20 25 73 0a 00 00 72 74 65 6d 73 2d 72 66 d: %s...rtems-rf 40087578: 73 3a 20 6d 65 64 69 61 20 62 6c 6f 63 6b 20 69 s: media block i 40087588: 73 20 69 6e 76 61 6c 69 64 3a 20 25 6c 75 0a 00 s invalid: %lu.. 40087598: 62 6c 6f 63 6b 20 73 69 7a 65 20 28 25 7a 64 29 block size (%zd) 400875a8: 20 69 73 20 6e 6f 74 20 61 20 6d 75 6c 74 69 70 is not a multip 400875b8: 6c 65 20 6f 66 20 6d 65 64 69 61 20 62 6c 6f 63 le of media bloc 400875c8: 6b 20 73 69 7a 65 20 28 25 6c 64 29 0a 00 00 00 k size (%ld).... 400875d8: 67 72 6f 75 70 20 62 6c 6f 63 6b 20 63 6f 75 6e group block coun 400875e8: 74 20 69 73 20 68 69 67 68 65 72 20 74 68 61 6e t is higher than 400875f8: 20 62 69 74 73 20 69 6e 20 62 6c 6f 63 6b 00 00 bits in block.. 40087608: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087618: 74 3a 20 6d 65 64 69 61 20 73 69 7a 65 20 3d 20 t: media size = 40087628: 25 6c 6c 75 0a 00 00 00 72 74 65 6d 73 2d 72 66 %llu....rtems-rf 40087638: 73 3a 20 66 6f 72 6d 61 74 3a 20 6d 65 64 69 61 s: format: media 40087648: 20 62 6c 6f 63 6b 73 20 3d 20 25 6c 75 0a 00 00 blocks = %lu... 40087658: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087668: 74 3a 20 6d 65 64 69 61 20 62 6c 6f 63 6b 20 73 t: media block s 40087678: 69 7a 65 20 3d 20 25 6c 75 0a 00 00 00 00 00 00 ize = %lu....... 40087688: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087698: 74 3a 20 73 69 7a 65 20 3d 20 25 6c 6c 75 0a 00 t: size = %llu.. 400876a8: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 400876b8: 74 3a 20 62 6c 6f 63 6b 73 20 3d 20 25 7a 75 0a t: blocks = %zu. ... 400876d0: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 400876e0: 74 3a 20 62 6c 6f 63 6b 20 73 69 7a 65 20 3d 20 t: block size = 400876f0: 25 7a 75 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %zu.....rtems-rf 40087700: 73 3a 20 66 6f 72 6d 61 74 3a 20 62 69 74 73 20 s: format: bits 40087710: 70 65 72 20 62 6c 6f 63 6b 20 3d 20 25 75 0a 00 per block = %u.. 40087720: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087730: 74 3a 20 69 6e 6f 64 65 20 73 69 7a 65 20 3d 20 t: inode size = 40087740: 25 7a 75 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %zu.....rtems-rf 40087750: 73 3a 20 66 6f 72 6d 61 74 3a 20 69 6e 6f 64 65 s: format: inode 40087760: 73 20 3d 20 25 7a 75 20 28 25 64 2e 25 64 25 25 s = %zu (%d.%d%% 40087770: 29 0a 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ).......rtems-rf 40087780: 73 3a 20 66 6f 72 6d 61 74 3a 20 67 72 6f 75 70 s: format: group 40087790: 73 20 3d 20 25 75 0a 00 72 74 65 6d 73 2d 72 66 s = %u..rtems-rf 400877a0: 73 3a 20 66 6f 72 6d 61 74 3a 20 67 72 6f 75 70 s: format: group 400877b0: 20 62 6c 6f 63 6b 73 20 3d 20 25 7a 75 0a 00 00 blocks = %zu... 400877c0: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 400877d0: 74 3a 20 67 72 6f 75 70 20 69 6e 6f 64 65 73 20 t: group inodes 400877e0: 3d 20 25 7a 75 0a 00 00 72 74 65 6d 73 2d 72 66 = %zu...rtems-rf 400877f0: 73 3a 20 66 6f 72 6d 61 74 3a 20 73 65 74 74 69 s: format: setti 40087800: 6e 67 20 62 6c 6f 63 6b 20 73 69 7a 65 20 66 61 ng block size fa 40087810: 69 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 iled: %d: %s.... 40087820: 72 74 65 6d 73 2d 72 66 73 3a 20 77 72 69 74 65 rtems-rfs: write 40087830: 2d 73 75 70 65 72 62 6c 6f 63 6b 3a 20 72 65 71 -superblock: req 40087840: 75 65 73 74 20 66 61 69 6c 65 64 3a 20 25 64 3a uest failed: %d: 40087850: 20 25 73 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %s.....rtems-rf 40087860: 73 3a 20 77 72 69 74 65 2d 73 75 70 65 72 62 6c s: write-superbl 40087870: 6f 63 6b 3a 20 62 75 66 66 65 72 20 72 65 6c 65 ock: buffer rele 40087880: 61 73 65 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 ase failed: %d: 40087890: 25 73 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 %s......rtems-rf 400878a0: 73 3a 20 66 6f 72 6d 61 74 3a 20 73 75 70 65 72 s: format: super 400878b0: 62 6c 6f 63 6b 20 77 72 69 74 65 20 66 61 69 6c block write fail 400878c0: 65 64 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ed......rtems-rf 400878d0: 73 3a 20 77 72 69 74 65 2d 67 72 6f 75 70 3a 20 s: write-group: 400878e0: 67 72 6f 75 70 20 25 64 20 62 61 73 65 20 62 65 group %d base be 400878f0: 79 6f 6e 64 20 64 69 73 6b 20 6c 69 6d 69 74 0a yond disk limit. ... 40087908: 0d 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d .rtems-rfs: form 40087918: 61 74 3a 20 67 72 6f 75 70 20 25 33 64 3a 20 62 at: group %3d: b 40087928: 61 73 65 20 3d 20 25 6c 64 2c 20 73 69 7a 65 20 ase = %ld, size 40087938: 3d 20 25 7a 64 00 00 00 2c 20 62 6c 6f 63 6b 73 = %zd..., blocks ... 40087950: 0a 72 74 65 6d 73 2d 72 66 73 3a 20 77 72 69 74 .rtems-rfs: writ 40087960: 65 2d 67 72 6f 75 70 3a 20 67 72 6f 75 70 20 25 e-group: group % 40087970: 33 64 3a 20 6f 70 65 6e 20 62 6c 6f 63 6b 20 62 3d: open block b 40087980: 69 74 6d 61 70 20 66 61 69 6c 65 64 3a 20 25 64 itmap failed: %d 40087990: 3a 20 25 73 0a 00 00 00 0a 72 74 65 6d 73 2d 72 : %s.....rtems-r 400879a0: 66 73 3a 20 77 72 69 74 65 2d 67 72 6f 75 70 3a fs: write-group: 400879b0: 20 67 72 6f 75 70 20 25 33 64 3a 20 62 6c 6f 63 group %3d: bloc 400879c0: 6b 20 62 69 74 6d 61 70 20 63 6c 65 61 72 20 61 k bitmap clear a 400879d0: 6c 6c 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 25 ll failed: %d: % 400879e0: 73 0a 00 00 00 00 00 00 0a 72 74 65 6d 73 2d 72 s........rtems-r 400879f0: 66 73 3a 20 77 72 69 74 65 2d 67 72 6f 75 70 3a fs: write-group: 40087a00: 20 67 72 6f 75 70 20 25 33 64 3a 20 63 6c 6f 73 group %3d: clos 40087a10: 65 20 62 6c 6f 63 6b 20 62 69 74 6d 61 70 20 66 e block bitmap f 40087a20: 61 69 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 ailed: %d: %s... 40087a30: 2c 20 69 6e 6f 64 65 73 00 00 00 00 00 00 00 00 , inodes........ 40087a40: 0a 72 74 65 6d 73 2d 72 66 73 3a 20 77 72 69 74 .rtems-rfs: writ 40087a50: 65 2d 67 72 6f 75 70 3a 20 67 72 6f 75 70 20 25 e-group: group % 40087a60: 33 64 3a 20 6f 70 65 6e 20 69 6e 6f 64 65 20 62 3d: open inode b 40087a70: 69 74 6d 61 70 20 66 61 69 6c 65 64 3a 20 25 64 itmap failed: %d 40087a80: 3a 20 25 73 0a 00 00 00 0a 72 74 65 6d 73 2d 72 : %s.....rtems-r 40087a90: 66 73 3a 20 77 72 69 74 65 2d 67 72 6f 75 70 3a fs: write-group: 40087aa0: 20 67 72 6f 75 70 20 25 33 64 3a 20 69 6e 6f 64 group %3d: inod 40087ab0: 65 20 62 69 74 6d 61 70 20 63 6c 65 61 72 20 61 e bitmap clear a 40087ac0: 6c 6c 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 25 ll failed: %d: % 40087ad0: 73 0a 00 00 00 00 00 00 0a 72 74 65 6d 73 2d 72 s........rtems-r 40087ae0: 66 73 3a 20 77 72 69 74 65 2d 67 72 6f 75 70 3a fs: write-group: 40087af0: 20 67 72 6f 75 70 20 25 33 64 3a 20 63 6c 6f 73 group %3d: clos 40087b00: 65 20 69 6e 6f 64 65 20 62 69 74 6d 61 70 20 66 e inode bitmap f 40087b10: 61 69 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 ailed: %d: %s... 40087b20: 0a 72 74 65 6d 73 2d 72 66 73 3a 20 77 72 69 74 .rtems-rfs: writ 40087b30: 65 2d 67 72 6f 75 70 3a 20 67 72 6f 75 70 20 25 e-group: group % 40087b40: 33 64 3a 20 62 6c 6f 63 6b 20 25 6c 64 20 72 65 3d: block %ld re 40087b50: 71 75 65 73 74 20 66 61 69 6c 65 64 3a 20 25 64 quest failed: %d 40087b60: 3a 20 25 73 0a 00 00 00 72 74 65 6d 73 2d 72 66 : %s....rtems-rf 40087b70: 73 3a 20 66 6f 72 6d 61 74 3a 20 62 75 66 66 65 s: format: buffe 40087b80: 72 20 63 6c 6f 73 65 20 66 61 69 6c 65 64 3a 20 r close failed: 40087b90: 25 64 3a 20 25 73 0a 00 72 74 65 6d 73 2d 72 66 %d: %s..rtems-rf 40087ba0: 73 3a 20 66 6f 72 6d 61 74 3a 20 66 69 6c 65 20 s: format: file 40087bb0: 73 79 73 74 65 6d 20 6f 70 65 6e 20 66 61 69 6c system open fail 40087bc0: 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 00 ed: %d: %s...... 40087bd0: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087be0: 74 3a 20 69 6e 6f 64 65 20 61 6c 6c 6f 63 61 74 t: inode allocat 40087bf0: 69 6f 6e 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 ion failed: %d: 40087c00: 25 73 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 %s......rtems-rf 40087c10: 73 3a 20 66 6f 72 6d 61 74 3a 20 61 6c 6c 6f 63 s: format: alloc 40087c20: 61 74 65 64 20 69 6e 6f 64 65 20 6e 6f 74 20 72 ated inode not r 40087c30: 6f 6f 74 20 69 6e 6f 3a 20 25 6c 64 0a 00 00 00 oot ino: %ld.... 40087c40: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087c50: 74 3a 20 69 6e 6f 64 65 20 6f 70 65 6e 20 66 61 t: inode open fa 40087c60: 69 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 iled: %d: %s.... 40087c70: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087c80: 74 3a 20 69 6e 6f 64 65 20 69 6e 69 74 69 61 6c t: inode initial 40087c90: 69 73 65 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 ise failed: %d: 40087ca0: 25 73 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 %s......rtems-rf 40087cb0: 73 3a 20 66 6f 72 6d 61 74 3a 20 64 69 72 65 63 s: format: direc 40087cc0: 74 6f 72 79 20 61 64 64 20 66 61 69 6c 65 64 3a tory add failed: 40087cd0: 20 25 64 3a 20 25 73 0a 00 00 00 00 00 00 00 00 %d: %s......... 40087ce0: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087cf0: 74 3a 20 69 6e 6f 64 65 20 63 6c 6f 73 65 20 66 t: inode close f 40087d00: 61 69 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 ailed: %d: %s... 40087d10: 72 74 65 6d 73 2d 72 66 73 3a 20 66 6f 72 6d 61 rtems-rfs: forma 40087d20: 74 3a 20 66 69 6c 65 20 73 79 73 74 65 6d 20 63 t: file system c 40087d30: 6c 6f 73 65 20 66 61 69 6c 65 64 3a 20 25 64 3a lose failed: %d: 40087d40: 20 25 73 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 %s.....rtems-rf 40087d50: 73 3a 20 66 6f 72 6d 61 74 3a 20 77 72 69 74 69 s: format: writi 40087d60: 6e 67 20 72 6f 6f 74 20 64 69 72 20 66 61 69 6c ng root dir fail 40087d70: 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 00 ed: %d: %s...... 40087d80: 72 74 65 6d 73 2d 72 66 73 3a 20 67 72 6f 75 70 rtems-rfs: group 40087d90: 2d 6f 70 65 6e 3a 20 62 61 73 65 20 6f 75 74 73 -open: base outs 40087da0: 69 64 65 20 66 69 6c 65 20 73 79 73 74 65 6d 20 ide file system 40087db0: 72 61 6e 67 65 3a 20 25 64 3a 20 25 73 0a 00 00 range: %d: %s... 40087dc0: 72 74 65 6d 73 2d 72 66 73 3a 20 67 72 6f 75 70 rtems-rfs: group 40087dd0: 2d 6f 70 65 6e 3a 20 62 61 73 65 3d 25 6c 64 2c -open: base=%ld, 40087de0: 20 62 6c 6f 63 6b 73 3d 25 7a 64 20 69 6e 6f 64 blocks=%zd inod 40087df0: 65 73 3d 25 7a 64 0a 00 72 74 65 6d 73 2d 72 66 es=%zd..rtems-rf 40087e00: 73 3a 20 67 72 6f 75 70 2d 6f 70 65 6e 3a 20 63 s: group-open: c 40087e10: 6f 75 6c 64 20 6e 6f 74 20 6f 70 65 6e 20 62 6c ould not open bl 40087e20: 6f 63 6b 20 62 69 74 6d 61 70 3a 20 25 64 3a 20 ock bitmap: %d: 40087e30: 25 73 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 %s......rtems-rf 40087e40: 73 3a 20 67 72 6f 75 70 2d 6f 70 65 6e 3a 20 63 s: group-open: c 40087e50: 6f 75 6c 64 20 6e 6f 74 20 6f 70 65 6e 20 69 6e ould not open in 40087e60: 6f 64 65 20 62 69 74 6d 61 70 3a 20 25 64 3a 20 ode bitmap: %d: 40087e70: 25 73 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 %s......rtems-rf 40087e80: 73 3a 20 67 72 6f 75 70 2d 63 6c 6f 73 65 3a 20 s: group-close: 40087e90: 62 61 73 65 3d 25 6c 64 0a 00 00 00 00 00 00 00 base=%ld........ 40087ea0: 72 74 65 6d 73 2d 72 66 73 3a 20 67 72 6f 75 70 rtems-rfs: group 40087eb0: 2d 62 69 74 6d 61 70 2d 61 6c 6c 6f 63 3a 20 25 -bitmap-alloc: % 40087ec0: 73 20 61 6c 6c 6f 63 61 74 65 64 3a 20 25 6c 64 s allocated: %ld 40087ed0: 0a 00 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ........rtems-rf 40087ee0: 73 3a 20 67 72 6f 75 70 2d 62 69 74 6d 61 70 2d s: group-bitmap- 40087ef0: 61 6c 6c 6f 63 3a 20 6e 6f 20 62 6c 6f 63 6b 73 alloc: no blocks 40087f00: 20 61 76 61 69 6c 61 62 6c 65 00 00 00 00 00 00 available...... 40087f10: 72 74 65 6d 73 2d 72 66 73 3a 20 67 72 6f 75 70 rtems-rfs: group 40087f20: 2d 62 69 74 6d 61 70 2d 66 72 65 65 3a 20 25 73 -bitmap-free: %s 40087f30: 20 66 72 65 65 3a 20 25 6c 64 0a 00 00 00 00 00 free: %ld...... 40087f40: 72 74 65 6d 73 2d 72 66 73 3a 20 67 72 6f 75 70 rtems-rfs: group 40087f50: 2d 62 69 74 6d 61 70 2d 74 65 73 74 3a 20 25 73 -bitmap-test: %s 40087f60: 20 74 65 73 74 3a 20 25 6c 64 0a 00 00 00 00 00 test: %ld...... 40087f70: 72 74 65 6d 73 2d 72 66 73 3a 20 69 6e 6f 64 65 rtems-rfs: inode 40087f80: 2d 6c 6f 61 64 3a 20 69 6e 6f 3d 25 6c 75 20 6c -load: ino=%lu l 40087f90: 6f 61 64 73 3d 25 69 20 6c 6f 61 64 65 64 3d 25 oads=%i loaded=% 40087fa0: 73 0a 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 s.......rtems-rf 40087fb0: 73 3a 20 69 6e 6f 64 65 2d 6f 70 65 6e 3a 20 69 s: inode-open: i 40087fc0: 6e 6f 3a 20 25 6c 75 0a 00 00 00 00 00 00 00 00 no: %lu......... 40087fd0: 72 74 65 6d 73 2d 72 66 73 3a 20 69 6e 6f 64 65 rtems-rfs: inode 40087fe0: 2d 75 6e 6c 6f 61 64 3a 20 69 6e 6f 3d 25 6c 75 -unload: ino=%lu 40087ff0: 20 6c 6f 61 64 73 3d 25 69 20 6c 6f 61 64 65 64 loads=%i loaded 40088000: 3d 25 73 0a 00 00 00 00 72 74 65 6d 73 2d 72 66 =%s.....rtems-rf 40088010: 73 3a 20 69 6e 6f 64 65 2d 63 6c 6f 73 65 3a 20 s: inode-close: 40088020: 69 6e 6f 3a 20 25 6c 75 0a 00 00 00 00 00 00 00 ino: %lu........ 40088030: 72 74 65 6d 73 2d 72 66 73 3a 20 69 6e 6f 64 65 rtems-rfs: inode 40088040: 2d 63 6c 6f 73 65 3a 20 62 61 64 20 6c 6f 61 64 -close: bad load 40088050: 73 20 6e 75 6d 62 65 72 3a 20 25 64 0a 00 00 00 s number: %d.... 40088060: 72 74 65 6d 73 2d 72 66 73 3a 20 69 6e 6f 64 65 rtems-rfs: inode 40088070: 2d 64 65 6c 65 74 65 3a 20 69 6e 6f 3a 25 6c 75 -delete: ino:%lu 40088080: 20 6c 6f 61 64 65 64 3a 25 73 0a 00 00 00 00 00 loaded:%s...... 40088090: 63 68 61 72 00 00 00 00 75 6e 6b 6e 6f 77 6e 00 char....unknown. 400880a0: 6c 69 6e 6b 00 00 00 00 72 74 65 6d 73 2d 72 66 link....rtems-rf 400880b0: 73 3a 20 69 6e 6f 64 65 2d 63 72 65 61 74 65 3a s: inode-create: 400880c0: 20 70 61 72 65 6e 74 3a 25 6c 75 20 6e 61 6d 65 parent:%lu name 400880d0: 3a 00 00 00 00 00 00 00 20 74 79 70 65 3a 25 73 :....... type:%s 400880e0: 20 6d 6f 64 65 3a 25 30 34 78 20 28 25 30 33 6f mode:%04x (%03o 400880f0: 29 0a 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ).......rtems-rf 40088100: 73 3a 20 6c 69 6e 6b 3a 20 70 61 72 65 6e 74 28 s: link: parent( 40088110: 25 6c 75 29 20 2d 3e 20 00 00 00 00 00 00 00 00 %lu) -> ........ 40088120: 28 25 6c 75 29 0a 00 00 72 74 65 6d 73 2d 72 66 (%lu)...rtems-rf 40088130: 73 3a 20 75 6e 6c 69 6e 6b 3a 20 70 61 72 65 6e s: unlink: paren 40088140: 74 28 25 6c 75 29 20 2d 58 2d 3e 20 28 25 6c 75 t(%lu) -X-> (%lu 40088150: 29 0a 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ).......rtems-rf 40088160: 73 3a 20 6c 69 6e 6b 20 69 73 20 61 20 64 69 72 s: link is a dir 40088170: 65 63 74 6f 72 79 00 00 72 74 65 6d 73 2d 72 66 ectory..rtems-rf 40088180: 73 3a 20 64 69 72 2d 65 6d 70 74 79 3a 20 25 64 s: dir-empty: %d 40088190: 3a 20 25 73 0a 00 00 00 72 74 65 6d 73 2d 72 66 : %s....rtems-rf 400881a0: 73 3a 20 6c 69 6e 6b 3a 20 69 6e 6f 64 65 2d 6f s: link: inode-o 400881b0: 70 65 6e 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 pen failed: %d: 400881c0: 25 73 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 %s......rtems-rf 400881d0: 73 3a 20 75 6e 6c 69 6e 6b 3a 20 64 69 72 2d 64 s: unlink: dir-d 400881e0: 65 6c 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 25 el failed: %d: % 400881f0: 73 0a 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 s.......rtems-rf 40088200: 73 3a 20 75 6e 6c 69 6e 6b 3a 20 74 61 72 67 65 s: unlink: targe 40088210: 74 3a 25 6c 75 20 6c 69 6e 6b 73 3a 25 75 0a 00 t:%lu links:%u.. 40088220: 72 74 65 6d 73 2d 72 66 73 3a 20 75 6e 6c 69 6e rtems-rfs: unlin 40088230: 6b 3a 20 69 6e 6f 64 65 2d 64 65 6c 20 66 61 69 k: inode-del fai 40088240: 6c 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 led: %d: %s..... 40088250: 72 74 65 6d 73 2d 72 66 73 3a 20 6c 69 6e 6b 3a rtems-rfs: link: 40088260: 20 69 6e 6f 64 65 2d 74 69 6d 65 2d 73 74 61 6d inode-time-stam 40088270: 70 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 25 73 p failed: %d: %s 40088280: 0a 00 00 00 00 00 00 00 72 74 65 6d 73 2d 72 66 ........rtems-rf 40088290: 73 3a 20 6c 69 6e 6b 3a 20 70 61 72 65 6e 74 20 s: link: parent 400882a0: 69 6e 6f 64 65 2d 63 6c 6f 73 65 20 66 61 69 6c inode-close fail 400882b0: 65 64 3a 20 25 64 3a 20 25 73 0a 00 00 00 00 00 ed: %d: %s...... 400882c0: 72 74 65 6d 73 2d 72 66 73 3a 20 6c 69 6e 6b 3a rtems-rfs: link: 400882d0: 20 74 61 72 67 65 74 20 69 6e 6f 64 65 2d 63 6c target inode-cl 400882e0: 6f 73 65 20 66 61 69 6c 65 64 3a 20 25 64 3a 20 ose failed: %d: 400882f0: 25 73 0a 00 00 00 00 00 72 74 65 6d 73 2d 72 66 %s......rtems-rf 40088300: 73 3a 20 73 79 6d 6c 69 6e 6b 3a 20 70 61 72 65 s: symlink: pare 40088310: 6e 74 3a 25 6c 75 20 6e 61 6d 65 3a 00 00 00 00 nt:%lu name:.... 40088320: 20 6c 69 6e 6b 3a 00 00 72 74 65 6d 73 2d 72 66 link:..rtems-rf 40088330: 73 3a 20 73 79 6d 6c 69 6e 6b 2d 72 65 61 64 3a s: symlink-read: 40088340: 20 6c 69 6e 6b 3a 25 6c 75 0a 00 00 00 00 00 00 link:%lu....... 40088350: 52 46 53 00 RFS. =============================================================================== 40040514 <_fat_block_read>: uint32_t start, uint32_t offset, uint32_t count, void *buff ) { 40040514: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED 40040518: a0 10 00 18 mov %i0, %l0 <== NOT EXECUTED uint32_t sec_num = start; uint32_t ofs = offset; uint8_t *sec_buf; uint32_t c = 0; while (count > 0) 4004051c: 80 a6 e0 00 cmp %i3, 0 <== NOT EXECUTED 40040520: 12 80 00 11 bne 40040564 <_fat_block_read+0x50> <== NOT EXECUTED 40040524: b0 10 20 00 clr %i0 <== NOT EXECUTED 40040528: 30 80 00 19 b,a 4004058c <_fat_block_read+0x78> <== NOT EXECUTED { rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_READ, &sec_buf); if (rc != RC_OK) return -1; c = MIN(count, (fs_info->vol.bps - ofs)); 4004052c: fa 14 00 00 lduh [ %l0 ], %i5 <== NOT EXECUTED 40040530: ba 27 40 1a sub %i5, %i2, %i5 <== NOT EXECUTED 40040534: 80 a7 40 1b cmp %i5, %i3 <== NOT EXECUTED 40040538: 38 80 00 02 bgu,a 40040540 <_fat_block_read+0x2c> <== NOT EXECUTED 4004053c: ba 10 00 1b mov %i3, %i5 <== NOT EXECUTED memcpy((buff + cmpltd), (sec_buf + ofs), c); 40040540: d2 07 bf fc ld [ %fp + -4 ], %o1 <== NOT EXECUTED 40040544: 92 02 40 1a add %o1, %i2, %o1 <== NOT EXECUTED 40040548: 40 00 82 a2 call 40060fd0 <== NOT EXECUTED 4004054c: 94 10 00 1d mov %i5, %o2 <== NOT EXECUTED count -= c; cmpltd += c; 40040550: b0 06 00 1d add %i0, %i5, %i0 <== NOT EXECUTED sec_num++; 40040554: b2 06 60 01 inc %i1 <== NOT EXECUTED while (count > 0) 40040558: b6 a6 c0 1d subcc %i3, %i5, %i3 <== NOT EXECUTED 4004055c: 02 80 00 0c be 4004058c <_fat_block_read+0x78> <== NOT EXECUTED 40040560: b4 10 20 00 clr %i2 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_READ, &sec_buf); 40040564: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 40040568: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4004056c: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 40040570: 7f ff ff b0 call 40040430 <== NOT EXECUTED 40040574: 90 10 00 10 mov %l0, %o0 <== NOT EXECUTED if (rc != RC_OK) 40040578: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4004057c: 02 bf ff ec be 4004052c <_fat_block_read+0x18> <== NOT EXECUTED 40040580: 90 07 00 18 add %i4, %i0, %o0 <== NOT EXECUTED ofs = 0; } return cmpltd; } 40040584: 81 c7 e0 08 ret <== NOT EXECUTED 40040588: 91 e8 3f ff restore %g0, -1, %o0 <== NOT EXECUTED 4004058c: 81 c7 e0 08 ret <== NOT EXECUTED 40040590: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 40040430 : { 40040430: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED return sector_number >> (fs_info->vol.bytes_per_block_log2 - fs_info->vol.sec_log2); 40040434: fa 0e 20 02 ldub [ %i0 + 2 ], %i5 <== NOT EXECUTED 40040438: c2 0e 20 14 ldub [ %i0 + 0x14 ], %g1 <== NOT EXECUTED if (fs_info->c.state == FAT_CACHE_EMPTY || fs_info->c.blk_num != sec_num) 4004043c: c4 0e 20 91 ldub [ %i0 + 0x91 ], %g2 <== NOT EXECUTED 40040440: 82 20 40 1d sub %g1, %i5, %g1 <== NOT EXECUTED { 40040444: b8 10 00 18 mov %i0, %i4 <== NOT EXECUTED 40040448: 93 36 40 01 srl %i1, %g1, %o1 <== NOT EXECUTED if (fs_info->c.state == FAT_CACHE_EMPTY || fs_info->c.blk_num != sec_num) 4004044c: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED return block_number << (fs_info->vol.bytes_per_block_log2 - fs_info->vol.sec_log2); 40040450: 83 2a 40 01 sll %o1, %g1, %g1 <== NOT EXECUTED ((sector - 40040454: 82 26 40 01 sub %i1, %g1, %g1 <== NOT EXECUTED 40040458: 02 80 00 0a be 40040480 <== NOT EXECUTED 4004045c: bb 28 40 1d sll %g1, %i5, %i5 <== NOT EXECUTED 40040460: d2 27 bf fc st %o1, [ %fp + -4 ] <== NOT EXECUTED 40040464: c2 06 20 8c ld [ %i0 + 0x8c ], %g1 <== NOT EXECUTED 40040468: 80 a0 40 19 cmp %g1, %i1 <== NOT EXECUTED 4004046c: 22 80 00 12 be,a 400404b4 <== NOT EXECUTED 40040470: c2 07 20 94 ld [ %i4 + 0x94 ], %g1 <== NOT EXECUTED 40040474: 7f ff ff 79 call 40040258 <== NOT EXECUTED 40040478: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 4004047c: d2 07 bf fc ld [ %fp + -4 ], %o1 <== NOT EXECUTED 40040480: d0 07 20 6c ld [ %i4 + 0x6c ], %o0 <== NOT EXECUTED if (op_type == FAT_OP_TYPE_READ) 40040484: 80 a6 a0 01 cmp %i2, 1 <== NOT EXECUTED 40040488: 02 80 00 10 be 400404c8 <== NOT EXECUTED 4004048c: 94 07 20 94 add %i4, 0x94, %o2 <== NOT EXECUTED sc = rtems_bdbuf_get(fs_info->vol.dd, blk, &fs_info->c.buf); 40040490: 7f ff 18 e6 call 40006828 <== NOT EXECUTED 40040494: 01 00 00 00 nop <== NOT EXECUTED if (sc != RTEMS_SUCCESSFUL) 40040498: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4004049c: 12 80 00 0f bne 400404d8 <== NOT EXECUTED 400404a0: 82 10 20 01 mov 1, %g1 <== NOT EXECUTED fs_info->c.blk_num = sec_num; 400404a4: f2 27 20 8c st %i1, [ %i4 + 0x8c ] <== NOT EXECUTED fs_info->c.modified = 0; 400404a8: c0 2f 20 90 clrb [ %i4 + 0x90 ] <== NOT EXECUTED fs_info->c.state = FAT_CACHE_ACTUAL; 400404ac: c2 2f 20 91 stb %g1, [ %i4 + 0x91 ] <== NOT EXECUTED *sec_buf = &fs_info->c.buf->buffer[blk_ofs]; 400404b0: c2 07 20 94 ld [ %i4 + 0x94 ], %g1 <== NOT EXECUTED 400404b4: c2 00 60 1c ld [ %g1 + 0x1c ], %g1 <== NOT EXECUTED 400404b8: 82 00 40 1d add %g1, %i5, %g1 <== NOT EXECUTED 400404bc: c2 26 c0 00 st %g1, [ %i3 ] <== NOT EXECUTED } 400404c0: 81 c7 e0 08 ret <== NOT EXECUTED 400404c4: 91 e8 20 00 restore %g0, 0, %o0 <== NOT EXECUTED sc = rtems_bdbuf_read(fs_info->vol.dd, blk, &fs_info->c.buf); 400404c8: 7f ff 19 18 call 40006928 <== NOT EXECUTED 400404cc: 01 00 00 00 nop <== NOT EXECUTED 400404d0: 10 bf ff f3 b 4004049c <== NOT EXECUTED 400404d4: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED rtems_set_errno_and_return_minus_one(EIO); 400404d8: 40 00 71 0f call 4005c914 <__errno> <== NOT EXECUTED 400404dc: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 400404e0: 82 10 20 05 mov 5, %g1 <== NOT EXECUTED 400404e4: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 400404e8: 81 c7 e0 08 ret <== NOT EXECUTED 400404ec: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 400404f0 : if (fs_info->c.state == FAT_CACHE_EMPTY) 400404f0: c2 0a 20 91 ldub [ %o0 + 0x91 ], %g1 <== NOT EXECUTED 400404f4: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 400404f8: 02 80 00 05 be 4004050c <== NOT EXECUTED 400404fc: 01 00 00 00 nop <== NOT EXECUTED 40040500: 82 13 c0 00 mov %o7, %g1 <== NOT EXECUTED 40040504: 7f ff ff 55 call 40040258 <== NOT EXECUTED 40040508: 9e 10 40 00 mov %g1, %o7 <== NOT EXECUTED } 4004050c: 81 c3 e0 08 retl <== NOT EXECUTED 40040510: 90 10 20 00 clr %o0 <== NOT EXECUTED =============================================================================== 40040640 : fat_fs_info_t *fs_info, const uint32_t start_cln, const uint32_t offset, const uint32_t count, const uint8_t pattern) { 40040640: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED ssize_t rc = RC_OK; uint32_t bytes_to_write = MIN(count, (fs_info->vol.bpc - offset)); 40040644: e0 06 20 08 ld [ %i0 + 8 ], %l0 <== NOT EXECUTED 40040648: a0 24 00 1a sub %l0, %i2, %l0 <== NOT EXECUTED 4004064c: 80 a4 00 1b cmp %l0, %i3 <== NOT EXECUTED 40040650: 38 80 00 02 bgu,a 40040658 <== NOT EXECUTED 40040654: a0 10 00 1b mov %i3, %l0 <== NOT EXECUTED 40040658: c2 0e 20 14 ldub [ %i0 + 0x14 ], %g1 <== NOT EXECUTED 4004065c: c4 0e 20 02 ldub [ %i0 + 2 ], %g2 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 40040660: 80 a6 60 00 cmp %i1, 0 <== NOT EXECUTED 40040664: 12 80 00 06 bne 4004067c <== NOT EXECUTED 40040668: 86 20 40 02 sub %g1, %g2, %g3 <== NOT EXECUTED 4004066c: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 40040670: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 40040674: 32 80 00 4c bne,a 400407a4 <== NOT EXECUTED 40040678: e4 06 20 28 ld [ %i0 + 0x28 ], %l2 <== NOT EXECUTED blk = cln << (fs_info->vol.bpc_log2 - fs_info->vol.bytes_per_block_log2); 4004067c: e4 0e 20 0c ldub [ %i0 + 0xc ], %l2 <== NOT EXECUTED return sector_number >> (fs_info->vol.bytes_per_block_log2 - fs_info->vol.sec_log2); 40040680: c4 06 20 3c ld [ %i0 + 0x3c ], %g2 <== NOT EXECUTED cln -= FAT_RSRVD_CLN; 40040684: b2 06 7f fe add %i1, -2, %i1 <== NOT EXECUTED blk = cln << (fs_info->vol.bpc_log2 - fs_info->vol.bytes_per_block_log2); 40040688: a4 24 80 01 sub %l2, %g1, %l2 <== NOT EXECUTED 4004068c: 85 30 80 03 srl %g2, %g3, %g2 <== NOT EXECUTED 40040690: b3 2e 40 12 sll %i1, %l2, %i1 <== NOT EXECUTED blk += fat_sector_num_to_block_num(fs_info, fs_info->vol.data_fsec); 40040694: 84 00 80 19 add %g2, %i1, %g2 <== NOT EXECUTED uint32_t cur_blk = fat_cluster_num_to_block_num(fs_info, start_cln); uint32_t blocks_in_offset = offset >> fs_info->vol.bytes_per_block_log2; 40040698: a5 36 80 01 srl %i2, %g1, %l2 <== NOT EXECUTED uint32_t ofs_blk = offset - (blocks_in_offset << fs_info->vol.bytes_per_block_log2); 4004069c: 83 2c 80 01 sll %l2, %g1, %g1 <== NOT EXECUTED ssize_t bytes_written = 0; 400406a0: b2 10 20 00 clr %i1 <== NOT EXECUTED uint32_t ofs_blk = offset - (blocks_in_offset << fs_info->vol.bytes_per_block_log2); 400406a4: b4 26 80 01 sub %i2, %g1, %i2 <== NOT EXECUTED ssize_t ret; cur_blk += blocks_in_offset; 400406a8: a4 04 80 02 add %l2, %g2, %l2 <== NOT EXECUTED ssize_t rc = RC_OK; 400406ac: 82 10 20 00 clr %g1 <== NOT EXECUTED while ( (RC_OK == rc) 400406b0: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 400406b4: 12 80 00 26 bne 4004074c <== NOT EXECUTED 400406b8: a2 10 20 01 mov 1, %l1 <== NOT EXECUTED 400406bc: 80 a4 20 00 cmp %l0, 0 <== NOT EXECUTED 400406c0: 02 80 00 23 be 4004074c <== NOT EXECUTED 400406c4: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED && (0 < bytes_to_write)) { uint32_t c = MIN(bytes_to_write, (fs_info->vol.bytes_per_block - ofs_blk)); 400406c8: c2 06 20 10 ld [ %i0 + 0x10 ], %g1 <== NOT EXECUTED 400406cc: ba 20 40 1a sub %g1, %i2, %i5 <== NOT EXECUTED 400406d0: 80 a7 40 10 cmp %i5, %l0 <== NOT EXECUTED 400406d4: 08 80 00 03 bleu 400406e0 <== NOT EXECUTED 400406d8: b6 10 00 1d mov %i5, %i3 <== NOT EXECUTED 400406dc: b6 10 00 10 mov %l0, %i3 <== NOT EXECUTED uint32_t bytes_to_write = MIN(count, (fs_info->vol.bytes_per_block - offset)); 400406e0: 80 a7 40 1b cmp %i5, %i3 <== NOT EXECUTED 400406e4: 38 80 00 02 bgu,a 400406ec <== NOT EXECUTED 400406e8: ba 10 00 1b mov %i3, %i5 <== NOT EXECUTED if (0 < bytes_to_write) 400406ec: 80 a7 60 00 cmp %i5, 0 <== NOT EXECUTED 400406f0: 02 80 00 0f be 4004072c <== NOT EXECUTED 400406f4: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED return block_number << (fs_info->vol.bytes_per_block_log2 - fs_info->vol.sec_log2); 400406f8: d2 0e 20 14 ldub [ %i0 + 0x14 ], %o1 <== NOT EXECUTED 400406fc: c4 0e 20 02 ldub [ %i0 + 2 ], %g2 <== NOT EXECUTED 40040700: 92 22 40 02 sub %o1, %g2, %o1 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_GET, &blk_buf); 40040704: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED if (bytes_to_write == fs_info->vol.bytes_per_block) 40040708: 80 a0 40 1d cmp %g1, %i5 <== NOT EXECUTED 4004070c: 02 80 00 21 be 40040790 <== NOT EXECUTED 40040710: 93 2c 80 09 sll %l2, %o1, %o1 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_READ, &blk_buf); 40040714: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 40040718: 7f ff ff 46 call 40040430 <== NOT EXECUTED 4004071c: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (RC_OK == rc) 40040720: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040724: 22 80 00 14 be,a 40040774 <== NOT EXECUTED 40040728: d0 07 bf fc ld [ %fp + -4 ], %o0 <== NOT EXECUTED fs_info, cur_blk, ofs_blk, c, pattern); if (c != ret) 4004072c: 80 a2 00 1b cmp %o0, %i3 <== NOT EXECUTED 40040730: 02 80 00 0b be 4004075c <== NOT EXECUTED 40040734: 82 10 3f ff mov -1, %g1 <== NOT EXECUTED 40040738: b4 10 20 00 clr %i2 <== NOT EXECUTED while ( (RC_OK == rc) 4004073c: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 40040740: 02 bf ff e0 be 400406c0 <== NOT EXECUTED 40040744: 80 a4 20 00 cmp %l0, 0 <== NOT EXECUTED bytes_written += ret; ++cur_blk; } ofs_blk = 0; } if (RC_OK != rc) 40040748: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4004074c: 32 80 00 02 bne,a 40040754 <== NOT EXECUTED 40040750: b2 10 3f ff mov -1, %i1 <== NOT EXECUTED return rc; else return bytes_written; } 40040754: 81 c7 e0 08 ret <== NOT EXECUTED 40040758: 91 e8 00 19 restore %g0, %i1, %o0 <== NOT EXECUTED bytes_to_write -= ret; 4004075c: a0 24 00 08 sub %l0, %o0, %l0 <== NOT EXECUTED bytes_written += ret; 40040760: b2 06 40 08 add %i1, %o0, %i1 <== NOT EXECUTED ++cur_blk; 40040764: a4 04 a0 01 inc %l2 <== NOT EXECUTED 40040768: 82 10 20 00 clr %g1 <== NOT EXECUTED 4004076c: 10 bf ff f4 b 4004073c <== NOT EXECUTED 40040770: b4 10 20 00 clr %i2 <== NOT EXECUTED memset(blk_buf + offset, pattern, bytes_to_write); 40040774: 94 10 00 1d mov %i5, %o2 <== NOT EXECUTED 40040778: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4004077c: 40 00 82 9f call 400611f8 <== NOT EXECUTED 40040780: 90 02 00 1a add %o0, %i2, %o0 <== NOT EXECUTED fs_info->c.modified = true; 40040784: e2 2e 20 90 stb %l1, [ %i0 + 0x90 ] <== NOT EXECUTED return bytes_to_write; 40040788: 10 bf ff e9 b 4004072c <== NOT EXECUTED 4004078c: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_GET, &blk_buf); 40040790: 94 10 20 02 mov 2, %o2 <== NOT EXECUTED 40040794: 7f ff ff 27 call 40040430 <== NOT EXECUTED 40040798: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (RC_OK == rc) 4004079c: 10 bf ff e2 b 40040724 <== NOT EXECUTED 400407a0: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED return sector_number >> (fs_info->vol.bytes_per_block_log2 - fs_info->vol.sec_log2); 400407a4: 10 bf ff bd b 40040698 <== NOT EXECUTED 400407a8: 85 34 80 03 srl %l2, %g3, %g2 <== NOT EXECUTED =============================================================================== 400407ac : fat_fs_info_t *fs_info, const uint32_t start_cln, const uint32_t offset, const uint32_t count, const void *buff) { 400407ac: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED ssize_t rc = RC_OK; uint32_t bytes_to_write = MIN(count, (fs_info->vol.bpc - offset)); 400407b0: e0 06 20 08 ld [ %i0 + 8 ], %l0 <== NOT EXECUTED 400407b4: a0 24 00 1a sub %l0, %i2, %l0 <== NOT EXECUTED 400407b8: 80 a4 00 1b cmp %l0, %i3 <== NOT EXECUTED 400407bc: 38 80 00 02 bgu,a 400407c4 <== NOT EXECUTED 400407c0: a0 10 00 1b mov %i3, %l0 <== NOT EXECUTED 400407c4: c2 0e 20 14 ldub [ %i0 + 0x14 ], %g1 <== NOT EXECUTED 400407c8: c4 0e 20 02 ldub [ %i0 + 2 ], %g2 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 400407cc: 80 a6 60 00 cmp %i1, 0 <== NOT EXECUTED 400407d0: 12 80 00 06 bne 400407e8 <== NOT EXECUTED 400407d4: 86 20 40 02 sub %g1, %g2, %g3 <== NOT EXECUTED 400407d8: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 400407dc: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 400407e0: 32 80 00 4c bne,a 40040910 <== NOT EXECUTED 400407e4: e4 06 20 28 ld [ %i0 + 0x28 ], %l2 <== NOT EXECUTED blk = cln << (fs_info->vol.bpc_log2 - fs_info->vol.bytes_per_block_log2); 400407e8: e4 0e 20 0c ldub [ %i0 + 0xc ], %l2 <== NOT EXECUTED 400407ec: c4 06 20 3c ld [ %i0 + 0x3c ], %g2 <== NOT EXECUTED cln -= FAT_RSRVD_CLN; 400407f0: b2 06 7f fe add %i1, -2, %i1 <== NOT EXECUTED blk = cln << (fs_info->vol.bpc_log2 - fs_info->vol.bytes_per_block_log2); 400407f4: a4 24 80 01 sub %l2, %g1, %l2 <== NOT EXECUTED 400407f8: 85 30 80 03 srl %g2, %g3, %g2 <== NOT EXECUTED 400407fc: b3 2e 40 12 sll %i1, %l2, %i1 <== NOT EXECUTED blk += fat_sector_num_to_block_num(fs_info, fs_info->vol.data_fsec); 40040800: 84 00 80 19 add %g2, %i1, %g2 <== NOT EXECUTED uint32_t cur_blk = fat_cluster_num_to_block_num(fs_info, start_cln); uint32_t blocks_in_offset = (offset >> fs_info->vol.bytes_per_block_log2); 40040804: a5 36 80 01 srl %i2, %g1, %l2 <== NOT EXECUTED uint32_t ofs_blk = offset - (blocks_in_offset << fs_info->vol.bytes_per_block_log2); 40040808: 83 2c 80 01 sll %l2, %g1, %g1 <== NOT EXECUTED ssize_t bytes_written = 0; 4004080c: b2 10 20 00 clr %i1 <== NOT EXECUTED uint32_t ofs_blk = offset - (blocks_in_offset << fs_info->vol.bytes_per_block_log2); 40040810: b4 26 80 01 sub %i2, %g1, %i2 <== NOT EXECUTED uint8_t *buffer = (uint8_t*)buff; ssize_t ret; uint32_t c; cur_blk += blocks_in_offset; 40040814: a4 04 80 02 add %l2, %g2, %l2 <== NOT EXECUTED ssize_t rc = RC_OK; 40040818: 82 10 20 00 clr %g1 <== NOT EXECUTED while ( (RC_OK == rc) 4004081c: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 40040820: 12 80 00 26 bne 400408b8 <== NOT EXECUTED 40040824: a2 10 20 01 mov 1, %l1 <== NOT EXECUTED 40040828: 80 a4 20 00 cmp %l0, 0 <== NOT EXECUTED 4004082c: 02 80 00 23 be 400408b8 <== NOT EXECUTED 40040830: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED && (0 < bytes_to_write)) { c = MIN(bytes_to_write, (fs_info->vol.bytes_per_block - ofs_blk)); 40040834: c2 06 20 10 ld [ %i0 + 0x10 ], %g1 <== NOT EXECUTED 40040838: ba 20 40 1a sub %g1, %i2, %i5 <== NOT EXECUTED 4004083c: 80 a7 40 10 cmp %i5, %l0 <== NOT EXECUTED 40040840: 08 80 00 03 bleu 4004084c <== NOT EXECUTED 40040844: b6 10 00 1d mov %i5, %i3 <== NOT EXECUTED 40040848: b6 10 00 10 mov %l0, %i3 <== NOT EXECUTED uint32_t bytes_to_write = MIN(count, (fs_info->vol.bytes_per_block - offset)); 4004084c: 80 a7 40 1b cmp %i5, %i3 <== NOT EXECUTED 40040850: 38 80 00 02 bgu,a 40040858 <== NOT EXECUTED 40040854: ba 10 00 1b mov %i3, %i5 <== NOT EXECUTED if (0 < bytes_to_write) 40040858: 80 a7 60 00 cmp %i5, 0 <== NOT EXECUTED 4004085c: 02 80 00 0f be 40040898 <== NOT EXECUTED 40040860: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED return block_number << (fs_info->vol.bytes_per_block_log2 - fs_info->vol.sec_log2); 40040864: d2 0e 20 14 ldub [ %i0 + 0x14 ], %o1 <== NOT EXECUTED 40040868: c4 0e 20 02 ldub [ %i0 + 2 ], %g2 <== NOT EXECUTED 4004086c: 92 22 40 02 sub %o1, %g2, %o1 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_GET, &blk_buf); 40040870: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED if (bytes_to_write == fs_info->vol.bytes_per_block) 40040874: 80 a0 40 1d cmp %g1, %i5 <== NOT EXECUTED 40040878: 02 80 00 21 be 400408fc <== NOT EXECUTED 4004087c: 93 2c 80 09 sll %l2, %o1, %o1 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_READ, &blk_buf); 40040880: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 40040884: 7f ff fe eb call 40040430 <== NOT EXECUTED 40040888: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (RC_OK == rc) 4004088c: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040890: 22 80 00 14 be,a 400408e0 <== NOT EXECUTED 40040894: d0 07 bf fc ld [ %fp + -4 ], %o0 <== NOT EXECUTED fs_info, cur_blk, ofs_blk, c, &buffer[bytes_written]); if (c != ret) 40040898: 80 a2 00 1b cmp %o0, %i3 <== NOT EXECUTED 4004089c: 02 80 00 0b be 400408c8 <== NOT EXECUTED 400408a0: 82 10 3f ff mov -1, %g1 <== NOT EXECUTED 400408a4: b4 10 20 00 clr %i2 <== NOT EXECUTED while ( (RC_OK == rc) 400408a8: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 400408ac: 02 bf ff e0 be 4004082c <== NOT EXECUTED 400408b0: 80 a4 20 00 cmp %l0, 0 <== NOT EXECUTED bytes_written += ret; ++cur_blk; } ofs_blk = 0; } if (RC_OK != rc) 400408b4: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 400408b8: 32 80 00 02 bne,a 400408c0 <== NOT EXECUTED 400408bc: b2 10 3f ff mov -1, %i1 <== NOT EXECUTED return rc; else return bytes_written; } 400408c0: 81 c7 e0 08 ret <== NOT EXECUTED 400408c4: 91 e8 00 19 restore %g0, %i1, %o0 <== NOT EXECUTED bytes_to_write -= ret; 400408c8: a0 24 00 08 sub %l0, %o0, %l0 <== NOT EXECUTED bytes_written += ret; 400408cc: b2 06 40 08 add %i1, %o0, %i1 <== NOT EXECUTED ++cur_blk; 400408d0: a4 04 a0 01 inc %l2 <== NOT EXECUTED 400408d4: 82 10 20 00 clr %g1 <== NOT EXECUTED 400408d8: 10 bf ff f4 b 400408a8 <== NOT EXECUTED 400408dc: b4 10 20 00 clr %i2 <== NOT EXECUTED memcpy(blk_buf + offset, buf, bytes_to_write); 400408e0: 94 10 00 1d mov %i5, %o2 <== NOT EXECUTED 400408e4: 92 07 00 19 add %i4, %i1, %o1 <== NOT EXECUTED 400408e8: 40 00 81 ba call 40060fd0 <== NOT EXECUTED 400408ec: 90 02 00 1a add %o0, %i2, %o0 <== NOT EXECUTED fs_info->c.modified = true; 400408f0: e2 2e 20 90 stb %l1, [ %i0 + 0x90 ] <== NOT EXECUTED return bytes_to_write; 400408f4: 10 bf ff e9 b 40040898 <== NOT EXECUTED 400408f8: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_GET, &blk_buf); 400408fc: 94 10 20 02 mov 2, %o2 <== NOT EXECUTED 40040900: 7f ff fe cc call 40040430 <== NOT EXECUTED 40040904: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (RC_OK == rc) 40040908: 10 bf ff e2 b 40040890 <== NOT EXECUTED 4004090c: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED return sector_number >> (fs_info->vol.bytes_per_block_log2 - fs_info->vol.sec_log2); 40040910: 10 bf ff bd b 40040804 <== NOT EXECUTED 40040914: 85 34 80 03 srl %l2, %g3, %g2 <== NOT EXECUTED =============================================================================== 4003fb08 : { 4003fb08: 9d e3 bf a0 save %sp, -96, %sp <== NOT EXECUTED if (fat_fd->links_num > 1) 4003fb0c: c2 06 60 08 ld [ %i1 + 8 ], %g1 <== NOT EXECUTED 4003fb10: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003fb14: 08 80 00 05 bleu 4003fb28 <== NOT EXECUTED 4003fb18: 82 00 7f ff add %g1, -1, %g1 <== NOT EXECUTED fat_fd->links_num--; 4003fb1c: c2 26 60 08 st %g1, [ %i1 + 8 ] <== NOT EXECUTED rc = fat_buf_release(fs_info); 4003fb20: 40 00 02 74 call 400404f0 <== NOT EXECUTED 4003fb24: 81 e8 00 00 restore <== NOT EXECUTED fat_file_update(fs_info, fat_fd); 4003fb28: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003fb2c: 7f ff ff 17 call 4003f788 <== NOT EXECUTED 4003fb30: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (fat_fd->flags & FAT_FILE_REMOVED) 4003fb34: c2 0e 60 30 ldub [ %i1 + 0x30 ], %g1 <== NOT EXECUTED 4003fb38: 80 88 60 01 btst 1, %g1 <== NOT EXECUTED 4003fb3c: 12 80 00 0b bne 4003fb68 <== NOT EXECUTED 4003fb40: 94 10 20 00 clr %o2 <== NOT EXECUTED if (fat_ino_is_unique(fs_info, fat_fd->ino)) 4003fb44: d2 06 60 0c ld [ %i1 + 0xc ], %o1 <== NOT EXECUTED 4003fb48: 40 00 06 7e call 40041540 <== NOT EXECUTED 4003fb4c: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 4003fb50: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003fb54: 22 80 00 1b be,a 4003fbc0 <== NOT EXECUTED 4003fb58: c4 06 40 00 ld [ %i1 ], %g2 <== NOT EXECUTED fat_fd->links_num = 0; 4003fb5c: c0 26 60 08 clr [ %i1 + 8 ] <== NOT EXECUTED rc = fat_buf_release(fs_info); 4003fb60: 40 00 02 64 call 400404f0 <== NOT EXECUTED 4003fb64: 81 e8 00 00 restore <== NOT EXECUTED rc = fat_file_truncate(fs_info, fat_fd, 0); 4003fb68: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003fb6c: 7f ff ff a4 call 4003f9fc <== NOT EXECUTED 4003fb70: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc == RC_OK) 4003fb74: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003fb78: 12 bf ff ea bne 4003fb20 <== NOT EXECUTED 4003fb7c: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED next = the_node->next; 4003fb80: c4 06 40 00 ld [ %i1 ], %g2 <== NOT EXECUTED previous = the_node->previous; 4003fb84: c2 06 60 04 ld [ %i1 + 4 ], %g1 <== NOT EXECUTED _hash_delete(fs_info->rhash, key, fat_fd->ino, fat_fd); 4003fb88: d2 06 60 0c ld [ %i1 + 0xc ], %o1 <== NOT EXECUTED next->previous = previous; 4003fb8c: c2 20 a0 04 st %g1, [ %g2 + 4 ] <== NOT EXECUTED if (fat_ino_is_unique(fs_info, fat_fd->ino)) 4003fb90: 40 00 06 6c call 40041540 <== NOT EXECUTED 4003fb94: c4 20 40 00 st %g2, [ %g1 ] <== NOT EXECUTED 4003fb98: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003fb9c: 02 80 00 05 be 4003fbb0 <== NOT EXECUTED 4003fba0: 01 00 00 00 nop <== NOT EXECUTED fat_free_unique_ino(fs_info, fat_fd->ino); 4003fba4: d2 06 60 0c ld [ %i1 + 0xc ], %o1 <== NOT EXECUTED 4003fba8: 40 00 06 5b call 40041514 <== NOT EXECUTED 4003fbac: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED free(fat_fd); 4003fbb0: 7f ff 2e b4 call 4000b680 <== NOT EXECUTED 4003fbb4: 90 10 00 19 mov %i1, %o0 <== NOT EXECUTED rc = fat_buf_release(fs_info); 4003fbb8: 40 00 02 4e call 400404f0 <== NOT EXECUTED 4003fbbc: 81 e8 00 00 restore <== NOT EXECUTED previous = the_node->previous; 4003fbc0: c2 06 60 04 ld [ %i1 + 4 ], %g1 <== NOT EXECUTED next->previous = previous; 4003fbc4: c2 20 a0 04 st %g1, [ %g2 + 4 ] <== NOT EXECUTED free(fat_fd); 4003fbc8: 90 10 00 19 mov %i1, %o0 <== NOT EXECUTED 4003fbcc: 7f ff 2e ad call 4000b680 <== NOT EXECUTED 4003fbd0: c4 20 40 00 st %g2, [ %g1 ] <== NOT EXECUTED rc = fat_buf_release(fs_info); 4003fbd4: 40 00 02 47 call 400404f0 <== NOT EXECUTED 4003fbd8: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 4003fcb0 : { 4003fcb0: 9d e3 bf 90 save %sp, -112, %sp <== NOT EXECUTED *a_length = new_length; 4003fcb4: f6 27 00 00 st %i3, [ %i4 ] <== NOT EXECUTED uint32_t chain = 0; 4003fcb8: c0 27 bf f0 clr [ %fp + -16 ] <== NOT EXECUTED uint32_t last_cl = 0; 4003fcbc: c0 27 bf f8 clr [ %fp + -8 ] <== NOT EXECUTED if (new_length <= fat_fd->fat_file_size) 4003fcc0: c2 06 60 18 ld [ %i1 + 0x18 ], %g1 <== NOT EXECUTED 4003fcc4: 80 a0 40 1b cmp %g1, %i3 <== NOT EXECUTED 4003fcc8: 1a 80 00 54 bcc 4003fe18 <== NOT EXECUTED 4003fccc: a0 10 20 00 clr %l0 <== NOT EXECUTED if ((FAT_FD_OF_ROOT_DIR(fat_fd)) && 4003fcd0: c4 06 60 20 ld [ %i1 + 0x20 ], %g2 <== NOT EXECUTED 4003fcd4: 80 a0 a0 01 cmp %g2, 1 <== NOT EXECUTED 4003fcd8: 22 80 00 53 be,a 4003fe24 <== NOT EXECUTED 4003fcdc: c4 06 60 24 ld [ %i1 + 0x24 ], %g2 <== NOT EXECUTED bytes_remain = (fs_info->vol.bpc - 4003fce0: fa 06 20 08 ld [ %i0 + 8 ], %i5 <== NOT EXECUTED (fat_fd->fat_file_size & (fs_info->vol.bpc - 1))) & 4003fce4: 84 07 7f ff add %i5, -1, %g2 <== NOT EXECUTED 4003fce8: a4 08 40 02 and %g1, %g2, %l2 <== NOT EXECUTED bytes_remain = (fs_info->vol.bpc - 4003fcec: ba 27 40 12 sub %i5, %l2, %i5 <== NOT EXECUTED 4003fcf0: ba 0f 40 02 and %i5, %g2, %i5 <== NOT EXECUTED 4003fcf4: 80 a0 00 1d cmp %g0, %i5 <== NOT EXECUTED bytes2add = new_length - fat_fd->fat_file_size; 4003fcf8: 86 26 c0 01 sub %i3, %g1, %g3 <== NOT EXECUTED 4003fcfc: 84 40 20 00 addx %g0, 0, %g2 <== NOT EXECUTED if (bytes2add > bytes_remain) 4003fd00: 80 a7 40 03 cmp %i5, %g3 <== NOT EXECUTED 4003fd04: 1a 80 00 41 bcc 4003fe08 <== NOT EXECUTED 4003fd08: 84 0e 80 02 and %i2, %g2, %g2 <== NOT EXECUTED if (zero_fill && bytes_remain > 0) { 4003fd0c: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 4003fd10: 12 80 00 51 bne 4003fe54 <== NOT EXECUTED 4003fd14: a2 20 c0 1d sub %g3, %i5, %l1 <== NOT EXECUTED if (bytes2add == 0) 4003fd18: 80 a4 60 00 cmp %l1, 0 <== NOT EXECUTED 4003fd1c: 02 80 00 3e be 4003fe14 <== NOT EXECUTED 4003fd20: 9a 10 00 1a mov %i2, %o5 <== NOT EXECUTED cls2add = ((bytes2add - 1) >> fs_info->vol.bpc_log2) + 1; 4003fd24: c4 0e 20 0c ldub [ %i0 + 0xc ], %g2 <== NOT EXECUTED 4003fd28: 82 04 7f ff add %l1, -1, %g1 <== NOT EXECUTED rc = fat_scan_fat_for_free_clusters(fs_info, &chain, cls2add, 4003fd2c: 98 07 bf f8 add %fp, -8, %o4 <== NOT EXECUTED cls2add = ((bytes2add - 1) >> fs_info->vol.bpc_log2) + 1; 4003fd30: b5 30 40 02 srl %g1, %g2, %i2 <== NOT EXECUTED rc = fat_scan_fat_for_free_clusters(fs_info, &chain, cls2add, 4003fd34: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED cls2add = ((bytes2add - 1) >> fs_info->vol.bpc_log2) + 1; 4003fd38: b4 06 a0 01 inc %i2 <== NOT EXECUTED rc = fat_scan_fat_for_free_clusters(fs_info, &chain, cls2add, 4003fd3c: 92 07 bf f0 add %fp, -16, %o1 <== NOT EXECUTED 4003fd40: 94 10 00 1a mov %i2, %o2 <== NOT EXECUTED 4003fd44: 7f ff fd 2d call 4003f1f8 <== NOT EXECUTED 4003fd48: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003fd4c: a0 92 20 00 orcc %o0, 0, %l0 <== NOT EXECUTED 4003fd50: 32 80 00 33 bne,a 4003fe1c <== NOT EXECUTED 4003fd54: b0 10 00 10 mov %l0, %i0 <== NOT EXECUTED if ((cls_added == 0) && (bytes_remain == 0)) 4003fd58: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED 4003fd5c: 80 90 40 1d orcc %g1, %i5, %g0 <== NOT EXECUTED 4003fd60: 02 80 00 38 be 4003fe40 <== NOT EXECUTED 4003fd64: 80 a0 40 1a cmp %g1, %i2 <== NOT EXECUTED if (cls2add != cls_added) 4003fd68: 02 80 00 08 be 4003fd88 <== NOT EXECUTED 4003fd6c: b4 26 80 01 sub %i2, %g1, %i2 <== NOT EXECUTED uint32_t missing = (cls2add - cls_added) << fs_info->vol.bpc_log2; 4003fd70: c4 0e 20 0c ldub [ %i0 + 0xc ], %g2 <== NOT EXECUTED 4003fd74: b5 2e 80 02 sll %i2, %g2, %i2 <== NOT EXECUTED new_length -= bytes2add < missing ? bytes2add : missing; 4003fd78: 80 a6 80 11 cmp %i2, %l1 <== NOT EXECUTED 4003fd7c: 38 80 00 02 bgu,a 4003fd84 <== NOT EXECUTED 4003fd80: b4 10 00 11 mov %l1, %i2 <== NOT EXECUTED 4003fd84: b6 26 c0 1a sub %i3, %i2, %i3 <== NOT EXECUTED if (cls_added > 0) 4003fd88: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003fd8c: 22 80 00 47 be,a 4003fea8 <== NOT EXECUTED 4003fd90: f6 27 00 00 st %i3, [ %i4 ] <== NOT EXECUTED if ( fat_fd->fat_file_size == 0 ) 4003fd94: d6 06 60 18 ld [ %i1 + 0x18 ], %o3 <== NOT EXECUTED 4003fd98: 80 a2 e0 00 cmp %o3, 0 <== NOT EXECUTED 4003fd9c: 32 80 00 48 bne,a 4003febc <== NOT EXECUTED 4003fda0: d2 06 60 3c ld [ %i1 + 0x3c ], %o1 <== NOT EXECUTED fat_fd->map.disk_cln = chain; 4003fda4: c4 07 bf f0 ld [ %fp + -16 ], %g2 <== NOT EXECUTED fat_fd->flags |= FAT_FILE_META_DATA_CHANGED; 4003fda8: c2 0e 60 30 ldub [ %i1 + 0x30 ], %g1 <== NOT EXECUTED 4003fdac: 82 10 60 02 or %g1, 2, %g1 <== NOT EXECUTED 4003fdb0: c4 26 60 38 st %g2, [ %i1 + 0x38 ] <== NOT EXECUTED fat_fd->map.file_cln = 0; 4003fdb4: c0 26 60 34 clr [ %i1 + 0x34 ] <== NOT EXECUTED fat_fd->cln = cln; 4003fdb8: c4 26 60 1c st %g2, [ %i1 + 0x1c ] <== NOT EXECUTED fat_fd->flags |= FAT_FILE_META_DATA_CHANGED; 4003fdbc: c2 2e 60 30 stb %g1, [ %i1 + 0x30 ] <== NOT EXECUTED fat_fd->map.last_cln = last_cl; 4003fdc0: c2 07 bf f8 ld [ %fp + -8 ], %g1 <== NOT EXECUTED 4003fdc4: c2 26 60 3c st %g1, [ %i1 + 0x3c ] <== NOT EXECUTED if (fat_fd->fat_file_type == FAT_DIRECTORY) 4003fdc8: c2 06 60 10 ld [ %i1 + 0x10 ], %g1 <== NOT EXECUTED 4003fdcc: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003fdd0: 32 80 00 36 bne,a 4003fea8 <== NOT EXECUTED 4003fdd4: f6 27 00 00 st %i3, [ %i4 ] <== NOT EXECUTED rc = fat_init_clusters_chain(fs_info, chain); 4003fdd8: d2 07 bf f0 ld [ %fp + -16 ], %o1 <== NOT EXECUTED 4003fddc: 40 00 05 71 call 400413a0 <== NOT EXECUTED 4003fde0: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if ( rc != RC_OK ) 4003fde4: 82 92 20 00 orcc %o0, 0, %g1 <== NOT EXECUTED 4003fde8: 22 80 00 30 be,a 4003fea8 <== NOT EXECUTED 4003fdec: f6 27 00 00 st %i3, [ %i4 ] <== NOT EXECUTED fat_free_fat_clusters_chain(fs_info, chain); 4003fdf0: d2 07 bf f0 ld [ %fp + -16 ], %o1 <== NOT EXECUTED 4003fdf4: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 4003fdf8: 7f ff fc c8 call 4003f118 <== NOT EXECUTED 4003fdfc: a0 10 00 01 mov %g1, %l0 <== NOT EXECUTED return rc; 4003fe00: 81 c7 e0 08 ret <== NOT EXECUTED 4003fe04: 91 e8 00 10 restore %g0, %l0, %o0 <== NOT EXECUTED if (zero_fill && bytes_remain > 0) { 4003fe08: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 4003fe0c: 12 80 00 12 bne 4003fe54 <== NOT EXECUTED 4003fe10: a2 10 20 00 clr %l1 <== NOT EXECUTED return RC_OK; 4003fe14: a0 10 20 00 clr %l0 <== NOT EXECUTED } 4003fe18: b0 10 00 10 mov %l0, %i0 <== NOT EXECUTED 4003fe1c: 81 c7 e0 08 ret <== NOT EXECUTED 4003fe20: 81 e8 00 00 restore <== NOT EXECUTED if ((FAT_FD_OF_ROOT_DIR(fat_fd)) && 4003fe24: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 4003fe28: 32 bf ff af bne,a 4003fce4 <== NOT EXECUTED 4003fe2c: fa 06 20 08 ld [ %i0 + 8 ], %i5 <== NOT EXECUTED 4003fe30: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 4003fe34: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 4003fe38: 22 bf ff ab be,a 4003fce4 <== NOT EXECUTED 4003fe3c: fa 06 20 08 ld [ %i0 + 8 ], %i5 <== NOT EXECUTED rtems_set_errno_and_return_minus_one(ENOSPC); 4003fe40: 40 00 72 b5 call 4005c914 <__errno> <== NOT EXECUTED 4003fe44: a0 10 3f ff mov -1, %l0 <== NOT EXECUTED 4003fe48: 82 10 20 1c mov 0x1c, %g1 <== NOT EXECUTED 4003fe4c: 10 bf ff f3 b 4003fe18 <== NOT EXECUTED 4003fe50: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED uint32_t cl_start = start >> fs_info->vol.bpc_log2; 4003fe54: d4 0e 20 0c ldub [ %i0 + 0xc ], %o2 <== NOT EXECUTED rc = fat_file_lseek(fs_info, fat_fd, cl_start, &cur_cln); 4003fe58: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003fe5c: 95 30 40 0a srl %g1, %o2, %o2 <== NOT EXECUTED 4003fe60: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003fe64: 7f ff fd 5a call 4003f3cc <== NOT EXECUTED 4003fe68: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003fe6c: a0 92 60 00 orcc %o1, 0, %l0 <== NOT EXECUTED 4003fe70: 32 bf ff eb bne,a 4003fe1c <== NOT EXECUTED 4003fe74: b0 10 00 10 mov %l0, %i0 <== NOT EXECUTED bytes_written = fat_cluster_set (fs_info, cur_cln, ofs, bytes_remain, 0); 4003fe78: d2 07 bf fc ld [ %fp + -4 ], %o1 <== NOT EXECUTED 4003fe7c: 98 10 20 00 clr %o4 <== NOT EXECUTED 4003fe80: 96 10 00 1d mov %i5, %o3 <== NOT EXECUTED 4003fe84: 94 10 00 12 mov %l2, %o2 <== NOT EXECUTED 4003fe88: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 4003fe8c: 40 00 01 ed call 40040640 <== NOT EXECUTED 4003fe90: a0 10 3f ff mov -1, %l0 <== NOT EXECUTED if (bytes_remain != bytes_written) 4003fe94: 80 a2 00 1d cmp %o0, %i5 <== NOT EXECUTED 4003fe98: 32 bf ff e1 bne,a 4003fe1c <== NOT EXECUTED 4003fe9c: b0 10 00 10 mov %l0, %i0 <== NOT EXECUTED 4003fea0: 10 bf ff 9f b 4003fd1c <== NOT EXECUTED 4003fea4: 80 a4 60 00 cmp %l1, 0 <== NOT EXECUTED fat_fd->flags |= FAT_FILE_META_DATA_CHANGED; 4003fea8: c2 0e 60 30 ldub [ %i1 + 0x30 ], %g1 <== NOT EXECUTED 4003feac: 82 10 60 02 or %g1, 2, %g1 <== NOT EXECUTED fat_fd->fat_file_size = s; 4003feb0: f6 26 60 18 st %i3, [ %i1 + 0x18 ] <== NOT EXECUTED return RC_OK; 4003feb4: 10 bf ff d9 b 4003fe18 <== NOT EXECUTED 4003feb8: c2 2e 60 30 stb %g1, [ %i1 + 0x30 ] <== NOT EXECUTED if (fat_fd->map.last_cln != FAT_UNDEFINED_VALUE) 4003febc: 80 a2 7f ff cmp %o1, -1 <== NOT EXECUTED 4003fec0: 22 80 00 0d be,a 4003fef4 <== NOT EXECUTED 4003fec4: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED old_last_cl = fat_fd->map.last_cln; 4003fec8: d2 27 bf f4 st %o1, [ %fp + -12 ] <== NOT EXECUTED rc = fat_set_fat_cluster(fs_info, old_last_cl, chain); 4003fecc: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 4003fed0: 7f ff fb f0 call 4003ee90 <== NOT EXECUTED 4003fed4: d4 07 bf f0 ld [ %fp + -16 ], %o2 <== NOT EXECUTED if ( rc != RC_OK ) 4003fed8: 82 92 20 00 orcc %o0, 0, %g1 <== NOT EXECUTED 4003fedc: 12 bf ff c6 bne 4003fdf4 <== NOT EXECUTED 4003fee0: d2 07 bf f0 ld [ %fp + -16 ], %o1 <== NOT EXECUTED fat_buf_release(fs_info); 4003fee4: 40 00 01 83 call 400404f0 <== NOT EXECUTED 4003fee8: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED fat_fd->map.last_cln = last_cl; 4003feec: 10 bf ff b6 b 4003fdc4 <== NOT EXECUTED 4003fef0: c2 07 bf f8 ld [ %fp + -8 ], %g1 <== NOT EXECUTED rc = fat_file_ioctl(fs_info, fat_fd, F_CLU_NUM, 4003fef4: 98 07 bf f4 add %fp, -12, %o4 <== NOT EXECUTED 4003fef8: 96 02 ff ff add %o3, -1, %o3 <== NOT EXECUTED 4003fefc: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 4003ff00: 7f ff ff 37 call 4003fbdc <== NOT EXECUTED 4003ff04: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 4003ff08: d2 07 bf f4 ld [ %fp + -12 ], %o1 <== NOT EXECUTED if ( rc != RC_OK ) 4003ff0c: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003ff10: 02 bf ff ef be 4003fecc <== NOT EXECUTED 4003ff14: 82 10 00 08 mov %o0, %g1 <== NOT EXECUTED 4003ff18: 10 bf ff b7 b 4003fdf4 <== NOT EXECUTED 4003ff1c: d2 07 bf f0 ld [ %fp + -16 ], %o1 <== NOT EXECUTED =============================================================================== 4003fbdc : { 4003fbdc: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED va_start(ap, cmd); 4003fbe0: 82 07 a0 50 add %fp, 0x50, %g1 <== NOT EXECUTED 4003fbe4: f6 27 a0 50 st %i3, [ %fp + 0x50 ] <== NOT EXECUTED switch (cmd) 4003fbe8: 80 a6 a0 01 cmp %i2, 1 <== NOT EXECUTED va_start(ap, cmd); 4003fbec: f8 27 a0 54 st %i4, [ %fp + 0x54 ] <== NOT EXECUTED 4003fbf0: fa 27 a0 58 st %i5, [ %fp + 0x58 ] <== NOT EXECUTED uint32_t cur_cln = 0; 4003fbf4: c0 27 bf f8 clr [ %fp + -8 ] <== NOT EXECUTED switch (cmd) 4003fbf8: 12 80 00 22 bne 4003fc80 <== NOT EXECUTED 4003fbfc: c2 27 bf fc st %g1, [ %fp + -4 ] <== NOT EXECUTED ret = va_arg(ap, uint32_t *); 4003fc00: 84 07 a0 58 add %fp, 0x58, %g2 <== NOT EXECUTED 4003fc04: c4 27 bf fc st %g2, [ %fp + -4 ] <== NOT EXECUTED if ( pos >= fat_fd->fat_file_size ) { 4003fc08: c4 06 60 18 ld [ %i1 + 0x18 ], %g2 <== NOT EXECUTED 4003fc0c: 80 a0 80 1b cmp %g2, %i3 <== NOT EXECUTED 4003fc10: 08 80 00 22 bleu 4003fc98 <== NOT EXECUTED 4003fc14: ba 10 00 1c mov %i4, %i5 <== NOT EXECUTED if ((FAT_FD_OF_ROOT_DIR(fat_fd)) && 4003fc18: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED 4003fc1c: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003fc20: 32 80 00 0d bne,a 4003fc54 <== NOT EXECUTED 4003fc24: d4 0e 20 0c ldub [ %i0 + 0xc ], %o2 <== NOT EXECUTED 4003fc28: c2 06 60 24 ld [ %i1 + 0x24 ], %g1 <== NOT EXECUTED 4003fc2c: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003fc30: 32 80 00 09 bne,a 4003fc54 <== NOT EXECUTED 4003fc34: d4 0e 20 0c ldub [ %i0 + 0xc ], %o2 <== NOT EXECUTED 4003fc38: c2 0e 20 16 ldub [ %i0 + 0x16 ], %g1 <== NOT EXECUTED 4003fc3c: 80 88 60 03 btst 3, %g1 <== NOT EXECUTED 4003fc40: 22 80 00 05 be,a 4003fc54 <== NOT EXECUTED 4003fc44: d4 0e 20 0c ldub [ %i0 + 0xc ], %o2 <== NOT EXECUTED *ret = 0; 4003fc48: c0 27 00 00 clr [ %i4 ] <== NOT EXECUTED break; 4003fc4c: 81 c7 e0 08 ret <== NOT EXECUTED 4003fc50: 91 e8 20 00 restore %g0, 0, %o0 <== NOT EXECUTED rc = fat_file_lseek(fs_info, fat_fd, cl_start, &cur_cln); 4003fc54: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 4003fc58: 96 07 bf f8 add %fp, -8, %o3 <== NOT EXECUTED 4003fc5c: 95 36 c0 0a srl %i3, %o2, %o2 <== NOT EXECUTED 4003fc60: 7f ff fd db call 4003f3cc <== NOT EXECUTED 4003fc64: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED if ( rc != RC_OK ) 4003fc68: b0 92 60 00 orcc %o1, 0, %i0 <== NOT EXECUTED 4003fc6c: 12 80 00 03 bne 4003fc78 <== NOT EXECUTED 4003fc70: c2 07 bf f8 ld [ %fp + -8 ], %g1 <== NOT EXECUTED *ret = cur_cln; 4003fc74: c2 27 40 00 st %g1, [ %i5 ] <== NOT EXECUTED break; 4003fc78: 81 c7 e0 08 ret <== NOT EXECUTED 4003fc7c: 81 e8 00 00 restore <== NOT EXECUTED errno = EINVAL; 4003fc80: 40 00 73 25 call 4005c914 <__errno> <== NOT EXECUTED 4003fc84: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 4003fc88: 82 10 20 16 mov 0x16, %g1 <== NOT EXECUTED 4003fc8c: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED } 4003fc90: 81 c7 e0 08 ret <== NOT EXECUTED 4003fc94: 81 e8 00 00 restore <== NOT EXECUTED rtems_set_errno_and_return_minus_one( EIO ); 4003fc98: 40 00 73 1f call 4005c914 <__errno> <== NOT EXECUTED 4003fc9c: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 4003fca0: 82 10 20 05 mov 5, %g1 <== NOT EXECUTED 4003fca4: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 4003fca8: 81 c7 e0 08 ret <== NOT EXECUTED 4003fcac: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 40040130 : return ( ((fat_cluster_num_to_sector512_num(fs_info, pos->cln) + 40040130: c2 02 60 20 ld [ %o1 + 0x20 ], %g1 <== NOT EXECUTED if (cln == 1) 40040134: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 40040138: c6 02 40 00 ld [ %o1 ], %g3 <== NOT EXECUTED previous = the_node->previous; 4004013c: c4 02 60 04 ld [ %o1 + 4 ], %g2 <== NOT EXECUTED (pos->ofs >> FAT_SECTOR512_BITS)) << 4) + 40040140: c2 02 60 24 ld [ %o1 + 0x24 ], %g1 <== NOT EXECUTED next->previous = previous; 40040144: c4 20 e0 04 st %g2, [ %g3 + 4 ] <== NOT EXECUTED ((pos->ofs >> 5) & (FAT_DIRENTRIES_PER_SEC512 - 1)) ); 40040148: 83 30 60 05 srl %g1, 5, %g1 <== NOT EXECUTED previous->next = next; 4004014c: c6 20 80 00 st %g3, [ %g2 ] <== NOT EXECUTED rtems_chain_append_unprotected((hash) + ((key1) % FAT_HASH_MODULE), &(el)->link); 40040150: 82 08 60 01 and %g1, 1, %g1 <== NOT EXECUTED 40040154: c4 02 20 78 ld [ %o0 + 0x78 ], %g2 <== NOT EXECUTED 40040158: 87 28 60 01 sll %g1, 1, %g3 <== NOT EXECUTED 4004015c: 82 00 c0 01 add %g3, %g1, %g1 <== NOT EXECUTED 40040160: 83 28 60 02 sll %g1, 2, %g1 <== NOT EXECUTED 40040164: 82 00 80 01 add %g2, %g1, %g1 <== NOT EXECUTED old_last = tail->previous; 40040168: c4 00 60 08 ld [ %g1 + 8 ], %g2 <== NOT EXECUTED return &the_chain->Tail.Node; 4004016c: 86 00 60 04 add %g1, 4, %g3 <== NOT EXECUTED the_node->next = tail; 40040170: c6 22 40 00 st %g3, [ %o1 ] <== NOT EXECUTED tail->previous = the_node; 40040174: d2 20 60 08 st %o1, [ %g1 + 8 ] <== NOT EXECUTED old_last->next = the_node; 40040178: d2 20 80 00 st %o1, [ %g2 ] <== NOT EXECUTED fat_fd->flags |= FAT_FILE_REMOVED; 4004017c: c2 0a 60 30 ldub [ %o1 + 0x30 ], %g1 <== NOT EXECUTED 40040180: 82 10 60 01 or %g1, 1, %g1 <== NOT EXECUTED the_node->previous = old_last; 40040184: c4 22 60 04 st %g2, [ %o1 + 4 ] <== NOT EXECUTED } 40040188: 81 c3 e0 08 retl <== NOT EXECUTED 4004018c: c2 2a 60 30 stb %g1, [ %o1 + 0x30 ] <== NOT EXECUTED =============================================================================== 4003f468 : { 4003f468: 9d e3 bf a0 save %sp, -96, %sp <== NOT EXECUTED return ( ((fat_cluster_num_to_sector512_num(fs_info, pos->cln) + 4003f46c: c2 06 40 00 ld [ %i1 ], %g1 <== NOT EXECUTED if (cln == 1) 4003f470: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003f474: 02 80 00 0b be 4003f4a0 <== NOT EXECUTED 4003f478: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4003f47c: 32 80 00 76 bne,a 4003f654 <== NOT EXECUTED 4003f480: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED 4003f484: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 4003f488: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 4003f48c: 22 80 00 72 be,a 4003f654 <== NOT EXECUTED 4003f490: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED return fs_info->vol.rdir_loc; 4003f494: c2 06 20 28 ld [ %i0 + 0x28 ], %g1 <== NOT EXECUTED fs_info->vol.sec_mul); 4003f498: fa 0e 20 03 ldub [ %i0 + 3 ], %i5 <== NOT EXECUTED return (fat_cluster_num_to_sector_num(fs_info, cln) << 4003f49c: 83 28 40 1d sll %g1, %i5, %g1 <== NOT EXECUTED (pos->ofs >> FAT_SECTOR512_BITS)) << 4) + 4003f4a0: c4 06 60 04 ld [ %i1 + 4 ], %g2 <== NOT EXECUTED rtems_chain_node *the_node = rtems_chain_first(hash + mod); 4003f4a4: e0 06 20 74 ld [ %i0 + 0x74 ], %l0 <== NOT EXECUTED 4003f4a8: bb 30 a0 09 srl %g2, 9, %i5 <== NOT EXECUTED ((pos->ofs >> 5) & (FAT_DIRENTRIES_PER_SEC512 - 1)) ); 4003f4ac: 85 30 a0 05 srl %g2, 5, %g2 <== NOT EXECUTED return ( ((fat_cluster_num_to_sector512_num(fs_info, pos->cln) + 4003f4b0: ba 07 40 01 add %i5, %g1, %i5 <== NOT EXECUTED ((pos->ofs >> 5) & (FAT_DIRENTRIES_PER_SEC512 - 1)) ); 4003f4b4: 84 08 a0 0f and %g2, 0xf, %g2 <== NOT EXECUTED (pos->ofs >> FAT_SECTOR512_BITS)) << 4) + 4003f4b8: bb 2f 60 04 sll %i5, 4, %i5 <== NOT EXECUTED 4003f4bc: ba 07 40 02 add %i5, %g2, %i5 <== NOT EXECUTED uint32_t mod = (key1) % FAT_HASH_MODULE; 4003f4c0: 82 0f 60 01 and %i5, 1, %g1 <== NOT EXECUTED rtems_chain_node *the_node = rtems_chain_first(hash + mod); 4003f4c4: b7 28 60 01 sll %g1, 1, %i3 <== NOT EXECUTED 4003f4c8: b6 06 c0 01 add %i3, %g1, %i3 <== NOT EXECUTED 4003f4cc: b7 2e e0 02 sll %i3, 2, %i3 <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 4003f4d0: c8 04 00 1b ld [ %l0 + %i3 ], %g4 <== NOT EXECUTED 4003f4d4: a0 04 00 1b add %l0, %i3, %l0 <== NOT EXECUTED return &the_chain->Tail.Node; 4003f4d8: b8 04 20 04 add %l0, 4, %i4 <== NOT EXECUTED for ( ; !rtems_chain_is_tail((hash) + mod, the_node) ; ) 4003f4dc: 80 a1 00 1c cmp %g4, %i4 <== NOT EXECUTED 4003f4e0: 22 80 00 1e be,a 4003f558 <== NOT EXECUTED 4003f4e4: de 06 20 78 ld [ %i0 + 0x78 ], %o7 <== NOT EXECUTED return ( ((fat_cluster_num_to_sector512_num(fs_info, pos->cln) + 4003f4e8: c2 01 20 20 ld [ %g4 + 0x20 ], %g1 <== NOT EXECUTED if (cln == 1) 4003f4ec: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003f4f0: 02 80 00 0b be 4003f51c <== NOT EXECUTED 4003f4f4: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4003f4f8: 32 80 00 5c bne,a 4003f668 <== NOT EXECUTED 4003f4fc: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED 4003f500: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 4003f504: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 4003f508: 22 80 00 58 be,a 4003f668 <== NOT EXECUTED 4003f50c: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED return fs_info->vol.rdir_loc; 4003f510: c2 06 20 28 ld [ %i0 + 0x28 ], %g1 <== NOT EXECUTED fs_info->vol.sec_mul); 4003f514: c4 0e 20 03 ldub [ %i0 + 3 ], %g2 <== NOT EXECUTED return (fat_cluster_num_to_sector_num(fs_info, cln) << 4003f518: 83 28 40 02 sll %g1, %g2, %g1 <== NOT EXECUTED (pos->ofs >> FAT_SECTOR512_BITS)) << 4) + 4003f51c: c6 01 20 24 ld [ %g4 + 0x24 ], %g3 <== NOT EXECUTED 4003f520: 85 30 e0 09 srl %g3, 9, %g2 <== NOT EXECUTED ((pos->ofs >> 5) & (FAT_DIRENTRIES_PER_SEC512 - 1)) ); 4003f524: 87 30 e0 05 srl %g3, 5, %g3 <== NOT EXECUTED return ( ((fat_cluster_num_to_sector512_num(fs_info, pos->cln) + 4003f528: 82 00 80 01 add %g2, %g1, %g1 <== NOT EXECUTED ((pos->ofs >> 5) & (FAT_DIRENTRIES_PER_SEC512 - 1)) ); 4003f52c: 86 08 e0 0f and %g3, 0xf, %g3 <== NOT EXECUTED (pos->ofs >> FAT_SECTOR512_BITS)) << 4) + 4003f530: 83 28 60 04 sll %g1, 4, %g1 <== NOT EXECUTED 4003f534: 82 00 40 03 add %g1, %g3, %g1 <== NOT EXECUTED if ( (key1) == ck) 4003f538: 80 a7 40 01 cmp %i5, %g1 <== NOT EXECUTED 4003f53c: 22 80 00 80 be,a 4003f73c <== NOT EXECUTED 4003f540: c2 01 20 08 ld [ %g4 + 8 ], %g1 <== NOT EXECUTED the_node = the_node->next; 4003f544: c8 01 00 00 ld [ %g4 ], %g4 <== NOT EXECUTED for ( ; !rtems_chain_is_tail((hash) + mod, the_node) ; ) 4003f548: 80 a1 00 1c cmp %g4, %i4 <== NOT EXECUTED 4003f54c: 32 bf ff e8 bne,a 4003f4ec <== NOT EXECUTED 4003f550: c2 01 20 20 ld [ %g4 + 0x20 ], %g1 <== NOT EXECUTED rtems_chain_node *the_node = rtems_chain_first(hash + mod); 4003f554: de 06 20 78 ld [ %i0 + 0x78 ], %o7 <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 4003f558: c8 03 c0 1b ld [ %o7 + %i3 ], %g4 <== NOT EXECUTED 4003f55c: 9e 03 c0 1b add %o7, %i3, %o7 <== NOT EXECUTED return &the_chain->Tail.Node; 4003f560: 9e 03 e0 04 add %o7, 4, %o7 <== NOT EXECUTED for ( ; !rtems_chain_is_tail((hash) + mod, the_node) ; ) 4003f564: 80 a1 00 0f cmp %g4, %o7 <== NOT EXECUTED 4003f568: 02 80 00 1e be 4003f5e0 <== NOT EXECUTED 4003f56c: 92 10 20 50 mov 0x50, %o1 <== NOT EXECUTED return ( ((fat_cluster_num_to_sector512_num(fs_info, pos->cln) + 4003f570: c2 01 20 20 ld [ %g4 + 0x20 ], %g1 <== NOT EXECUTED if (cln == 1) 4003f574: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003f578: 02 80 00 0b be 4003f5a4 <== NOT EXECUTED 4003f57c: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4003f580: 32 80 00 3f bne,a 4003f67c <== NOT EXECUTED 4003f584: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED 4003f588: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 4003f58c: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 4003f590: 22 80 00 3b be,a 4003f67c <== NOT EXECUTED 4003f594: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED return fs_info->vol.rdir_loc; 4003f598: c2 06 20 28 ld [ %i0 + 0x28 ], %g1 <== NOT EXECUTED fs_info->vol.sec_mul); 4003f59c: c4 0e 20 03 ldub [ %i0 + 3 ], %g2 <== NOT EXECUTED return (fat_cluster_num_to_sector_num(fs_info, cln) << 4003f5a0: 83 28 40 02 sll %g1, %g2, %g1 <== NOT EXECUTED (pos->ofs >> FAT_SECTOR512_BITS)) << 4) + 4003f5a4: c6 01 20 24 ld [ %g4 + 0x24 ], %g3 <== NOT EXECUTED 4003f5a8: 85 30 e0 09 srl %g3, 9, %g2 <== NOT EXECUTED ((pos->ofs >> 5) & (FAT_DIRENTRIES_PER_SEC512 - 1)) ); 4003f5ac: 87 30 e0 05 srl %g3, 5, %g3 <== NOT EXECUTED return ( ((fat_cluster_num_to_sector512_num(fs_info, pos->cln) + 4003f5b0: 82 00 80 01 add %g2, %g1, %g1 <== NOT EXECUTED ((pos->ofs >> 5) & (FAT_DIRENTRIES_PER_SEC512 - 1)) ); 4003f5b4: 86 08 e0 0f and %g3, 0xf, %g3 <== NOT EXECUTED (pos->ofs >> FAT_SECTOR512_BITS)) << 4) + 4003f5b8: 83 28 60 04 sll %g1, 4, %g1 <== NOT EXECUTED 4003f5bc: 82 00 40 03 add %g1, %g3, %g1 <== NOT EXECUTED if ( (key1) == ck) 4003f5c0: 80 a7 40 01 cmp %i5, %g1 <== NOT EXECUTED 4003f5c4: 02 80 00 33 be 4003f690 <== NOT EXECUTED 4003f5c8: 80 a7 60 00 cmp %i5, 0 <== NOT EXECUTED the_node = the_node->next; 4003f5cc: c8 01 00 00 ld [ %g4 ], %g4 <== NOT EXECUTED for ( ; !rtems_chain_is_tail((hash) + mod, the_node) ; ) 4003f5d0: 80 a1 00 0f cmp %g4, %o7 <== NOT EXECUTED 4003f5d4: 32 bf ff e8 bne,a 4003f574 <== NOT EXECUTED 4003f5d8: c2 01 20 20 ld [ %g4 + 0x20 ], %g1 <== NOT EXECUTED lfat_fd = (*fat_fd) = (fat_file_fd_t*)calloc(1, sizeof(fat_file_fd_t)); 4003f5dc: 92 10 20 50 mov 0x50, %o1 <== NOT EXECUTED 4003f5e0: 7f ff 2b 88 call 4000a400 <== NOT EXECUTED 4003f5e4: 90 10 20 01 mov 1, %o0 <== NOT EXECUTED 4003f5e8: d0 26 80 00 st %o0, [ %i2 ] <== NOT EXECUTED if ( lfat_fd == NULL ) 4003f5ec: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f5f0: 02 80 00 5a be 4003f758 <== NOT EXECUTED 4003f5f4: a2 10 00 08 mov %o0, %l1 <== NOT EXECUTED lfat_fd->flags &= ~FAT_FILE_REMOVED; 4003f5f8: c2 0c 60 30 ldub [ %l1 + 0x30 ], %g1 <== NOT EXECUTED 4003f5fc: 82 08 7f fe and %g1, -2, %g1 <== NOT EXECUTED 4003f600: c2 2c 60 30 stb %g1, [ %l1 + 0x30 ] <== NOT EXECUTED lfat_fd->map.last_cln = FAT_UNDEFINED_VALUE; 4003f604: 82 10 3f ff mov -1, %g1 <== NOT EXECUTED lfat_fd->dir_pos = *dir_pos; 4003f608: f6 06 40 00 ld [ %i1 ], %i3 <== NOT EXECUTED 4003f60c: c8 06 60 04 ld [ %i1 + 4 ], %g4 <== NOT EXECUTED 4003f610: c6 06 60 08 ld [ %i1 + 8 ], %g3 <== NOT EXECUTED 4003f614: c4 06 60 0c ld [ %i1 + 0xc ], %g2 <== NOT EXECUTED lfat_fd->map.last_cln = FAT_UNDEFINED_VALUE; 4003f618: c2 24 60 3c st %g1, [ %l1 + 0x3c ] <== NOT EXECUTED lfat_fd->links_num = 1; 4003f61c: b4 10 20 01 mov 1, %i2 <== NOT EXECUTED old_last = tail->previous; 4003f620: c2 04 20 08 ld [ %l0 + 8 ], %g1 <== NOT EXECUTED 4003f624: f4 24 60 08 st %i2, [ %l1 + 8 ] <== NOT EXECUTED lfat_fd->dir_pos = *dir_pos; 4003f628: f6 24 60 20 st %i3, [ %l1 + 0x20 ] <== NOT EXECUTED 4003f62c: c8 24 60 24 st %g4, [ %l1 + 0x24 ] <== NOT EXECUTED 4003f630: c6 24 60 28 st %g3, [ %l1 + 0x28 ] <== NOT EXECUTED 4003f634: c4 24 60 2c st %g2, [ %l1 + 0x2c ] <== NOT EXECUTED lfat_fd->ino = key; 4003f638: fa 24 60 0c st %i5, [ %l1 + 0xc ] <== NOT EXECUTED the_node->next = tail; 4003f63c: f8 24 40 00 st %i4, [ %l1 ] <== NOT EXECUTED tail->previous = the_node; 4003f640: e2 24 20 08 st %l1, [ %l0 + 8 ] <== NOT EXECUTED old_last->next = the_node; 4003f644: e2 20 40 00 st %l1, [ %g1 ] <== NOT EXECUTED the_node->previous = old_last; 4003f648: c2 24 60 04 st %g1, [ %l1 + 4 ] <== NOT EXECUTED } 4003f64c: 81 c7 e0 08 ret <== NOT EXECUTED 4003f650: 91 e8 20 00 restore %g0, 0, %o0 <== NOT EXECUTED return (((cln - FAT_RSRVD_CLN) << fs_info->vol.spc_log2) + 4003f654: c4 06 20 3c ld [ %i0 + 0x3c ], %g2 <== NOT EXECUTED 4003f658: 82 00 7f fe add %g1, -2, %g1 <== NOT EXECUTED 4003f65c: 83 28 40 03 sll %g1, %g3, %g1 <== NOT EXECUTED 4003f660: 10 bf ff 8e b 4003f498 <== NOT EXECUTED 4003f664: 82 00 40 02 add %g1, %g2, %g1 <== NOT EXECUTED 4003f668: c4 06 20 3c ld [ %i0 + 0x3c ], %g2 <== NOT EXECUTED 4003f66c: 82 00 7f fe add %g1, -2, %g1 <== NOT EXECUTED 4003f670: 83 28 40 03 sll %g1, %g3, %g1 <== NOT EXECUTED 4003f674: 10 bf ff a8 b 4003f514 <== NOT EXECUTED 4003f678: 82 00 40 02 add %g1, %g2, %g1 <== NOT EXECUTED 4003f67c: c4 06 20 3c ld [ %i0 + 0x3c ], %g2 <== NOT EXECUTED 4003f680: 82 00 7f fe add %g1, -2, %g1 <== NOT EXECUTED 4003f684: 83 28 40 03 sll %g1, %g3, %g1 <== NOT EXECUTED 4003f688: 10 bf ff c5 b 4003f59c <== NOT EXECUTED 4003f68c: 82 00 40 02 add %g1, %g2, %g1 <== NOT EXECUTED if ( ((key2) == 0) || ((key2) == ffd->ino) ) 4003f690: 02 80 00 07 be 4003f6ac <== NOT EXECUTED 4003f694: 92 10 20 50 mov 0x50, %o1 <== NOT EXECUTED 4003f698: c2 01 20 0c ld [ %g4 + 0xc ], %g1 <== NOT EXECUTED 4003f69c: 80 a7 40 01 cmp %i5, %g1 <== NOT EXECUTED 4003f6a0: 32 bf ff cc bne,a 4003f5d0 <== NOT EXECUTED 4003f6a4: c8 01 00 00 ld [ %g4 ], %g4 <== NOT EXECUTED lfat_fd = (*fat_fd) = (fat_file_fd_t*)calloc(1, sizeof(fat_file_fd_t)); 4003f6a8: 92 10 20 50 mov 0x50, %o1 <== NOT EXECUTED 4003f6ac: 7f ff 2b 55 call 4000a400 <== NOT EXECUTED 4003f6b0: 90 10 20 01 mov 1, %o0 <== NOT EXECUTED 4003f6b4: d0 26 80 00 st %o0, [ %i2 ] <== NOT EXECUTED if ( lfat_fd == NULL ) 4003f6b8: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f6bc: 02 80 00 27 be 4003f758 <== NOT EXECUTED 4003f6c0: a2 10 00 08 mov %o0, %l1 <== NOT EXECUTED lfat_fd->flags &= ~FAT_FILE_REMOVED; 4003f6c4: c2 0c 60 30 ldub [ %l1 + 0x30 ], %g1 <== NOT EXECUTED 4003f6c8: 82 08 7f fe and %g1, -2, %g1 <== NOT EXECUTED lfat_fd->dir_pos = *dir_pos; 4003f6cc: fa 06 40 00 ld [ %i1 ], %i5 <== NOT EXECUTED 4003f6d0: c8 06 60 04 ld [ %i1 + 4 ], %g4 <== NOT EXECUTED 4003f6d4: c6 06 60 08 ld [ %i1 + 8 ], %g3 <== NOT EXECUTED 4003f6d8: c4 06 60 0c ld [ %i1 + 0xc ], %g2 <== NOT EXECUTED lfat_fd->flags &= ~FAT_FILE_REMOVED; 4003f6dc: c2 2c 60 30 stb %g1, [ %l1 + 0x30 ] <== NOT EXECUTED lfat_fd->links_num = 1; 4003f6e0: 82 10 20 01 mov 1, %g1 <== NOT EXECUTED lfat_fd->dir_pos = *dir_pos; 4003f6e4: fa 24 60 20 st %i5, [ %l1 + 0x20 ] <== NOT EXECUTED lfat_fd->ino = fat_get_unique_ino(fs_info); 4003f6e8: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED lfat_fd->links_num = 1; 4003f6ec: c2 24 60 08 st %g1, [ %l1 + 8 ] <== NOT EXECUTED lfat_fd->map.last_cln = FAT_UNDEFINED_VALUE; 4003f6f0: 82 10 3f ff mov -1, %g1 <== NOT EXECUTED lfat_fd->dir_pos = *dir_pos; 4003f6f4: c8 24 60 24 st %g4, [ %l1 + 0x24 ] <== NOT EXECUTED lfat_fd->map.last_cln = FAT_UNDEFINED_VALUE; 4003f6f8: c2 24 60 3c st %g1, [ %l1 + 0x3c ] <== NOT EXECUTED lfat_fd->dir_pos = *dir_pos; 4003f6fc: c6 24 60 28 st %g3, [ %l1 + 0x28 ] <== NOT EXECUTED lfat_fd->ino = fat_get_unique_ino(fs_info); 4003f700: 40 00 07 46 call 40041418 <== NOT EXECUTED 4003f704: c4 24 60 2c st %g2, [ %l1 + 0x2c ] <== NOT EXECUTED if ( lfat_fd->ino == 0 ) 4003f708: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f70c: 02 80 00 11 be 4003f750 <== NOT EXECUTED 4003f710: d0 24 60 0c st %o0, [ %l1 + 0xc ] <== NOT EXECUTED 4003f714: e0 06 20 74 ld [ %i0 + 0x74 ], %l0 <== NOT EXECUTED 4003f718: a0 04 00 1b add %l0, %i3, %l0 <== NOT EXECUTED old_last = tail->previous; 4003f71c: c2 04 20 08 ld [ %l0 + 8 ], %g1 <== NOT EXECUTED 4003f720: b8 04 20 04 add %l0, 4, %i4 <== NOT EXECUTED the_node->next = tail; 4003f724: f8 24 40 00 st %i4, [ %l1 ] <== NOT EXECUTED tail->previous = the_node; 4003f728: e2 24 20 08 st %l1, [ %l0 + 8 ] <== NOT EXECUTED old_last->next = the_node; 4003f72c: e2 20 40 00 st %l1, [ %g1 ] <== NOT EXECUTED the_node->previous = old_last; 4003f730: c2 24 60 04 st %g1, [ %l1 + 4 ] <== NOT EXECUTED } 4003f734: 81 c7 e0 08 ret <== NOT EXECUTED 4003f738: 91 e8 20 00 restore %g0, 0, %o0 <== NOT EXECUTED (*fat_fd) = lfat_fd; 4003f73c: c8 26 80 00 st %g4, [ %i2 ] <== NOT EXECUTED lfat_fd->links_num++; 4003f740: 82 00 60 01 inc %g1 <== NOT EXECUTED 4003f744: c2 21 20 08 st %g1, [ %g4 + 8 ] <== NOT EXECUTED return rc; 4003f748: 81 c7 e0 08 ret <== NOT EXECUTED 4003f74c: 91 e8 20 00 restore %g0, 0, %o0 <== NOT EXECUTED free((*fat_fd)); 4003f750: 7f ff 2f cc call 4000b680 <== NOT EXECUTED 4003f754: d0 06 80 00 ld [ %i2 ], %o0 <== NOT EXECUTED rtems_set_errno_and_return_minus_one( ENOMEM ); 4003f758: 40 00 74 6f call 4005c914 <__errno> <== NOT EXECUTED 4003f75c: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 4003f760: 82 10 20 0c mov 0xc, %g1 <== NOT EXECUTED 4003f764: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 4003f768: 81 c7 e0 08 ret <== NOT EXECUTED 4003f76c: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 4003f80c : { 4003f80c: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint32_t cur_cln = 0; 4003f810: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED { 4003f814: ba 10 00 18 mov %i0, %i5 <== NOT EXECUTED if (count == 0) 4003f818: 80 a6 e0 00 cmp %i3, 0 <== NOT EXECUTED 4003f81c: 02 80 00 27 be 4003f8b8 <== NOT EXECUTED 4003f820: b0 10 20 00 clr %i0 <== NOT EXECUTED if ( start >= fat_fd->fat_file_size ) 4003f824: c2 06 60 18 ld [ %i1 + 0x18 ], %g1 <== NOT EXECUTED 4003f828: 80 a0 40 1a cmp %g1, %i2 <== NOT EXECUTED 4003f82c: 08 80 00 23 bleu 4003f8b8 <== NOT EXECUTED 4003f830: 80 a0 40 1b cmp %g1, %i3 <== NOT EXECUTED if ((count > fat_fd->fat_file_size) || 4003f834: 1a 80 00 5d bcc 4003f9a8 <== NOT EXECUTED 4003f838: 84 20 40 1b sub %g1, %i3, %g2 <== NOT EXECUTED count = fat_fd->fat_file_size - start; 4003f83c: b6 20 40 1a sub %g1, %i2, %i3 <== NOT EXECUTED if ((FAT_FD_OF_ROOT_DIR(fat_fd)) && 4003f840: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED 4003f844: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003f848: 32 80 00 1e bne,a 4003f8c0 <== NOT EXECUTED 4003f84c: e4 0f 60 0c ldub [ %i5 + 0xc ], %l2 <== NOT EXECUTED 4003f850: c2 06 60 24 ld [ %i1 + 0x24 ], %g1 <== NOT EXECUTED 4003f854: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003f858: 32 80 00 1a bne,a 4003f8c0 <== NOT EXECUTED 4003f85c: e4 0f 60 0c ldub [ %i5 + 0xc ], %l2 <== NOT EXECUTED 4003f860: c2 0f 60 16 ldub [ %i5 + 0x16 ], %g1 <== NOT EXECUTED 4003f864: 80 88 60 03 btst 3, %g1 <== NOT EXECUTED 4003f868: 22 80 00 16 be,a 4003f8c0 <== NOT EXECUTED 4003f86c: e4 0f 60 0c ldub [ %i5 + 0xc ], %l2 <== NOT EXECUTED sec = fat_cluster_num_to_sector_num(fs_info, fat_fd->cln); 4003f870: c2 06 60 1c ld [ %i1 + 0x1c ], %g1 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4003f874: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003f878: 32 80 00 5c bne,a 4003f9e8 <== NOT EXECUTED 4003f87c: c4 0f 60 05 ldub [ %i5 + 5 ], %g2 <== NOT EXECUTED return fs_info->vol.rdir_loc; 4003f880: c2 07 60 28 ld [ %i5 + 0x28 ], %g1 <== NOT EXECUTED byte = start & (fs_info->vol.bps - 1); 4003f884: d4 17 40 00 lduh [ %i5 ], %o2 <== NOT EXECUTED sec += (start >> fs_info->vol.sec_log2); 4003f888: d2 0f 60 02 ldub [ %i5 + 2 ], %o1 <== NOT EXECUTED byte = start & (fs_info->vol.bps - 1); 4003f88c: 94 02 bf ff add %o2, -1, %o2 <== NOT EXECUTED sec += (start >> fs_info->vol.sec_log2); 4003f890: 93 36 80 09 srl %i2, %o1, %o1 <== NOT EXECUTED ret = _fat_block_read(fs_info, sec, byte, count, buf); 4003f894: 98 10 00 1c mov %i4, %o4 <== NOT EXECUTED 4003f898: 96 10 00 1b mov %i3, %o3 <== NOT EXECUTED 4003f89c: 94 0a 80 1a and %o2, %i2, %o2 <== NOT EXECUTED 4003f8a0: 92 02 40 01 add %o1, %g1, %o1 <== NOT EXECUTED 4003f8a4: 40 00 03 1c call 40040514 <_fat_block_read> <== NOT EXECUTED 4003f8a8: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED 4003f8ac: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003f8b0: 06 80 00 43 bl 4003f9bc <== NOT EXECUTED 4003f8b4: 01 00 00 00 nop <== NOT EXECUTED } 4003f8b8: 81 c7 e0 08 ret <== NOT EXECUTED 4003f8bc: 81 e8 00 00 restore <== NOT EXECUTED cl_start = start >> fs_info->vol.bpc_log2; 4003f8c0: a5 36 80 12 srl %i2, %l2, %l2 <== NOT EXECUTED save_ofs = ofs = start & (fs_info->vol.bpc - 1); 4003f8c4: e0 07 60 08 ld [ %i5 + 8 ], %l0 <== NOT EXECUTED rc = fat_file_lseek(fs_info, fat_fd, cl_start, &cur_cln); 4003f8c8: 94 10 00 12 mov %l2, %o2 <== NOT EXECUTED 4003f8cc: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003f8d0: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003f8d4: 7f ff fe be call 4003f3cc <== NOT EXECUTED 4003f8d8: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003f8dc: b0 92 60 00 orcc %o1, 0, %i0 <== NOT EXECUTED 4003f8e0: 12 bf ff f6 bne 4003f8b8 <== NOT EXECUTED 4003f8e4: a0 04 3f ff add %l0, -1, %l0 <== NOT EXECUTED uint32_t cmpltd = 0; 4003f8e8: a2 10 20 00 clr %l1 <== NOT EXECUTED save_ofs = ofs = start & (fs_info->vol.bpc - 1); 4003f8ec: b4 0c 00 1a and %l0, %i2, %i2 <== NOT EXECUTED 4003f8f0: 10 80 00 1f b 4003f96c <== NOT EXECUTED 4003f8f4: 84 10 00 1a mov %i2, %g2 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4003f8f8: 80 88 e0 03 btst 3, %g3 <== NOT EXECUTED 4003f8fc: 22 80 00 26 be,a 4003f994 <== NOT EXECUTED 4003f900: c6 0f 60 05 ldub [ %i5 + 5 ], %g3 <== NOT EXECUTED return fs_info->vol.rdir_loc; 4003f904: c2 07 60 28 ld [ %i5 + 0x28 ], %g1 <== NOT EXECUTED byte = ofs & (fs_info->vol.bps - 1); 4003f908: d4 17 40 00 lduh [ %i5 ], %o2 <== NOT EXECUTED sec += (ofs >> fs_info->vol.sec_log2); 4003f90c: d2 0f 60 02 ldub [ %i5 + 2 ], %o1 <== NOT EXECUTED 4003f910: 93 30 80 09 srl %g2, %o1, %o1 <== NOT EXECUTED ret = _fat_block_read(fs_info, sec, byte, c, buf + cmpltd); 4003f914: 98 07 00 11 add %i4, %l1, %o4 <== NOT EXECUTED byte = ofs & (fs_info->vol.bps - 1); 4003f918: 94 02 bf ff add %o2, -1, %o2 <== NOT EXECUTED ret = _fat_block_read(fs_info, sec, byte, c, buf + cmpltd); 4003f91c: 96 10 00 10 mov %l0, %o3 <== NOT EXECUTED 4003f920: 94 0a 80 02 and %o2, %g2, %o2 <== NOT EXECUTED 4003f924: 92 02 40 01 add %o1, %g1, %o1 <== NOT EXECUTED 4003f928: 40 00 02 fb call 40040514 <_fat_block_read> <== NOT EXECUTED 4003f92c: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cur_cln, &cur_cln); 4003f930: 94 07 bf fc add %fp, -4, %o2 <== NOT EXECUTED if ( ret < 0 ) 4003f934: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f938: 06 80 00 21 bl 4003f9bc <== NOT EXECUTED 4003f93c: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED save_cln = cur_cln; 4003f940: e6 07 bf fc ld [ %fp + -4 ], %l3 <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cur_cln, &cur_cln); 4003f944: 92 10 00 13 mov %l3, %o1 <== NOT EXECUTED 4003f948: 7f ff fc df call 4003ecc4 <== NOT EXECUTED 4003f94c: b6 26 c0 10 sub %i3, %l0, %i3 <== NOT EXECUTED cmpltd += c; 4003f950: a2 04 40 10 add %l1, %l0, %l1 <== NOT EXECUTED if ( rc != RC_OK ) 4003f954: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f958: 12 bf ff d8 bne 4003f8b8 <== NOT EXECUTED 4003f95c: b0 10 00 08 mov %o0, %i0 <== NOT EXECUTED while (count > 0) 4003f960: 80 a6 e0 00 cmp %i3, 0 <== NOT EXECUTED 4003f964: 02 80 00 18 be 4003f9c4 <== NOT EXECUTED 4003f968: 84 10 20 00 clr %g2 <== NOT EXECUTED c = MIN(count, (fs_info->vol.bpc - ofs)); 4003f96c: e0 07 60 08 ld [ %i5 + 8 ], %l0 <== NOT EXECUTED 4003f970: a0 24 00 02 sub %l0, %g2, %l0 <== NOT EXECUTED 4003f974: 80 a4 00 1b cmp %l0, %i3 <== NOT EXECUTED 4003f978: 38 80 00 02 bgu,a 4003f980 <== NOT EXECUTED 4003f97c: a0 10 00 1b mov %i3, %l0 <== NOT EXECUTED sec = fat_cluster_num_to_sector_num(fs_info, cur_cln); 4003f980: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4003f984: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003f988: 22 bf ff dc be,a 4003f8f8 <== NOT EXECUTED 4003f98c: c6 0f 60 16 ldub [ %i5 + 0x16 ], %g3 <== NOT EXECUTED return (((cln - FAT_RSRVD_CLN) << fs_info->vol.spc_log2) + 4003f990: c6 0f 60 05 ldub [ %i5 + 5 ], %g3 <== NOT EXECUTED 4003f994: d2 07 60 3c ld [ %i5 + 0x3c ], %o1 <== NOT EXECUTED 4003f998: 82 00 7f fe add %g1, -2, %g1 <== NOT EXECUTED 4003f99c: 83 28 40 03 sll %g1, %g3, %g1 <== NOT EXECUTED 4003f9a0: 10 bf ff da b 4003f908 <== NOT EXECUTED 4003f9a4: 82 00 40 09 add %g1, %o1, %g1 <== NOT EXECUTED if ((count > fat_fd->fat_file_size) || 4003f9a8: 80 a0 80 1a cmp %g2, %i2 <== NOT EXECUTED 4003f9ac: 3a bf ff a6 bcc,a 4003f844 <== NOT EXECUTED 4003f9b0: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED 4003f9b4: 10 bf ff a3 b 4003f840 <== NOT EXECUTED 4003f9b8: b6 20 40 1a sub %g1, %i2, %i3 <== NOT EXECUTED } 4003f9bc: 81 c7 e0 08 ret <== NOT EXECUTED 4003f9c0: 91 e8 3f ff restore %g0, -1, %o0 <== NOT EXECUTED ((save_ofs + cmpltd - 1) >> fs_info->vol.bpc_log2); 4003f9c4: c4 0f 60 0c ldub [ %i5 + 0xc ], %g2 <== NOT EXECUTED 4003f9c8: 82 06 bf ff add %i2, -1, %g1 <== NOT EXECUTED fat_fd->map.disk_cln = save_cln; 4003f9cc: e6 26 60 38 st %l3, [ %i1 + 0x38 ] <== NOT EXECUTED ((save_ofs + cmpltd - 1) >> fs_info->vol.bpc_log2); 4003f9d0: 82 00 40 11 add %g1, %l1, %g1 <== NOT EXECUTED 4003f9d4: 83 30 40 02 srl %g1, %g2, %g1 <== NOT EXECUTED fat_fd->map.file_cln = cl_start + 4003f9d8: a4 00 40 12 add %g1, %l2, %l2 <== NOT EXECUTED 4003f9dc: e4 26 60 34 st %l2, [ %i1 + 0x34 ] <== NOT EXECUTED return cmpltd; 4003f9e0: 81 c7 e0 08 ret <== NOT EXECUTED 4003f9e4: 91 e8 00 11 restore %g0, %l1, %o0 <== NOT EXECUTED 4003f9e8: d2 07 60 3c ld [ %i5 + 0x3c ], %o1 <== NOT EXECUTED 4003f9ec: 82 00 7f fe add %g1, -2, %g1 <== NOT EXECUTED 4003f9f0: 83 28 40 02 sll %g1, %g2, %g1 <== NOT EXECUTED 4003f9f4: 10 bf ff a4 b 4003f884 <== NOT EXECUTED 4003f9f8: 82 00 40 09 add %g1, %o1, %g1 <== NOT EXECUTED =============================================================================== 4003f770 : fat_fd->links_num++; 4003f770: c2 02 20 08 ld [ %o0 + 8 ], %g1 <== NOT EXECUTED { 4003f774: 84 10 00 08 mov %o0, %g2 <== NOT EXECUTED fat_fd->links_num++; 4003f778: 82 00 60 01 inc %g1 <== NOT EXECUTED } 4003f77c: 90 10 20 00 clr %o0 <== NOT EXECUTED 4003f780: 81 c3 e0 08 retl <== NOT EXECUTED 4003f784: c2 20 a0 08 st %g1, [ %g2 + 8 ] <== NOT EXECUTED =============================================================================== 40040190 : { 40040190: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint32_t cur_cln = fat_fd->cln; 40040194: f8 06 60 1c ld [ %i1 + 0x1c ], %i4 <== NOT EXECUTED 40040198: f8 27 bf fc st %i4, [ %fp + -4 ] <== NOT EXECUTED if ((FAT_FD_OF_ROOT_DIR(fat_fd)) && 4004019c: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED 400401a0: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 400401a4: 22 80 00 22 be,a 4004022c <== NOT EXECUTED 400401a8: c2 06 60 24 ld [ %i1 + 0x24 ], %g1 <== NOT EXECUTED fat_fd->fat_file_size = 0; 400401ac: c0 26 60 18 clr [ %i1 + 0x18 ] <== NOT EXECUTED while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) 400401b0: c2 06 20 18 ld [ %i0 + 0x18 ], %g1 <== NOT EXECUTED 400401b4: c4 06 20 1c ld [ %i0 + 0x1c ], %g2 <== NOT EXECUTED 400401b8: 82 0f 00 01 and %i4, %g1, %g1 <== NOT EXECUTED 400401bc: 80 a0 80 01 cmp %g2, %g1 <== NOT EXECUTED 400401c0: 18 80 00 0f bgu 400401fc <== NOT EXECUTED 400401c4: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED uint32_t save_cln = 0; 400401c8: 10 80 00 15 b 4004021c <== NOT EXECUTED 400401cc: b8 10 20 00 clr %i4 <== NOT EXECUTED fat_fd->fat_file_size += fs_info->vol.bpc; 400401d0: c2 06 60 18 ld [ %i1 + 0x18 ], %g1 <== NOT EXECUTED 400401d4: 82 00 40 02 add %g1, %g2, %g1 <== NOT EXECUTED 400401d8: c2 26 60 18 st %g1, [ %i1 + 0x18 ] <== NOT EXECUTED while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) 400401dc: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED 400401e0: c2 06 20 18 ld [ %i0 + 0x18 ], %g1 <== NOT EXECUTED 400401e4: c6 06 20 1c ld [ %i0 + 0x1c ], %g3 <== NOT EXECUTED 400401e8: 82 08 80 01 and %g2, %g1, %g1 <== NOT EXECUTED 400401ec: 80 a0 40 03 cmp %g1, %g3 <== NOT EXECUTED 400401f0: 1a 80 00 0b bcc 4004021c <== NOT EXECUTED 400401f4: 92 10 00 02 mov %g2, %o1 <== NOT EXECUTED 400401f8: b8 10 00 02 mov %g2, %i4 <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cur_cln, &cur_cln); 400401fc: 94 07 bf fc add %fp, -4, %o2 <== NOT EXECUTED 40040200: 7f ff fa b1 call 4003ecc4 <== NOT EXECUTED 40040204: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if ( rc != RC_OK ) 40040208: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4004020c: 22 bf ff f1 be,a 400401d0 <== NOT EXECUTED 40040210: c4 06 20 08 ld [ %i0 + 8 ], %g2 <== NOT EXECUTED } 40040214: 81 c7 e0 08 ret <== NOT EXECUTED 40040218: 91 e8 00 08 restore %g0, %o0, %o0 <== NOT EXECUTED return rc; 4004021c: 90 10 20 00 clr %o0 <== NOT EXECUTED fat_fd->map.last_cln = save_cln; 40040220: f8 26 60 3c st %i4, [ %i1 + 0x3c ] <== NOT EXECUTED } 40040224: 81 c7 e0 08 ret <== NOT EXECUTED 40040228: 91 e8 00 08 restore %g0, %o0, %o0 <== NOT EXECUTED if ((FAT_FD_OF_ROOT_DIR(fat_fd)) && 4004022c: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 40040230: 32 bf ff e0 bne,a 400401b0 <== NOT EXECUTED 40040234: c0 26 60 18 clr [ %i1 + 0x18 ] <== NOT EXECUTED 40040238: c2 0e 20 16 ldub [ %i0 + 0x16 ], %g1 <== NOT EXECUTED 4004023c: 80 88 60 03 btst 3, %g1 <== NOT EXECUTED 40040240: 22 bf ff dc be,a 400401b0 <== NOT EXECUTED 40040244: c0 26 60 18 clr [ %i1 + 0x18 ] <== NOT EXECUTED fat_fd->fat_file_size = fs_info->vol.rdir_size; 40040248: c2 06 20 34 ld [ %i0 + 0x34 ], %g1 <== NOT EXECUTED 4004024c: c2 26 60 18 st %g1, [ %i1 + 0x18 ] <== NOT EXECUTED return rc; 40040250: 10 bf ff f1 b 40040214 <== NOT EXECUTED 40040254: 90 10 20 00 clr %o0 <== NOT EXECUTED =============================================================================== 4003f9fc : { 4003f9fc: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint32_t new_last_cln = FAT_UNDEFINED_VALUE; 4003fa00: 82 10 3f ff mov -1, %g1 <== NOT EXECUTED uint32_t cur_cln = 0; 4003fa04: c0 27 bf f8 clr [ %fp + -8 ] <== NOT EXECUTED uint32_t new_last_cln = FAT_UNDEFINED_VALUE; 4003fa08: c2 27 bf fc st %g1, [ %fp + -4 ] <== NOT EXECUTED if ( new_length >= fat_fd->fat_file_size ) 4003fa0c: c2 06 60 18 ld [ %i1 + 0x18 ], %g1 <== NOT EXECUTED 4003fa10: 80 a0 40 1a cmp %g1, %i2 <== NOT EXECUTED 4003fa14: 08 80 00 32 bleu 4003fadc <== NOT EXECUTED 4003fa18: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED assert(fat_fd->fat_file_size); 4003fa1c: 02 80 00 33 be 4003fae8 <== NOT EXECUTED 4003fa20: 17 10 02 0d sethi %hi(0x40083400), %o3 <== NOT EXECUTED cl_start = (new_length + fs_info->vol.bpc - 1) >> fs_info->vol.bpc_log2; 4003fa24: c4 0e 20 0c ldub [ %i0 + 0xc ], %g2 <== NOT EXECUTED 4003fa28: c6 06 20 08 ld [ %i0 + 8 ], %g3 <== NOT EXECUTED 4003fa2c: b4 06 80 03 add %i2, %g3, %i2 <== NOT EXECUTED 4003fa30: b4 06 bf ff add %i2, -1, %i2 <== NOT EXECUTED 4003fa34: b5 36 80 02 srl %i2, %g2, %i2 <== NOT EXECUTED if ((cl_start << fs_info->vol.bpc_log2) >= fat_fd->fat_file_size) 4003fa38: 85 2e 80 02 sll %i2, %g2, %g2 <== NOT EXECUTED 4003fa3c: 80 a0 40 02 cmp %g1, %g2 <== NOT EXECUTED 4003fa40: 08 80 00 27 bleu 4003fadc <== NOT EXECUTED 4003fa44: 80 a6 a0 00 cmp %i2, 0 <== NOT EXECUTED if (cl_start != 0) 4003fa48: 02 80 00 0a be 4003fa70 <== NOT EXECUTED 4003fa4c: 96 07 bf f8 add %fp, -8, %o3 <== NOT EXECUTED rc = fat_file_lseek(fs_info, fat_fd, cl_start - 1, &new_last_cln); 4003fa50: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003fa54: 94 06 bf ff add %i2, -1, %o2 <== NOT EXECUTED 4003fa58: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003fa5c: 7f ff fe 5c call 4003f3cc <== NOT EXECUTED 4003fa60: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003fa64: 80 a2 60 00 cmp %o1, 0 <== NOT EXECUTED 4003fa68: 12 80 00 1e bne 4003fae0 <== NOT EXECUTED 4003fa6c: 96 07 bf f8 add %fp, -8, %o3 <== NOT EXECUTED rc = fat_file_lseek(fs_info, fat_fd, cl_start, &cur_cln); 4003fa70: 94 10 00 1a mov %i2, %o2 <== NOT EXECUTED 4003fa74: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003fa78: 7f ff fe 55 call 4003f3cc <== NOT EXECUTED 4003fa7c: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003fa80: 80 a2 60 00 cmp %o1, 0 <== NOT EXECUTED 4003fa84: 12 80 00 17 bne 4003fae0 <== NOT EXECUTED 4003fa88: 01 00 00 00 nop <== NOT EXECUTED rc = fat_free_fat_clusters_chain(fs_info, cur_cln); 4003fa8c: d2 07 bf f8 ld [ %fp + -8 ], %o1 <== NOT EXECUTED 4003fa90: 7f ff fd a2 call 4003f118 <== NOT EXECUTED 4003fa94: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003fa98: 92 92 20 00 orcc %o0, 0, %o1 <== NOT EXECUTED 4003fa9c: 12 80 00 11 bne 4003fae0 <== NOT EXECUTED 4003faa0: 80 a6 a0 00 cmp %i2, 0 <== NOT EXECUTED if (cl_start != 0) 4003faa4: 02 80 00 0f be 4003fae0 <== NOT EXECUTED 4003faa8: 92 10 20 00 clr %o1 <== NOT EXECUTED rc = fat_set_fat_cluster(fs_info, new_last_cln, FAT_GENFAT_EOC); 4003faac: d2 07 bf fc ld [ %fp + -4 ], %o1 <== NOT EXECUTED 4003fab0: 94 10 3f ff mov -1, %o2 <== NOT EXECUTED 4003fab4: 7f ff fc f7 call 4003ee90 <== NOT EXECUTED 4003fab8: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if ( rc != RC_OK ) 4003fabc: 92 92 20 00 orcc %o0, 0, %o1 <== NOT EXECUTED 4003fac0: 12 80 00 08 bne 4003fae0 <== NOT EXECUTED 4003fac4: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED fat_fd->map.file_cln = cl_start - 1; 4003fac8: b4 06 bf ff add %i2, -1, %i2 <== NOT EXECUTED fat_fd->map.disk_cln = new_last_cln; 4003facc: c2 26 60 38 st %g1, [ %i1 + 0x38 ] <== NOT EXECUTED fat_fd->map.file_cln = cl_start - 1; 4003fad0: f4 26 60 34 st %i2, [ %i1 + 0x34 ] <== NOT EXECUTED fat_fd->map.last_cln = new_last_cln; 4003fad4: 10 80 00 03 b 4003fae0 <== NOT EXECUTED 4003fad8: c2 26 60 3c st %g1, [ %i1 + 0x3c ] <== NOT EXECUTED return rc; 4003fadc: 92 10 20 00 clr %o1 <== NOT EXECUTED } 4003fae0: 81 c7 e0 08 ret <== NOT EXECUTED 4003fae4: 91 e8 00 09 restore %g0, %o1, %o0 <== NOT EXECUTED assert(fat_fd->fat_file_size); 4003fae8: 15 10 02 0d sethi %hi(0x40083400), %o2 <== NOT EXECUTED 4003faec: 11 10 02 0d sethi %hi(0x40083400), %o0 <== NOT EXECUTED 4003faf0: 96 12 e2 f0 or %o3, 0x2f0, %o3 <== NOT EXECUTED 4003faf4: 94 12 a3 68 or %o2, 0x368, %o2 <== NOT EXECUTED 4003faf8: 92 10 22 e3 mov 0x2e3, %o1 <== NOT EXECUTED 4003fafc: 40 00 06 da call 40041664 <__assert_func> <== NOT EXECUTED 4003fb00: 90 12 23 08 or %o0, 0x308, %o0 <== NOT EXECUTED 4003fb04: 01 00 00 00 nop <== NOT EXECUTED =============================================================================== 4003f788 : { 4003f788: 9d e3 bf a0 save %sp, -96, %sp <== NOT EXECUTED 4003f78c: c2 0e 60 30 ldub [ %i1 + 0x30 ], %g1 <== NOT EXECUTED if (!FAT_FILE_IS_REMOVED(fat_fd) && 4003f790: 80 88 60 01 btst 1, %g1 <== NOT EXECUTED 4003f794: 12 80 00 1c bne 4003f804 <== NOT EXECUTED 4003f798: ba 10 20 00 clr %i5 <== NOT EXECUTED 4003f79c: 80 88 60 02 btst 2, %g1 <== NOT EXECUTED 4003f7a0: 02 80 00 19 be 4003f804 <== NOT EXECUTED 4003f7a4: 01 00 00 00 nop <== NOT EXECUTED FAT_FILE_HAS_META_DATA_CHANGED(fat_fd) && 4003f7a8: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED 4003f7ac: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003f7b0: 12 80 00 06 bne 4003f7c8 <== NOT EXECUTED 4003f7b4: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED !FAT_FD_OF_ROOT_DIR(fat_fd)) 4003f7b8: c2 06 60 24 ld [ %i1 + 0x24 ], %g1 <== NOT EXECUTED 4003f7bc: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003f7c0: 02 80 00 11 be 4003f804 <== NOT EXECUTED 4003f7c4: 01 00 00 00 nop <== NOT EXECUTED rc = fat_file_write_first_cluster_num(fs_info, fat_fd); 4003f7c8: 40 00 3c 2a call 4004e870 <== NOT EXECUTED 4003f7cc: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED rc = fat_file_write_file_size(fs_info, fat_fd); 4003f7d0: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED rc = fat_file_write_first_cluster_num(fs_info, fat_fd); 4003f7d4: ba 10 00 08 mov %o0, %i5 <== NOT EXECUTED rc = fat_file_write_file_size(fs_info, fat_fd); 4003f7d8: 40 00 3c 57 call 4004e934 <== NOT EXECUTED 4003f7dc: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003f7e0: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f7e4: 32 80 00 02 bne,a 4003f7ec <== NOT EXECUTED 4003f7e8: ba 10 00 08 mov %o0, %i5 <== NOT EXECUTED rc = fat_file_write_time_and_date(fs_info, fat_fd); 4003f7ec: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003f7f0: 40 00 3b bf call 4004e6ec <== NOT EXECUTED 4003f7f4: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003f7f8: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f7fc: 32 80 00 02 bne,a 4003f804 <== NOT EXECUTED 4003f800: ba 10 00 08 mov %o0, %i5 <== NOT EXECUTED } 4003f804: 81 c7 e0 08 ret <== NOT EXECUTED 4003f808: 91 e8 00 1d restore %g0, %i5, %o0 <== NOT EXECUTED =============================================================================== 4003ff20 : { 4003ff20: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint32_t c = 0; 4003ff24: c0 27 bf f8 clr [ %fp + -8 ] <== NOT EXECUTED if ( count == 0 ) 4003ff28: 80 a6 e0 00 cmp %i3, 0 <== NOT EXECUTED 4003ff2c: 02 80 00 4c be 4004005c <== NOT EXECUTED 4003ff30: 92 10 20 00 clr %o1 <== NOT EXECUTED if (start >= fat_fd->size_limit) 4003ff34: fa 06 60 14 ld [ %i1 + 0x14 ], %i5 <== NOT EXECUTED 4003ff38: 80 a7 40 1a cmp %i5, %i2 <== NOT EXECUTED 4003ff3c: 08 80 00 43 bleu 40040048 <== NOT EXECUTED 4003ff40: ba 27 40 1a sub %i5, %i2, %i5 <== NOT EXECUTED 4003ff44: 80 a7 40 1b cmp %i5, %i3 <== NOT EXECUTED bool zero_fill = start > fat_fd->fat_file_size; 4003ff48: 18 80 00 47 bgu 40040064 <== NOT EXECUTED 4003ff4c: c2 06 60 18 ld [ %i1 + 0x18 ], %g1 <== NOT EXECUTED 4003ff50: 80 a0 40 1a cmp %g1, %i2 <== NOT EXECUTED rc = fat_file_extend(fs_info, fat_fd, zero_fill, start + count, &c); 4003ff54: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003ff58: 94 40 20 00 addx %g0, 0, %o2 <== NOT EXECUTED 4003ff5c: b6 06 80 1d add %i2, %i5, %i3 <== NOT EXECUTED 4003ff60: 98 07 bf f8 add %fp, -8, %o4 <== NOT EXECUTED 4003ff64: 96 10 00 1b mov %i3, %o3 <== NOT EXECUTED 4003ff68: 7f ff ff 52 call 4003fcb0 <== NOT EXECUTED 4003ff6c: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (RC_OK == rc) 4003ff70: 92 92 20 00 orcc %o0, 0, %o1 <== NOT EXECUTED 4003ff74: 12 80 00 3a bne 4004005c <== NOT EXECUTED 4003ff78: c2 07 bf f8 ld [ %fp + -8 ], %g1 <== NOT EXECUTED if (c != (start + count)) 4003ff7c: 80 a6 c0 01 cmp %i3, %g1 <== NOT EXECUTED 4003ff80: 32 80 00 02 bne,a 4003ff88 <== NOT EXECUTED 4003ff84: ba 20 40 1a sub %g1, %i2, %i5 <== NOT EXECUTED 4003ff88: f6 0e 20 0c ldub [ %i0 + 0xc ], %i3 <== NOT EXECUTED return (FAT_FD_OF_ROOT_DIR(fat_fd)) && (volume_type & (FAT_FAT12 | FAT_FAT16)); 4003ff8c: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED 4003ff90: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003ff94: 02 80 00 51 be 400400d8 <== NOT EXECUTED 4003ff98: a1 36 80 1b srl %i2, %i3, %l0 <== NOT EXECUTED uint32_t cur_cln = 0; 4003ff9c: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED rc = fat_file_lseek(fs_info, fat_fd, start_cln, &cur_cln); 4003ffa0: 94 10 00 10 mov %l0, %o2 <== NOT EXECUTED 4003ffa4: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003ffa8: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4003ffac: 7f ff fd 08 call 4003f3cc <== NOT EXECUTED 4003ffb0: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (RC_OK == rc) 4003ffb4: 80 a2 60 00 cmp %o1, 0 <== NOT EXECUTED 4003ffb8: 12 80 00 44 bne 400400c8 <== NOT EXECUTED 4003ffbc: b7 2c 00 1b sll %l0, %i3, %i3 <== NOT EXECUTED uint32_t save_cln = 0; /* FIXME: This might be incorrect, cf. below */ 4003ffc0: a4 10 20 00 clr %l2 <== NOT EXECUTED uint32_t ofs_cln = start - (start_cln << fs_info->vol.bpc_log2); 4003ffc4: b4 26 80 1b sub %i2, %i3, %i2 <== NOT EXECUTED uint32_t cmpltd = 0; 4003ffc8: a2 10 20 00 clr %l1 <== NOT EXECUTED uint32_t ofs_cln = start - (start_cln << fs_info->vol.bpc_log2); 4003ffcc: b6 10 00 1a mov %i2, %i3 <== NOT EXECUTED ret = fat_cluster_write(fs_info, 4003ffd0: 94 10 00 1b mov %i3, %o2 <== NOT EXECUTED while ( (RC_OK == rc) 4003ffd4: 80 a2 60 00 cmp %o1, 0 <== NOT EXECUTED 4003ffd8: 12 80 00 31 bne 4004009c <== NOT EXECUTED 4003ffdc: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 4003ffe0: 80 a7 60 00 cmp %i5, 0 <== NOT EXECUTED 4003ffe4: 22 80 00 2f be,a 400400a0 <== NOT EXECUTED 4003ffe8: c2 0e 20 0c ldub [ %i0 + 0xc ], %g1 <== NOT EXECUTED c = MIN(bytes_to_write, (fs_info->vol.bpc - ofs_cln)); 4003ffec: d6 06 20 08 ld [ %i0 + 8 ], %o3 <== NOT EXECUTED 4003fff0: 96 22 c0 1b sub %o3, %i3, %o3 <== NOT EXECUTED 4003fff4: 80 a2 c0 1d cmp %o3, %i5 <== NOT EXECUTED 4003fff8: 08 80 00 03 bleu 40040004 <== NOT EXECUTED 4003fffc: 98 07 00 11 add %i4, %l1, %o4 <== NOT EXECUTED 40040000: 96 10 00 1d mov %i5, %o3 <== NOT EXECUTED ret = fat_cluster_write(fs_info, 40040004: 40 00 01 ea call 400407ac <== NOT EXECUTED 40040008: d2 07 bf fc ld [ %fp + -4 ], %o1 <== NOT EXECUTED if (0 > ret) 4004000c: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040010: 06 bf ff f0 bl 4003ffd0 <== NOT EXECUTED 40040014: 92 10 3f ff mov -1, %o1 <== NOT EXECUTED save_cln = cur_cln; 40040018: e4 07 bf fc ld [ %fp + -4 ], %l2 <== NOT EXECUTED cmpltd += ret; 4004001c: a2 04 40 08 add %l1, %o0, %l1 <== NOT EXECUTED if (0 < bytes_to_write) 40040020: 92 10 20 00 clr %o1 <== NOT EXECUTED 40040024: ba a7 40 08 subcc %i5, %o0, %i5 <== NOT EXECUTED 40040028: 02 bf ff ea be 4003ffd0 <== NOT EXECUTED 4004002c: b6 10 20 00 clr %i3 <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cur_cln, &cur_cln); 40040030: 92 10 00 12 mov %l2, %o1 <== NOT EXECUTED 40040034: 94 07 bf fc add %fp, -4, %o2 <== NOT EXECUTED 40040038: 7f ff fb 23 call 4003ecc4 <== NOT EXECUTED 4004003c: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 40040040: 10 bf ff e4 b 4003ffd0 <== NOT EXECUTED 40040044: 92 10 00 08 mov %o0, %o1 <== NOT EXECUTED rtems_set_errno_and_return_minus_one(EFBIG); 40040048: 40 00 72 33 call 4005c914 <__errno> <== NOT EXECUTED 4004004c: 01 00 00 00 nop <== NOT EXECUTED 40040050: 82 10 20 1b mov 0x1b, %g1 ! 1b <_TLS_Alignment+0x1a> <== NOT EXECUTED 40040054: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 40040058: 92 10 3f ff mov -1, %o1 <== NOT EXECUTED } 4004005c: 81 c7 e0 08 ret <== NOT EXECUTED 40040060: 91 e8 00 09 restore %g0, %o1, %o0 <== NOT EXECUTED bool zero_fill = start > fat_fd->fat_file_size; 40040064: 80 a0 40 1a cmp %g1, %i2 <== NOT EXECUTED rc = fat_file_extend(fs_info, fat_fd, zero_fill, start + count, &c); 40040068: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 4004006c: 94 40 20 00 addx %g0, 0, %o2 <== NOT EXECUTED 40040070: ba 10 00 1b mov %i3, %i5 <== NOT EXECUTED 40040074: 98 07 bf f8 add %fp, -8, %o4 <== NOT EXECUTED 40040078: b6 06 80 1d add %i2, %i5, %i3 <== NOT EXECUTED 4004007c: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED 40040080: 7f ff ff 0c call 4003fcb0 <== NOT EXECUTED 40040084: 96 10 00 1b mov %i3, %o3 <== NOT EXECUTED if (RC_OK == rc) 40040088: 92 92 20 00 orcc %o0, 0, %o1 <== NOT EXECUTED 4004008c: 12 bf ff f4 bne 4004005c <== NOT EXECUTED 40040090: c2 07 bf f8 ld [ %fp + -8 ], %g1 <== NOT EXECUTED if (c != (start + count)) 40040094: 10 bf ff bb b 4003ff80 <== NOT EXECUTED 40040098: 80 a6 c0 01 cmp %i3, %g1 <== NOT EXECUTED ((ofs_cln_save + cmpltd - 1) >> fs_info->vol.bpc_log2); 4004009c: c2 0e 20 0c ldub [ %i0 + 0xc ], %g1 <== NOT EXECUTED 400400a0: b4 06 bf ff add %i2, -1, %i2 <== NOT EXECUTED fat_fd->map.disk_cln = save_cln; 400400a4: e4 26 60 38 st %l2, [ %i1 + 0x38 ] <== NOT EXECUTED ((ofs_cln_save + cmpltd - 1) >> fs_info->vol.bpc_log2); 400400a8: b4 06 80 11 add %i2, %l1, %i2 <== NOT EXECUTED 400400ac: b5 36 80 01 srl %i2, %g1, %i2 <== NOT EXECUTED fat_fd->map.file_cln = start_cln + 400400b0: a0 06 80 10 add %i2, %l0, %l0 <== NOT EXECUTED if (RC_OK != rc) 400400b4: 80 a2 60 00 cmp %o1, 0 <== NOT EXECUTED 400400b8: 12 80 00 04 bne 400400c8 <== NOT EXECUTED 400400bc: e0 26 60 34 st %l0, [ %i1 + 0x34 ] <== NOT EXECUTED return cmpltd; 400400c0: 92 10 00 11 mov %l1, %o1 <== NOT EXECUTED if (0 > ret) 400400c4: 80 a2 60 00 cmp %o1, 0 <== NOT EXECUTED 400400c8: 16 bf ff e5 bge 4004005c <== NOT EXECUTED 400400cc: 01 00 00 00 nop <== NOT EXECUTED rc = -1; 400400d0: 10 bf ff e3 b 4004005c <== NOT EXECUTED 400400d4: 92 10 3f ff mov -1, %o1 ! ffffffff <== NOT EXECUTED return (FAT_FD_OF_ROOT_DIR(fat_fd)) && (volume_type & (FAT_FAT12 | FAT_FAT16)); 400400d8: c2 06 60 24 ld [ %i1 + 0x24 ], %g1 <== NOT EXECUTED 400400dc: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 400400e0: 32 bf ff b0 bne,a 4003ffa0 <== NOT EXECUTED 400400e4: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED 400400e8: c2 0e 20 16 ldub [ %i0 + 0x16 ], %g1 <== NOT EXECUTED 400400ec: 80 88 60 03 btst 3, %g1 <== NOT EXECUTED 400400f0: 22 bf ff ac be,a 4003ffa0 <== NOT EXECUTED 400400f4: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED cln = fat_fd->cln; 400400f8: d2 06 60 1c ld [ %i1 + 0x1c ], %o1 <== NOT EXECUTED byte = start & (fs_info->vol.bpc -1); 400400fc: d4 06 20 08 ld [ %i0 + 8 ], %o2 <== NOT EXECUTED ret = fat_cluster_write(fs_info, 40040100: 92 02 40 10 add %o1, %l0, %o1 <== NOT EXECUTED byte = start & (fs_info->vol.bpc -1); 40040104: 94 02 bf ff add %o2, -1, %o2 <== NOT EXECUTED ret = fat_cluster_write(fs_info, 40040108: 98 10 00 1c mov %i4, %o4 <== NOT EXECUTED 4004010c: 96 10 00 1d mov %i5, %o3 <== NOT EXECUTED 40040110: 94 0a 80 1a and %o2, %i2, %o2 <== NOT EXECUTED 40040114: 40 00 01 a6 call 400407ac <== NOT EXECUTED 40040118: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (0 > ret) 4004011c: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040120: 06 bf ff ec bl 400400d0 <== NOT EXECUTED 40040124: 92 10 00 08 mov %o0, %o1 <== NOT EXECUTED } 40040128: 81 c7 e0 08 ret <== NOT EXECUTED 4004012c: 91 e8 00 09 restore %g0, %o1, %o0 <== NOT EXECUTED =============================================================================== 4004e934 : { 4004e934: 9d e3 bf 90 save %sp, -112, %sp <== NOT EXECUTED uint32_t le_new_length = 0; 4004e938: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED sec = fat_cluster_num_to_sector_num(fs_info, fat_fd->dir_pos.sname.cln); 4004e93c: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4004e940: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4004e944: 32 80 00 07 bne,a 4004e960 <== NOT EXECUTED 4004e948: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED 4004e94c: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 4004e950: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 4004e954: 32 80 00 07 bne,a 4004e970 <== NOT EXECUTED 4004e958: d2 06 20 28 ld [ %i0 + 0x28 ], %o1 <== NOT EXECUTED return (((cln - FAT_RSRVD_CLN) << fs_info->vol.spc_log2) + 4004e95c: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED 4004e960: c4 06 20 3c ld [ %i0 + 0x3c ], %g2 <== NOT EXECUTED 4004e964: 92 00 7f fe add %g1, -2, %o1 <== NOT EXECUTED 4004e968: 93 2a 40 03 sll %o1, %g3, %o1 <== NOT EXECUTED 4004e96c: 92 02 40 02 add %o1, %g2, %o1 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e970: d4 06 60 24 ld [ %i1 + 0x24 ], %o2 <== NOT EXECUTED 4004e974: c2 0e 20 02 ldub [ %i0 + 2 ], %g1 <== NOT EXECUTED byte = (fat_fd->dir_pos.sname.ofs & (fs_info->vol.bps - 1)); 4004e978: fa 16 00 00 lduh [ %i0 ], %i5 <== NOT EXECUTED if (fat_fd->fat_file_type == FAT_DIRECTORY) { 4004e97c: c4 06 60 10 ld [ %i1 + 0x10 ], %g2 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e980: 83 32 80 01 srl %o2, %g1, %g1 <== NOT EXECUTED byte = (fat_fd->dir_pos.sname.ofs & (fs_info->vol.bps - 1)); 4004e984: ba 07 7f ff add %i5, -1, %i5 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e988: 92 00 40 09 add %g1, %o1, %o1 <== NOT EXECUTED if (fat_fd->fat_file_type == FAT_DIRECTORY) { 4004e98c: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 4004e990: 02 80 00 07 be 4004e9ac <== NOT EXECUTED 4004e994: ba 0f 40 0a and %i5, %o2, %i5 <== NOT EXECUTED le_new_length = CT_LE_L(fat_fd->fat_file_size); 4004e998: d0 06 60 18 ld [ %i1 + 0x18 ], %o0 <== NOT EXECUTED 4004e99c: 40 00 ac 39 call 40079a80 <__bswapsi2> <== NOT EXECUTED 4004e9a0: d2 27 bf f4 st %o1, [ %fp + -12 ] <== NOT EXECUTED 4004e9a4: d0 27 bf fc st %o0, [ %fp + -4 ] <== NOT EXECUTED 4004e9a8: d2 07 bf f4 ld [ %fp + -12 ], %o1 <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_SIZE_OFFSET, 4, 4004e9ac: 98 07 bf fc add %fp, -4, %o4 <== NOT EXECUTED 4004e9b0: 96 10 20 04 mov 4, %o3 <== NOT EXECUTED 4004e9b4: 94 07 60 1c add %i5, 0x1c, %o2 <== NOT EXECUTED 4004e9b8: 7f ff c6 f7 call 40040594 <== NOT EXECUTED 4004e9bc: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED } 4004e9c0: b1 3a 20 1f sra %o0, 0x1f, %i0 <== NOT EXECUTED 4004e9c4: 81 c7 e0 08 ret <== NOT EXECUTED 4004e9c8: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 4004e870 : { 4004e870: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint16_t le_cl_hi = 0; 4004e874: c0 37 bf fe clrh [ %fp + -2 ] <== NOT EXECUTED sec = fat_cluster_num_to_sector_num(fs_info, fat_fd->dir_pos.sname.cln); 4004e878: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4004e87c: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4004e880: 12 80 00 06 bne 4004e898 <== NOT EXECUTED 4004e884: fa 06 60 1c ld [ %i1 + 0x1c ], %i5 <== NOT EXECUTED 4004e888: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 4004e88c: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 4004e890: 32 80 00 07 bne,a 4004e8ac <== NOT EXECUTED 4004e894: c2 06 20 28 ld [ %i0 + 0x28 ], %g1 <== NOT EXECUTED return (((cln - FAT_RSRVD_CLN) << fs_info->vol.spc_log2) + 4004e898: c6 0e 20 05 ldub [ %i0 + 5 ], %g3 <== NOT EXECUTED 4004e89c: c4 06 20 3c ld [ %i0 + 0x3c ], %g2 <== NOT EXECUTED 4004e8a0: 82 00 7f fe add %g1, -2, %g1 <== NOT EXECUTED 4004e8a4: 83 28 40 03 sll %g1, %g3, %g1 <== NOT EXECUTED 4004e8a8: 82 00 40 02 add %g1, %g2, %g1 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e8ac: c4 06 60 24 ld [ %i1 + 0x24 ], %g2 <== NOT EXECUTED 4004e8b0: f8 0e 20 02 ldub [ %i0 + 2 ], %i4 <== NOT EXECUTED byte = fat_fd->dir_pos.sname.ofs & (fs_info->vol.bps - 1); 4004e8b4: f6 16 00 00 lduh [ %i0 ], %i3 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e8b8: b9 30 80 1c srl %g2, %i4, %i4 <== NOT EXECUTED byte = fat_fd->dir_pos.sname.ofs & (fs_info->vol.bps - 1); 4004e8bc: b6 06 ff ff add %i3, -1, %i3 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e8c0: b8 07 00 01 add %i4, %g1, %i4 <== NOT EXECUTED byte = fat_fd->dir_pos.sname.ofs & (fs_info->vol.bps - 1); 4004e8c4: b6 0e c0 02 and %i3, %g2, %i3 <== NOT EXECUTED le_cl_low = CT_LE_W((uint16_t )(new_cln & 0x0000FFFF)); 4004e8c8: 83 2f 60 08 sll %i5, 8, %g1 <== NOT EXECUTED 4004e8cc: 85 2f 60 10 sll %i5, 0x10, %g2 <== NOT EXECUTED 4004e8d0: 85 30 a0 18 srl %g2, 0x18, %g2 <== NOT EXECUTED 4004e8d4: 82 10 40 02 or %g1, %g2, %g1 <== NOT EXECUTED ret1 = fat_sector_write(fs_info, sec, 4004e8d8: 98 07 bf fc add %fp, -4, %o4 <== NOT EXECUTED 4004e8dc: 94 06 e0 1a add %i3, 0x1a, %o2 <== NOT EXECUTED 4004e8e0: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED le_cl_low = CT_LE_W((uint16_t )(new_cln & 0x0000FFFF)); 4004e8e4: c2 37 bf fc sth %g1, [ %fp + -4 ] <== NOT EXECUTED ret1 = fat_sector_write(fs_info, sec, 4004e8e8: 96 10 20 02 mov 2, %o3 <== NOT EXECUTED 4004e8ec: 7f ff c7 2a call 40040594 <== NOT EXECUTED 4004e8f0: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED le_cl_hi = CT_LE_W((uint16_t )((new_cln & 0xFFFF0000) >> 16)); 4004e8f4: bb 37 60 10 srl %i5, 0x10, %i5 <== NOT EXECUTED 4004e8f8: 83 2f 60 08 sll %i5, 8, %g1 <== NOT EXECUTED ret1 = fat_sector_write(fs_info, sec, 4004e8fc: b4 10 00 08 mov %o0, %i2 <== NOT EXECUTED ret2 = fat_sector_write(fs_info, sec, 4004e900: 98 07 bf fe add %fp, -2, %o4 <== NOT EXECUTED 4004e904: 96 10 20 02 mov 2, %o3 <== NOT EXECUTED 4004e908: 94 06 e0 14 add %i3, 0x14, %o2 <== NOT EXECUTED 4004e90c: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4004e910: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED le_cl_hi = CT_LE_W((uint16_t )((new_cln & 0xFFFF0000) >> 16)); 4004e914: bb 37 60 08 srl %i5, 8, %i5 <== NOT EXECUTED 4004e918: ba 10 40 1d or %g1, %i5, %i5 <== NOT EXECUTED ret2 = fat_sector_write(fs_info, sec, 4004e91c: 7f ff c7 1e call 40040594 <== NOT EXECUTED 4004e920: fa 37 bf fe sth %i5, [ %fp + -2 ] <== NOT EXECUTED if ( (ret1 < 0) || (ret2 < 0) ) 4004e924: b0 12 00 1a or %o0, %i2, %i0 <== NOT EXECUTED } 4004e928: b1 3e 20 1f sra %i0, 0x1f, %i0 <== NOT EXECUTED 4004e92c: 81 c7 e0 08 ret <== NOT EXECUTED 4004e930: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 4004e6ec : { 4004e6ec: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED sec = fat_cluster_num_to_sector_num(fs_info, fat_fd->dir_pos.sname.cln); 4004e6f0: c2 06 60 20 ld [ %i1 + 0x20 ], %g1 <== NOT EXECUTED if ( (cln == 0) && (fs_info->vol.type & (FAT_FAT12 | FAT_FAT16)) ) 4004e6f4: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4004e6f8: 12 80 00 06 bne 4004e710 <== NOT EXECUTED 4004e6fc: ba 10 00 18 mov %i0, %i5 <== NOT EXECUTED 4004e700: c4 0e 20 16 ldub [ %i0 + 0x16 ], %g2 <== NOT EXECUTED 4004e704: 80 88 a0 03 btst 3, %g2 <== NOT EXECUTED 4004e708: 32 80 00 07 bne,a 4004e724 <== NOT EXECUTED 4004e70c: c2 06 20 28 ld [ %i0 + 0x28 ], %g1 <== NOT EXECUTED return (((cln - FAT_RSRVD_CLN) << fs_info->vol.spc_log2) + 4004e710: c4 0f 60 05 ldub [ %i5 + 5 ], %g2 <== NOT EXECUTED 4004e714: f8 07 60 3c ld [ %i5 + 0x3c ], %i4 <== NOT EXECUTED 4004e718: 82 00 7f fe add %g1, -2, %g1 <== NOT EXECUTED 4004e71c: 83 28 40 02 sll %g1, %g2, %g1 <== NOT EXECUTED 4004e720: 82 00 40 1c add %g1, %i4, %g1 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e724: c4 06 60 24 ld [ %i1 + 0x24 ], %g2 <== NOT EXECUTED 4004e728: f8 0f 60 02 ldub [ %i5 + 2 ], %i4 <== NOT EXECUTED byte = fat_fd->dir_pos.sname.ofs & (fs_info->vol.bps - 1); 4004e72c: f6 17 40 00 lduh [ %i5 ], %i3 <== NOT EXECUTED msdos_date_unix2dos(fat_fd->mtime, &date, &time_val); 4004e730: d0 06 60 4c ld [ %i1 + 0x4c ], %o0 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e734: b9 30 80 1c srl %g2, %i4, %i4 <== NOT EXECUTED msdos_date_unix2dos(fat_fd->mtime, &date, &time_val); 4004e738: 94 07 bf fc add %fp, -4, %o2 <== NOT EXECUTED sec += (fat_fd->dir_pos.sname.ofs >> fs_info->vol.sec_log2); 4004e73c: b8 07 00 01 add %i4, %g1, %i4 <== NOT EXECUTED msdos_date_unix2dos(fat_fd->mtime, &date, &time_val); 4004e740: 92 07 bf fe add %fp, -2, %o1 <== NOT EXECUTED byte = fat_fd->dir_pos.sname.ofs & (fs_info->vol.bps - 1); 4004e744: b6 06 ff ff add %i3, -1, %i3 <== NOT EXECUTED msdos_date_unix2dos(fat_fd->mtime, &date, &time_val); 4004e748: 40 00 2f 76 call 4005a520 <== NOT EXECUTED 4004e74c: b6 0e c0 02 and %i3, %g2, %i3 <== NOT EXECUTED time_val = CT_LE_W(time_val); 4004e750: c2 17 bf fc lduh [ %fp + -4 ], %g1 <== NOT EXECUTED 4004e754: 85 28 60 08 sll %g1, 8, %g2 <== NOT EXECUTED 4004e758: 83 30 60 08 srl %g1, 8, %g1 <== NOT EXECUTED 4004e75c: 82 10 80 01 or %g2, %g1, %g1 <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_WTIME_OFFSET, 4004e760: 98 07 bf fc add %fp, -4, %o4 <== NOT EXECUTED 4004e764: 96 10 20 02 mov 2, %o3 <== NOT EXECUTED 4004e768: 94 06 e0 16 add %i3, 0x16, %o2 <== NOT EXECUTED 4004e76c: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED time_val = CT_LE_W(time_val); 4004e770: c2 37 bf fc sth %g1, [ %fp + -4 ] <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_WTIME_OFFSET, 4004e774: 7f ff c7 88 call 40040594 <== NOT EXECUTED 4004e778: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED date = CT_LE_W(date); 4004e77c: c2 17 bf fe lduh [ %fp + -2 ], %g1 <== NOT EXECUTED 4004e780: 85 28 60 08 sll %g1, 8, %g2 <== NOT EXECUTED 4004e784: 83 30 60 08 srl %g1, 8, %g1 <== NOT EXECUTED 4004e788: 82 10 80 01 or %g2, %g1, %g1 <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_WTIME_OFFSET, 4004e78c: b4 10 00 08 mov %o0, %i2 <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_WDATE_OFFSET, 4004e790: 98 07 bf fe add %fp, -2, %o4 <== NOT EXECUTED 4004e794: 96 10 20 02 mov 2, %o3 <== NOT EXECUTED date = CT_LE_W(date); 4004e798: c2 37 bf fe sth %g1, [ %fp + -2 ] <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_WDATE_OFFSET, 4004e79c: 94 06 e0 18 add %i3, 0x18, %o2 <== NOT EXECUTED 4004e7a0: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4004e7a4: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED 4004e7a8: 7f ff c7 7b call 40040594 <== NOT EXECUTED 4004e7ac: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED if ( ret < 0 ) 4004e7b0: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4004e7b4: 36 80 00 02 bge,a 4004e7bc <== NOT EXECUTED 4004e7b8: b1 3e a0 1f sra %i2, 0x1f, %i0 <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_ADATE_OFFSET, 4004e7bc: 98 07 bf fe add %fp, -2, %o4 <== NOT EXECUTED 4004e7c0: 96 10 20 02 mov 2, %o3 <== NOT EXECUTED 4004e7c4: 94 06 e0 12 add %i3, 0x12, %o2 <== NOT EXECUTED 4004e7c8: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4004e7cc: 7f ff c7 72 call 40040594 <== NOT EXECUTED 4004e7d0: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if ( ret < 0 ) 4004e7d4: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4004e7d8: 26 80 00 02 bl,a 4004e7e0 <== NOT EXECUTED 4004e7dc: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED msdos_date_unix2dos(fat_fd->ctime, &date, &time_val); 4004e7e0: d0 06 60 44 ld [ %i1 + 0x44 ], %o0 <== NOT EXECUTED 4004e7e4: 94 07 bf fc add %fp, -4, %o2 <== NOT EXECUTED 4004e7e8: 40 00 2f 4e call 4005a520 <== NOT EXECUTED 4004e7ec: 92 07 bf fe add %fp, -2, %o1 <== NOT EXECUTED time_val = CT_LE_W(time_val); 4004e7f0: c2 17 bf fc lduh [ %fp + -4 ], %g1 <== NOT EXECUTED 4004e7f4: 85 28 60 08 sll %g1, 8, %g2 <== NOT EXECUTED 4004e7f8: 83 30 60 08 srl %g1, 8, %g1 <== NOT EXECUTED 4004e7fc: 82 10 80 01 or %g2, %g1, %g1 <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_CTIME_OFFSET, 4004e800: 98 07 bf fc add %fp, -4, %o4 <== NOT EXECUTED 4004e804: 96 10 20 02 mov 2, %o3 <== NOT EXECUTED time_val = CT_LE_W(time_val); 4004e808: c2 37 bf fc sth %g1, [ %fp + -4 ] <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_CTIME_OFFSET, 4004e80c: 94 06 e0 0e add %i3, 0xe, %o2 <== NOT EXECUTED 4004e810: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4004e814: 7f ff c7 60 call 40040594 <== NOT EXECUTED 4004e818: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if ( ret < 0 ) 4004e81c: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4004e820: 26 80 00 02 bl,a 4004e828 <== NOT EXECUTED 4004e824: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED date = CT_LE_W(date); 4004e828: c2 17 bf fe lduh [ %fp + -2 ], %g1 <== NOT EXECUTED 4004e82c: 85 28 60 08 sll %g1, 8, %g2 <== NOT EXECUTED 4004e830: 83 30 60 08 srl %g1, 8, %g1 <== NOT EXECUTED 4004e834: 82 10 80 01 or %g2, %g1, %g1 <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_CDATE_OFFSET, 4004e838: 98 07 bf fe add %fp, -2, %o4 <== NOT EXECUTED 4004e83c: 96 10 20 02 mov 2, %o3 <== NOT EXECUTED date = CT_LE_W(date); 4004e840: c2 37 bf fe sth %g1, [ %fp + -2 ] <== NOT EXECUTED ret = fat_sector_write(fs_info, sec, byte + MSDOS_FILE_CDATE_OFFSET, 4004e844: 94 06 e0 10 add %i3, 0x10, %o2 <== NOT EXECUTED 4004e848: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4004e84c: 7f ff c7 52 call 40040594 <== NOT EXECUTED 4004e850: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if ( ret < 0 ) 4004e854: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4004e858: 06 80 00 04 bl 4004e868 <== NOT EXECUTED 4004e85c: 01 00 00 00 nop <== NOT EXECUTED } 4004e860: 81 c7 e0 08 ret <== NOT EXECUTED 4004e864: 81 e8 00 00 restore <== NOT EXECUTED 4004e868: 81 c7 e0 08 ret <== NOT EXECUTED 4004e86c: 91 e8 3f ff restore %g0, -1, %o0 <== NOT EXECUTED =============================================================================== 4003f118 : { 4003f118: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint32_t next_cln = 0; 4003f11c: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) 4003f120: c2 06 20 18 ld [ %i0 + 0x18 ], %g1 <== NOT EXECUTED 4003f124: c4 06 20 1c ld [ %i0 + 0x1c ], %g2 <== NOT EXECUTED 4003f128: 82 0e 40 01 and %i1, %g1, %g1 <== NOT EXECUTED 4003f12c: 80 a0 80 01 cmp %g2, %g1 <== NOT EXECUTED 4003f130: 08 80 00 26 bleu 4003f1c8 <== NOT EXECUTED 4003f134: ba 10 00 18 mov %i0, %i5 <== NOT EXECUTED uint32_t cur_cln = chain; 4003f138: b8 10 00 19 mov %i1, %i4 <== NOT EXECUTED uint32_t freed_cls_cnt = 0; 4003f13c: b6 10 20 00 clr %i3 <== NOT EXECUTED int rc = RC_OK, rc1 = RC_OK; 4003f140: 10 80 00 0e b 4003f178 <== NOT EXECUTED 4003f144: b0 10 20 00 clr %i0 <== NOT EXECUTED rc = fat_set_fat_cluster(fs_info, cur_cln, FAT_GENFAT_FREE); 4003f148: 7f ff ff 52 call 4003ee90 <== NOT EXECUTED 4003f14c: 01 00 00 00 nop <== NOT EXECUTED if ( rc != RC_OK ) 4003f150: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f154: 32 80 00 02 bne,a 4003f15c <== NOT EXECUTED 4003f158: b0 10 00 08 mov %o0, %i0 <== NOT EXECUTED cur_cln = next_cln; 4003f15c: f8 07 bf fc ld [ %fp + -4 ], %i4 <== NOT EXECUTED while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) 4003f160: c2 07 60 18 ld [ %i5 + 0x18 ], %g1 <== NOT EXECUTED 4003f164: c4 07 60 1c ld [ %i5 + 0x1c ], %g2 <== NOT EXECUTED 4003f168: 82 0f 00 01 and %i4, %g1, %g1 <== NOT EXECUTED 4003f16c: 80 a0 40 02 cmp %g1, %g2 <== NOT EXECUTED 4003f170: 1a 80 00 18 bcc 4003f1d0 <== NOT EXECUTED 4003f174: b6 06 e0 01 inc %i3 <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cur_cln, &next_cln); 4003f178: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4003f17c: 94 07 bf fc add %fp, -4, %o2 <== NOT EXECUTED 4003f180: 7f ff fe d1 call 4003ecc4 <== NOT EXECUTED 4003f184: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED rc = fat_set_fat_cluster(fs_info, cur_cln, FAT_GENFAT_FREE); 4003f188: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cur_cln, &next_cln); 4003f18c: 82 10 00 08 mov %o0, %g1 <== NOT EXECUTED rc = fat_set_fat_cluster(fs_info, cur_cln, FAT_GENFAT_FREE); 4003f190: 94 10 20 00 clr %o2 <== NOT EXECUTED if ( rc != RC_OK ) 4003f194: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003f198: 02 bf ff ec be 4003f148 <== NOT EXECUTED 4003f19c: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if(fs_info->vol.free_cls != FAT_UNDEFINED_VALUE) 4003f1a0: c4 07 60 4c ld [ %i5 + 0x4c ], %g2 <== NOT EXECUTED 4003f1a4: 80 a0 bf ff cmp %g2, -1 <== NOT EXECUTED 4003f1a8: 02 80 00 03 be 4003f1b4 <== NOT EXECUTED 4003f1ac: b6 00 80 1b add %g2, %i3, %i3 <== NOT EXECUTED fs_info->vol.free_cls += freed_cls_cnt; 4003f1b0: f6 27 60 4c st %i3, [ %i5 + 0x4c ] <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cur_cln, &next_cln); 4003f1b4: b0 10 00 01 mov %g1, %i0 <== NOT EXECUTED fat_buf_release(fs_info); 4003f1b8: 40 00 04 ce call 400404f0 <== NOT EXECUTED 4003f1bc: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED return rc; 4003f1c0: 81 c7 e0 08 ret <== NOT EXECUTED 4003f1c4: 81 e8 00 00 restore <== NOT EXECUTED uint32_t freed_cls_cnt = 0; 4003f1c8: b6 10 20 00 clr %i3 <== NOT EXECUTED int rc = RC_OK, rc1 = RC_OK; 4003f1cc: b0 10 20 00 clr %i0 <== NOT EXECUTED fs_info->vol.next_cl = chain; 4003f1d0: f2 27 60 54 st %i1, [ %i5 + 0x54 ] <== NOT EXECUTED if (fs_info->vol.free_cls != FAT_UNDEFINED_VALUE) 4003f1d4: c2 07 60 4c ld [ %i5 + 0x4c ], %g1 <== NOT EXECUTED 4003f1d8: 80 a0 7f ff cmp %g1, -1 <== NOT EXECUTED 4003f1dc: 02 80 00 03 be 4003f1e8 <== NOT EXECUTED 4003f1e0: b6 00 40 1b add %g1, %i3, %i3 <== NOT EXECUTED fs_info->vol.free_cls += freed_cls_cnt; 4003f1e4: f6 27 60 4c st %i3, [ %i5 + 0x4c ] <== NOT EXECUTED fat_buf_release(fs_info); 4003f1e8: 40 00 04 c2 call 400404f0 <== NOT EXECUTED 4003f1ec: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED } 4003f1f0: 81 c7 e0 08 ret <== NOT EXECUTED 4003f1f4: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 40041514 : fat_free_unique_ino( fat_fs_info_t *fs_info, uint32_t ino ) { FAT_SET_UNIQ_INO_FREE((ino - fs_info->uino_base), fs_info->uino); 40041514: c2 02 20 88 ld [ %o0 + 0x88 ], %g1 <== NOT EXECUTED 40041518: c6 02 20 7c ld [ %o0 + 0x7c ], %g3 <== NOT EXECUTED 4004151c: 92 22 40 01 sub %o1, %g1, %o1 <== NOT EXECUTED 40041520: 85 32 60 03 srl %o1, 3, %g2 <== NOT EXECUTED 40041524: c8 08 c0 02 ldub [ %g3 + %g2 ], %g4 <== NOT EXECUTED 40041528: 92 0a 60 07 and %o1, 7, %o1 <== NOT EXECUTED 4004152c: 82 10 20 01 mov 1, %g1 <== NOT EXECUTED 40041530: 93 28 40 09 sll %g1, %o1, %o1 <== NOT EXECUTED 40041534: 92 29 00 09 andn %g4, %o1, %o1 <== NOT EXECUTED } 40041538: 81 c3 e0 08 retl <== NOT EXECUTED 4004153c: d2 28 c0 02 stb %o1, [ %g3 + %g2 ] <== NOT EXECUTED =============================================================================== 4003ecc4 : fat_get_fat_cluster( fat_fs_info_t *fs_info, uint32_t cln, uint32_t *ret_val ) { 4003ecc4: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint8_t *sec_buf; uint32_t sec = 0; uint32_t ofs = 0; /* sanity check */ if ( (cln < 2) || (cln > (fs_info->vol.data_cls + 1)) ) 4003ecc8: 80 a6 60 01 cmp %i1, 1 <== NOT EXECUTED 4003eccc: 08 80 00 26 bleu 4003ed64 <== NOT EXECUTED 4003ecd0: ba 10 00 18 mov %i0, %i5 <== NOT EXECUTED 4003ecd4: c2 06 20 40 ld [ %i0 + 0x40 ], %g1 <== NOT EXECUTED 4003ecd8: 82 00 60 01 inc %g1 <== NOT EXECUTED 4003ecdc: 80 a0 40 19 cmp %g1, %i1 <== NOT EXECUTED 4003ece0: 0a 80 00 21 bcs 4003ed64 <== NOT EXECUTED 4003ece4: 01 00 00 00 nop <== NOT EXECUTED rtems_set_errno_and_return_minus_one(EIO); sec = (FAT_FAT_OFFSET(fs_info->vol.type, cln) >> fs_info->vol.sec_log2) + 4003ece8: c2 0e 20 16 ldub [ %i0 + 0x16 ], %g1 <== NOT EXECUTED 4003ecec: 80 88 60 01 btst 1, %g1 <== NOT EXECUTED 4003ecf0: 12 80 00 23 bne 4003ed7c <== NOT EXECUTED 4003ecf4: b7 36 60 01 srl %i1, 1, %i3 <== NOT EXECUTED 4003ecf8: 80 88 60 02 btst 2, %g1 <== NOT EXECUTED 4003ecfc: 02 80 00 03 be 4003ed08 <== NOT EXECUTED 4003ed00: a1 2e 60 02 sll %i1, 2, %l0 <== NOT EXECUTED 4003ed04: a1 2e 60 01 sll %i1, 1, %l0 <== NOT EXECUTED 4003ed08: f8 0f 60 02 ldub [ %i5 + 2 ], %i4 <== NOT EXECUTED 4003ed0c: c2 07 60 60 ld [ %i5 + 0x60 ], %g1 <== NOT EXECUTED 4003ed10: b9 34 00 1c srl %l0, %i4, %i4 <== NOT EXECUTED fs_info->vol.afat_loc; ofs = FAT_FAT_OFFSET(fs_info->vol.type, cln) & (fs_info->vol.bps - 1); 4003ed14: f6 17 40 00 lduh [ %i5 ], %i3 <== NOT EXECUTED sec = (FAT_FAT_OFFSET(fs_info->vol.type, cln) >> fs_info->vol.sec_log2) + 4003ed18: b8 07 00 01 add %i4, %g1, %i4 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec, FAT_OP_TYPE_READ, &sec_buf); 4003ed1c: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 4003ed20: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003ed24: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4003ed28: 40 00 05 c2 call 40040430 <== NOT EXECUTED 4003ed2c: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003ed30: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003ed34: 12 80 00 45 bne 4003ee48 <== NOT EXECUTED 4003ed38: 01 00 00 00 nop <== NOT EXECUTED return rc; switch ( fs_info->vol.type ) 4003ed3c: c2 0f 60 16 ldub [ %i5 + 0x16 ], %g1 <== NOT EXECUTED ofs = FAT_FAT_OFFSET(fs_info->vol.type, cln) & (fs_info->vol.bps - 1); 4003ed40: b6 06 ff ff add %i3, -1, %i3 <== NOT EXECUTED switch ( fs_info->vol.type ) 4003ed44: 80 a0 60 02 cmp %g1, 2 <== NOT EXECUTED 4003ed48: 02 80 00 35 be 4003ee1c <== NOT EXECUTED 4003ed4c: b6 0e c0 10 and %i3, %l0, %i3 <== NOT EXECUTED 4003ed50: 80 a0 60 04 cmp %g1, 4 <== NOT EXECUTED 4003ed54: 02 80 00 2c be 4003ee04 <== NOT EXECUTED 4003ed58: 80 a0 60 01 cmp %g1, 1 <== NOT EXECUTED 4003ed5c: 02 80 00 18 be 4003edbc <== NOT EXECUTED 4003ed60: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED *ret_val = *((uint32_t *)(sec_buf + ofs)); *ret_val = CF_LE_L(*ret_val); break; default: rtems_set_errno_and_return_minus_one(EIO); 4003ed64: 40 00 76 ec call 4005c914 <__errno> <== NOT EXECUTED 4003ed68: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 4003ed6c: 82 10 20 05 mov 5, %g1 <== NOT EXECUTED 4003ed70: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 4003ed74: 81 c7 e0 08 ret <== NOT EXECUTED 4003ed78: 81 e8 00 00 restore <== NOT EXECUTED sec = (FAT_FAT_OFFSET(fs_info->vol.type, cln) >> fs_info->vol.sec_log2) + 4003ed7c: f8 0f 60 02 ldub [ %i5 + 2 ], %i4 <== NOT EXECUTED 4003ed80: c2 07 60 60 ld [ %i5 + 0x60 ], %g1 <== NOT EXECUTED 4003ed84: a0 06 c0 19 add %i3, %i1, %l0 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec, FAT_OP_TYPE_READ, &sec_buf); 4003ed88: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED sec = (FAT_FAT_OFFSET(fs_info->vol.type, cln) >> fs_info->vol.sec_log2) + 4003ed8c: b9 34 00 1c srl %l0, %i4, %i4 <== NOT EXECUTED ofs = FAT_FAT_OFFSET(fs_info->vol.type, cln) & (fs_info->vol.bps - 1); 4003ed90: f6 17 40 00 lduh [ %i5 ], %i3 <== NOT EXECUTED sec = (FAT_FAT_OFFSET(fs_info->vol.type, cln) >> fs_info->vol.sec_log2) + 4003ed94: b8 07 00 01 add %i4, %g1, %i4 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec, FAT_OP_TYPE_READ, &sec_buf); 4003ed98: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003ed9c: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4003eda0: 40 00 05 a4 call 40040430 <== NOT EXECUTED 4003eda4: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003eda8: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003edac: 22 bf ff e5 be,a 4003ed40 <== NOT EXECUTED 4003edb0: c2 0f 60 16 ldub [ %i5 + 0x16 ], %g1 <== NOT EXECUTED break; } return RC_OK; } 4003edb4: 81 c7 e0 08 ret <== NOT EXECUTED 4003edb8: 81 e8 00 00 restore <== NOT EXECUTED *ret_val = (*(sec_buf + ofs)); 4003edbc: c8 08 80 1b ldub [ %g2 + %i3 ], %g4 <== NOT EXECUTED 4003edc0: c8 26 80 00 st %g4, [ %i2 ] <== NOT EXECUTED if ( ofs == (fs_info->vol.bps - 1) ) 4003edc4: c6 17 40 00 lduh [ %i5 ], %g3 <== NOT EXECUTED 4003edc8: 86 00 ff ff add %g3, -1, %g3 <== NOT EXECUTED 4003edcc: 80 a0 c0 1b cmp %g3, %i3 <== NOT EXECUTED 4003edd0: 02 80 00 20 be 4003ee50 <== NOT EXECUTED 4003edd4: b6 00 80 1b add %g2, %i3, %i3 <== NOT EXECUTED *ret_val |= *(sec_buf + ofs + 1) << 8; 4003edd8: c2 0e e0 01 ldub [ %i3 + 1 ], %g1 <== NOT EXECUTED 4003eddc: 83 28 60 08 sll %g1, 8, %g1 <== NOT EXECUTED 4003ede0: 82 10 40 04 or %g1, %g4, %g1 <== NOT EXECUTED 4003ede4: c2 26 80 00 st %g1, [ %i2 ] <== NOT EXECUTED if ( FAT_CLUSTER_IS_ODD(cln) ) 4003ede8: 80 8e 60 01 btst 1, %i1 <== NOT EXECUTED 4003edec: 22 80 00 16 be,a 4003ee44 <== NOT EXECUTED 4003edf0: 82 08 6f ff and %g1, 0xfff, %g1 <== NOT EXECUTED *ret_val = (*ret_val) >> FAT12_SHIFT; 4003edf4: 83 30 60 04 srl %g1, 4, %g1 <== NOT EXECUTED 4003edf8: c2 26 80 00 st %g1, [ %i2 ] <== NOT EXECUTED 4003edfc: 81 c7 e0 08 ret <== NOT EXECUTED 4003ee00: 81 e8 00 00 restore <== NOT EXECUTED *ret_val = *((uint32_t *)(sec_buf + ofs)); 4003ee04: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED *ret_val = CF_LE_L(*ret_val); 4003ee08: 40 00 eb 1e call 40079a80 <__bswapsi2> <== NOT EXECUTED 4003ee0c: d0 00 40 1b ld [ %g1 + %i3 ], %o0 <== NOT EXECUTED 4003ee10: d0 26 80 00 st %o0, [ %i2 ] <== NOT EXECUTED break; 4003ee14: 81 c7 e0 08 ret <== NOT EXECUTED 4003ee18: 81 e8 00 00 restore <== NOT EXECUTED *ret_val = *((uint16_t *)(sec_buf + ofs)); 4003ee1c: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED *ret_val = CF_LE_W(*ret_val); 4003ee20: c4 10 40 1b lduh [ %g1 + %i3 ], %g2 <== NOT EXECUTED 4003ee24: 83 28 a0 08 sll %g2, 8, %g1 <== NOT EXECUTED 4003ee28: 85 30 a0 08 srl %g2, 8, %g2 <== NOT EXECUTED 4003ee2c: 82 10 40 02 or %g1, %g2, %g1 <== NOT EXECUTED 4003ee30: 83 28 60 10 sll %g1, 0x10, %g1 <== NOT EXECUTED 4003ee34: 83 30 60 10 srl %g1, 0x10, %g1 <== NOT EXECUTED 4003ee38: c2 26 80 00 st %g1, [ %i2 ] <== NOT EXECUTED break; 4003ee3c: 81 c7 e0 08 ret <== NOT EXECUTED 4003ee40: 81 e8 00 00 restore <== NOT EXECUTED *ret_val = (*ret_val) & FAT_FAT12_MASK; 4003ee44: c2 26 80 00 st %g1, [ %i2 ] <== NOT EXECUTED 4003ee48: 81 c7 e0 08 ret <== NOT EXECUTED 4003ee4c: 81 e8 00 00 restore <== NOT EXECUTED rc = fat_buf_access(fs_info, sec + 1, FAT_OP_TYPE_READ, 4003ee50: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003ee54: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 4003ee58: 92 07 20 01 add %i4, 1, %o1 <== NOT EXECUTED 4003ee5c: 40 00 05 75 call 40040430 <== NOT EXECUTED 4003ee60: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003ee64: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003ee68: 12 80 00 08 bne 4003ee88 <== NOT EXECUTED 4003ee6c: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED *ret_val |= *sec_buf << 8; 4003ee70: c2 08 40 00 ldub [ %g1 ], %g1 <== NOT EXECUTED 4003ee74: c4 06 80 00 ld [ %i2 ], %g2 <== NOT EXECUTED 4003ee78: 83 28 60 08 sll %g1, 8, %g1 <== NOT EXECUTED 4003ee7c: 82 10 40 02 or %g1, %g2, %g1 <== NOT EXECUTED 4003ee80: 10 bf ff da b 4003ede8 <== NOT EXECUTED 4003ee84: c2 26 80 00 st %g1, [ %i2 ] <== NOT EXECUTED } 4003ee88: 81 c7 e0 08 ret <== NOT EXECUTED 4003ee8c: 91 e8 00 08 restore %g0, %o0, %o0 <== NOT EXECUTED =============================================================================== 40041418 : * 0 means FAILED !!! * */ uint32_t fat_get_unique_ino(fat_fs_info_t *fs_info) { 40041418: 9d e3 bf a0 save %sp, -96, %sp <== NOT EXECUTED 4004141c: d2 06 20 84 ld [ %i0 + 0x84 ], %o1 <== NOT EXECUTED fs_info->index++; if (fs_info->index >= fs_info->uino_pool_size) fs_info->index = 0; } if ((fs_info->uino_pool_size << 1) < (0x0FFFFFFF - fs_info->uino_base)) 40041420: 03 03 ff ff sethi %hi(0xffffc00), %g1 <== NOT EXECUTED 40041424: b4 10 63 ff or %g1, 0x3ff, %i2 ! fffffff <== NOT EXECUTED for (j = 0; j < fs_info->uino_pool_size; j++) 40041428: 80 a2 60 00 cmp %o1, 0 <== NOT EXECUTED 4004142c: 22 80 00 23 be,a 400414b8 <== NOT EXECUTED 40041430: c2 06 20 88 ld [ %i0 + 0x88 ], %g1 <== NOT EXECUTED if (!FAT_UNIQ_INO_IS_BUSY(fs_info->index, fs_info->uino)) 40041434: c8 06 20 7c ld [ %i0 + 0x7c ], %g4 <== NOT EXECUTED 40041438: c2 06 20 80 ld [ %i0 + 0x80 ], %g1 <== NOT EXECUTED 4004143c: 87 30 60 03 srl %g1, 3, %g3 <== NOT EXECUTED 40041440: c4 49 00 03 ldsb [ %g4 + %g3 ], %g2 <== NOT EXECUTED 40041444: b8 08 60 07 and %g1, 7, %i4 <== NOT EXECUTED 40041448: b6 01 00 03 add %g4, %g3, %i3 <== NOT EXECUTED 4004144c: 85 38 80 1c sra %g2, %i4, %g2 <== NOT EXECUTED 40041450: 80 88 a0 01 btst 1, %g2 <== NOT EXECUTED 40041454: 02 80 00 26 be 400414ec <== NOT EXECUTED 40041458: c6 09 00 03 ldub [ %g4 + %g3 ], %g3 <== NOT EXECUTED for (j = 0; j < fs_info->uino_pool_size; j++) 4004145c: 10 80 00 0e b 40041494 <== NOT EXECUTED 40041460: ba 10 20 00 clr %i5 <== NOT EXECUTED 40041464: 80 a7 40 09 cmp %i5, %o1 <== NOT EXECUTED 40041468: 02 80 00 12 be 400414b0 <== NOT EXECUTED 4004146c: c2 26 20 80 st %g1, [ %i0 + 0x80 ] <== NOT EXECUTED if (!FAT_UNIQ_INO_IS_BUSY(fs_info->index, fs_info->uino)) 40041470: c2 06 20 80 ld [ %i0 + 0x80 ], %g1 <== NOT EXECUTED 40041474: 87 30 60 03 srl %g1, 3, %g3 <== NOT EXECUTED 40041478: c4 49 00 03 ldsb [ %g4 + %g3 ], %g2 <== NOT EXECUTED 4004147c: b8 08 60 07 and %g1, 7, %i4 <== NOT EXECUTED 40041480: b6 01 00 03 add %g4, %g3, %i3 <== NOT EXECUTED 40041484: 85 38 80 1c sra %g2, %i4, %g2 <== NOT EXECUTED 40041488: 80 88 a0 01 btst 1, %g2 <== NOT EXECUTED 4004148c: 02 80 00 18 be 400414ec <== NOT EXECUTED 40041490: c6 09 00 03 ldub [ %g4 + %g3 ], %g3 <== NOT EXECUTED fs_info->index++; 40041494: 82 00 60 01 inc %g1 <== NOT EXECUTED if (fs_info->index >= fs_info->uino_pool_size) 40041498: 80 a0 40 09 cmp %g1, %o1 <== NOT EXECUTED 4004149c: 0a bf ff f2 bcs 40041464 <== NOT EXECUTED 400414a0: ba 07 60 01 inc %i5 <== NOT EXECUTED for (j = 0; j < fs_info->uino_pool_size; j++) 400414a4: 80 a7 40 09 cmp %i5, %o1 <== NOT EXECUTED 400414a8: 12 bf ff f2 bne 40041470 <== NOT EXECUTED 400414ac: c0 26 20 80 clr [ %i0 + 0x80 ] <== NOT EXECUTED 400414b0: 93 2a 60 01 sll %o1, 1, %o1 <== NOT EXECUTED if ((fs_info->uino_pool_size << 1) < (0x0FFFFFFF - fs_info->uino_base)) 400414b4: c2 06 20 88 ld [ %i0 + 0x88 ], %g1 <== NOT EXECUTED 400414b8: 82 26 80 01 sub %i2, %g1, %g1 <== NOT EXECUTED 400414bc: 80 a0 40 09 cmp %g1, %o1 <== NOT EXECUTED 400414c0: 08 80 00 13 bleu 4004150c <== NOT EXECUTED 400414c4: 01 00 00 00 nop <== NOT EXECUTED { fs_info->uino_pool_size <<= 1; 400414c8: d2 26 20 84 st %o1, [ %i0 + 0x84 ] <== NOT EXECUTED fs_info->uino = realloc(fs_info->uino, fs_info->uino_pool_size); 400414cc: 7f ff 2c f1 call 4000c890 <== NOT EXECUTED 400414d0: d0 06 20 7c ld [ %i0 + 0x7c ], %o0 <== NOT EXECUTED if (fs_info->uino != NULL) 400414d4: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 400414d8: 02 80 00 0d be 4004150c <== NOT EXECUTED 400414dc: d0 26 20 7c st %o0, [ %i0 + 0x7c ] <== NOT EXECUTED fs_info->index = fs_info->uino_pool_size; 400414e0: d2 06 20 84 ld [ %i0 + 0x84 ], %o1 <== NOT EXECUTED 400414e4: 10 bf ff d1 b 40041428 <== NOT EXECUTED 400414e8: d2 26 20 80 st %o1, [ %i0 + 0x80 ] <== NOT EXECUTED FAT_SET_UNIQ_INO_BUSY(fs_info->index, fs_info->uino); 400414ec: 82 10 20 01 mov 1, %g1 <== NOT EXECUTED 400414f0: b9 28 40 1c sll %g1, %i4, %i4 <== NOT EXECUTED 400414f4: 86 17 00 03 or %i4, %g3, %g3 <== NOT EXECUTED 400414f8: c6 2e c0 00 stb %g3, [ %i3 ] <== NOT EXECUTED return (fs_info->uino_base + fs_info->index); 400414fc: c2 06 20 88 ld [ %i0 + 0x88 ], %g1 <== NOT EXECUTED 40041500: f0 06 20 80 ld [ %i0 + 0x80 ], %i0 <== NOT EXECUTED 40041504: 81 c7 e0 08 ret <== NOT EXECUTED 40041508: 91 e8 40 18 restore %g1, %i0, %o0 <== NOT EXECUTED } else resrc_unsuff = true; } return 0; } 4004150c: 81 c7 e0 08 ret <== NOT EXECUTED 40041510: 91 e8 20 00 restore %g0, 0, %o0 <== NOT EXECUTED =============================================================================== 400413a0 : int fat_init_clusters_chain( fat_fs_info_t *fs_info, uint32_t start_cln ) { 400413a0: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED int rc = RC_OK; ssize_t ret = 0; uint32_t cur_cln = start_cln; while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) 400413a4: 10 80 00 0e b 400413dc <== NOT EXECUTED 400413a8: f2 27 bf fc st %i1, [ %fp + -4 ] <== NOT EXECUTED { ret = fat_cluster_set(fs_info, cur_cln, 0, fs_info->vol.bpc, 0); 400413ac: 7f ff fc a5 call 40040640 <== NOT EXECUTED 400413b0: d6 06 20 08 ld [ %i0 + 8 ], %o3 <== NOT EXECUTED if ( ret != fs_info->vol.bpc ) 400413b4: c2 06 20 08 ld [ %i0 + 8 ], %g1 <== NOT EXECUTED 400413b8: 80 a0 40 08 cmp %g1, %o0 <== NOT EXECUTED { return -1; } rc = fat_get_fat_cluster(fs_info, cur_cln, &cur_cln); 400413bc: 94 07 bf fc add %fp, -4, %o2 <== NOT EXECUTED if ( ret != fs_info->vol.bpc ) 400413c0: 12 80 00 13 bne 4004140c <== NOT EXECUTED 400413c4: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cur_cln, &cur_cln); 400413c8: 7f ff f6 3f call 4003ecc4 <== NOT EXECUTED 400413cc: d2 07 bf fc ld [ %fp + -4 ], %o1 <== NOT EXECUTED if ( rc != RC_OK ) 400413d0: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 400413d4: 12 80 00 0c bne 40041404 <== NOT EXECUTED 400413d8: f2 07 bf fc ld [ %fp + -4 ], %i1 <== NOT EXECUTED while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) 400413dc: c4 06 20 18 ld [ %i0 + 0x18 ], %g2 <== NOT EXECUTED 400413e0: c2 06 20 1c ld [ %i0 + 0x1c ], %g1 <== NOT EXECUTED ret = fat_cluster_set(fs_info, cur_cln, 0, fs_info->vol.bpc, 0); 400413e4: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED 400413e8: 98 10 20 00 clr %o4 <== NOT EXECUTED while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) 400413ec: b2 0e 40 02 and %i1, %g2, %i1 <== NOT EXECUTED ret = fat_cluster_set(fs_info, cur_cln, 0, fs_info->vol.bpc, 0); 400413f0: 94 10 20 00 clr %o2 <== NOT EXECUTED while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) 400413f4: 80 a6 40 01 cmp %i1, %g1 <== NOT EXECUTED 400413f8: 0a bf ff ed bcs 400413ac <== NOT EXECUTED 400413fc: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED return rc; } } return rc; 40041400: 90 10 20 00 clr %o0 <== NOT EXECUTED } 40041404: 81 c7 e0 08 ret <== NOT EXECUTED 40041408: 91 e8 00 08 restore %g0, %o0, %o0 <== NOT EXECUTED return -1; 4004140c: 90 10 3f ff mov -1, %o0 <== NOT EXECUTED } 40041410: 81 c7 e0 08 ret <== NOT EXECUTED 40041414: 91 e8 00 08 restore %g0, %o0, %o0 <== NOT EXECUTED =============================================================================== 40040918 : * RC_OK on success, or -1 if error occured * and errno set appropriately */ int fat_init_volume_info(fat_fs_info_t *fs_info, const char *device) { 40040918: 9d e3 be e8 save %sp, -280, %sp <== NOT EXECUTED ssize_t ret = 0; struct stat stat_buf; int i = 0; rtems_bdbuf_buffer *block = NULL; vol->fd = open(device, O_RDWR); 4004091c: 92 10 20 02 mov 2, %o1 <== NOT EXECUTED { 40040920: a4 10 00 18 mov %i0, %l2 <== NOT EXECUTED rtems_bdbuf_buffer *block = NULL; 40040924: c0 27 bf 8c clr [ %fp + -116 ] <== NOT EXECUTED vol->fd = open(device, O_RDWR); 40040928: 7f ff 2e 7d call 4000c31c <== NOT EXECUTED 4004092c: 90 10 00 19 mov %i1, %o0 <== NOT EXECUTED if (vol->fd < 0) 40040930: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040934: 06 80 01 cb bl 40041060 <== NOT EXECUTED 40040938: d0 24 a0 68 st %o0, [ %l2 + 0x68 ] <== NOT EXECUTED { rtems_set_errno_and_return_minus_one(ENXIO); } rc = fstat(vol->fd, &stat_buf); 4004093c: 7f ff 2b 67 call 4000b6d8 <== NOT EXECUTED 40040940: 92 07 bf a0 add %fp, -96, %o1 <== NOT EXECUTED if (rc != 0) 40040944: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040948: 12 80 01 c3 bne 40041054 <== NOT EXECUTED 4004094c: 07 00 00 3c sethi %hi(0xf000), %g3 <== NOT EXECUTED close(vol->fd); rtems_set_errno_and_return_minus_one(ENXIO); } /* Must be a block device. */ if (!S_ISBLK(stat_buf.st_mode)) 40040950: c4 07 bf ac ld [ %fp + -84 ], %g2 <== NOT EXECUTED 40040954: 84 08 80 03 and %g2, %g3, %g2 <== NOT EXECUTED 40040958: 07 00 00 18 sethi %hi(0x6000), %g3 <== NOT EXECUTED 4004095c: 80 a0 80 03 cmp %g2, %g3 <== NOT EXECUTED 40040960: 12 80 01 be bne 40041058 <== NOT EXECUTED 40040964: d0 06 20 68 ld [ %i0 + 0x68 ], %o0 <== NOT EXECUTED return ioctl(fd, RTEMS_BLKIO_GETDISKDEV, dd_ptr); 40040968: 94 06 20 6c add %i0, 0x6c, %o2 <== NOT EXECUTED 4004096c: 13 10 01 10 sethi %hi(0x40044000), %o1 <== NOT EXECUTED 40040970: 7f ff 2b c1 call 4000b874 <== NOT EXECUTED 40040974: 92 12 62 09 or %o1, 0x209, %o1 ! 40044209 <== NOT EXECUTED rtems_set_errno_and_return_minus_one(ENXIO); } /* check that device is registred as block device and lock it */ rc = rtems_disk_fd_get_disk_device(vol->fd, &vol->dd); if (rc != 0) { 40040978: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4004097c: 12 80 01 b6 bne 40041054 <== NOT EXECUTED 40040980: 94 07 bf 8c add %fp, -116, %o2 <== NOT EXECUTED rtems_set_errno_and_return_minus_one(ENXIO); } /* Read boot record */ /* FIXME: Asserts FAT_MAX_BPB_SIZE < bdbuf block size */ sc = rtems_bdbuf_read( vol->dd, 0, &block); 40040984: d0 04 a0 6c ld [ %l2 + 0x6c ], %o0 <== NOT EXECUTED 40040988: 7f ff 17 e8 call 40006928 <== NOT EXECUTED 4004098c: 92 10 20 00 clr %o1 <== NOT EXECUTED if (sc != RTEMS_SUCCESSFUL) 40040990: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040994: 12 80 01 b9 bne 40041078 <== NOT EXECUTED 40040998: d0 07 bf 8c ld [ %fp + -116 ], %o0 <== NOT EXECUTED { close(vol->fd); rtems_set_errno_and_return_minus_one( EIO); } memcpy( boot_rec, block->buffer, FAT_MAX_BPB_SIZE); 4004099c: c4 02 20 1c ld [ %o0 + 0x1c ], %g2 <== NOT EXECUTED 400409a0: c2 08 a0 20 ldub [ %g2 + 0x20 ], %g1 <== NOT EXECUTED 400409a4: c2 2f bf 87 stb %g1, [ %fp + -121 ] <== NOT EXECUTED 400409a8: c2 08 a0 21 ldub [ %g2 + 0x21 ], %g1 <== NOT EXECUTED 400409ac: c2 2f bf 83 stb %g1, [ %fp + -125 ] <== NOT EXECUTED 400409b0: c2 08 a0 22 ldub [ %g2 + 0x22 ], %g1 <== NOT EXECUTED 400409b4: c2 2f bf 7f stb %g1, [ %fp + -129 ] <== NOT EXECUTED 400409b8: c2 08 a0 23 ldub [ %g2 + 0x23 ], %g1 <== NOT EXECUTED 400409bc: c2 2f bf 7b stb %g1, [ %fp + -133 ] <== NOT EXECUTED 400409c0: c2 08 a0 24 ldub [ %g2 + 0x24 ], %g1 <== NOT EXECUTED 400409c4: c2 2f bf 77 stb %g1, [ %fp + -137 ] <== NOT EXECUTED 400409c8: c2 08 a0 25 ldub [ %g2 + 0x25 ], %g1 <== NOT EXECUTED 400409cc: c2 2f bf 73 stb %g1, [ %fp + -141 ] <== NOT EXECUTED 400409d0: c2 08 a0 26 ldub [ %g2 + 0x26 ], %g1 <== NOT EXECUTED 400409d4: c2 2f bf 6f stb %g1, [ %fp + -145 ] <== NOT EXECUTED 400409d8: c2 08 a0 27 ldub [ %g2 + 0x27 ], %g1 <== NOT EXECUTED 400409dc: c2 2f bf 6b stb %g1, [ %fp + -149 ] <== NOT EXECUTED 400409e0: c2 08 a0 28 ldub [ %g2 + 0x28 ], %g1 <== NOT EXECUTED 400409e4: e6 08 a0 0b ldub [ %g2 + 0xb ], %l3 <== NOT EXECUTED 400409e8: fa 08 a0 0c ldub [ %g2 + 0xc ], %i5 <== NOT EXECUTED 400409ec: e0 08 a0 0d ldub [ %g2 + 0xd ], %l0 <== NOT EXECUTED 400409f0: ee 08 a0 0e ldub [ %g2 + 0xe ], %l7 <== NOT EXECUTED 400409f4: f4 08 a0 0f ldub [ %g2 + 0xf ], %i2 <== NOT EXECUTED 400409f8: e2 08 a0 10 ldub [ %g2 + 0x10 ], %l1 <== NOT EXECUTED 400409fc: ec 08 a0 11 ldub [ %g2 + 0x11 ], %l6 <== NOT EXECUTED 40040a00: f2 08 a0 12 ldub [ %g2 + 0x12 ], %i1 <== NOT EXECUTED 40040a04: e8 08 a0 13 ldub [ %g2 + 0x13 ], %l4 <== NOT EXECUTED 40040a08: f8 08 a0 14 ldub [ %g2 + 0x14 ], %i4 <== NOT EXECUTED 40040a0c: ea 08 a0 16 ldub [ %g2 + 0x16 ], %l5 <== NOT EXECUTED 40040a10: f6 08 a0 17 ldub [ %g2 + 0x17 ], %i3 <== NOT EXECUTED 40040a14: c2 2f bf 67 stb %g1, [ %fp + -153 ] <== NOT EXECUTED 40040a18: c2 08 a0 2c ldub [ %g2 + 0x2c ], %g1 <== NOT EXECUTED 40040a1c: c2 2f bf 5b stb %g1, [ %fp + -165 ] <== NOT EXECUTED 40040a20: c2 08 a0 2d ldub [ %g2 + 0x2d ], %g1 <== NOT EXECUTED 40040a24: c2 2f bf 57 stb %g1, [ %fp + -169 ] <== NOT EXECUTED 40040a28: c2 08 a0 2e ldub [ %g2 + 0x2e ], %g1 <== NOT EXECUTED 40040a2c: c2 2f bf 63 stb %g1, [ %fp + -157 ] <== NOT EXECUTED 40040a30: c2 08 a0 2f ldub [ %g2 + 0x2f ], %g1 <== NOT EXECUTED 40040a34: c2 2f bf 5f stb %g1, [ %fp + -161 ] <== NOT EXECUTED 40040a38: c2 08 a0 30 ldub [ %g2 + 0x30 ], %g1 <== NOT EXECUTED 40040a3c: c2 2f bf 53 stb %g1, [ %fp + -173 ] <== NOT EXECUTED 40040a40: c2 08 a0 31 ldub [ %g2 + 0x31 ], %g1 <== NOT EXECUTED sc = rtems_bdbuf_release( block); 40040a44: 7f ff 18 42 call 40006b4c <== NOT EXECUTED 40040a48: c2 2f bf 4f stb %g1, [ %fp + -177 ] <== NOT EXECUTED if (sc != RTEMS_SUCCESSFUL) 40040a4c: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040a50: 12 80 01 8a bne 40041078 <== NOT EXECUTED 40040a54: bb 2f 60 08 sll %i5, 8, %i5 <== NOT EXECUTED close(vol->fd); rtems_set_errno_and_return_minus_one( EIO ); } /* Evaluate boot record */ vol->bps = FAT_GET_BR_BYTES_PER_SECTOR(boot_rec); 40040a58: a6 17 40 13 or %i5, %l3, %l3 <== NOT EXECUTED if ( (vol->bps != 512) && 40040a5c: 84 04 fe 00 add %l3, -512, %g2 <== NOT EXECUTED 40040a60: 84 08 bd ff and %g2, -513, %g2 <== NOT EXECUTED 40040a64: 85 28 a0 10 sll %g2, 0x10, %g2 <== NOT EXECUTED (vol->bps != 1024) && (vol->bps != 2048) && 40040a68: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 40040a6c: 02 80 00 07 be 40040a88 <== NOT EXECUTED 40040a70: e6 34 80 00 sth %l3, [ %l2 ] <== NOT EXECUTED (vol->bps != 1024) && 40040a74: 84 04 f8 00 add %l3, -2048, %g2 <== NOT EXECUTED 40040a78: 07 3f ff c2 sethi %hi(0xffff0800), %g3 <== NOT EXECUTED (vol->bps != 2048) && 40040a7c: 80 a8 80 03 andncc %g2, %g3, %g0 <== NOT EXECUTED 40040a80: 12 80 00 41 bne 40040b84 <== NOT EXECUTED 40040a84: 01 00 00 00 nop <== NOT EXECUTED (vol->bps != 4096)) { close(vol->fd); rtems_set_errno_and_return_minus_one( EINVAL ); } for (vol->sec_mul = 0, i = (vol->bps >> FAT_SECTOR512_BITS); (i & 1) == 0; 40040a88: 93 2c e0 10 sll %l3, 0x10, %o1 <== NOT EXECUTED 40040a8c: 85 32 60 19 srl %o1, 0x19, %g2 <== NOT EXECUTED 40040a90: 80 88 a0 01 btst 1, %g2 <== NOT EXECUTED 40040a94: 12 80 00 09 bne 40040ab8 <== NOT EXECUTED 40040a98: c0 2c a0 03 clrb [ %l2 + 3 ] <== NOT EXECUTED 40040a9c: 86 10 20 00 clr %g3 <== NOT EXECUTED i >>= 1, vol->sec_mul++); 40040aa0: 85 38 a0 01 sra %g2, 1, %g2 <== NOT EXECUTED 40040aa4: 88 00 e0 01 add %g3, 1, %g4 <== NOT EXECUTED for (vol->sec_mul = 0, i = (vol->bps >> FAT_SECTOR512_BITS); (i & 1) == 0; 40040aa8: 80 88 a0 01 btst 1, %g2 <== NOT EXECUTED 40040aac: 02 bf ff fd be 40040aa0 <== NOT EXECUTED 40040ab0: 86 10 00 04 mov %g4, %g3 <== NOT EXECUTED 40040ab4: c8 2c a0 03 stb %g4, [ %l2 + 3 ] <== NOT EXECUTED for (vol->sec_log2 = 0, i = vol->bps; (i & 1) == 0; 40040ab8: 85 32 60 10 srl %o1, 0x10, %g2 <== NOT EXECUTED 40040abc: 80 8c e0 01 btst 1, %l3 <== NOT EXECUTED 40040ac0: 12 80 00 0a bne 40040ae8 <== NOT EXECUTED 40040ac4: c0 2c a0 02 clrb [ %l2 + 2 ] <== NOT EXECUTED 40040ac8: 10 80 00 03 b 40040ad4 <== NOT EXECUTED 40040acc: 86 10 20 01 mov 1, %g3 <== NOT EXECUTED 40040ad0: 86 10 00 01 mov %g1, %g3 <== NOT EXECUTED i >>= 1, vol->sec_log2++); 40040ad4: 85 38 a0 01 sra %g2, 1, %g2 <== NOT EXECUTED for (vol->sec_log2 = 0, i = vol->bps; (i & 1) == 0; 40040ad8: 80 88 a0 01 btst 1, %g2 <== NOT EXECUTED 40040adc: 02 bf ff fd be 40040ad0 <== NOT EXECUTED 40040ae0: 82 00 e0 01 add %g3, 1, %g1 <== NOT EXECUTED 40040ae4: c6 2c a0 02 stb %g3, [ %l2 + 2 ] <== NOT EXECUTED /* Assign the sector size as bdbuf block size for now. * If possible the bdbuf block size will get increased to the cluster * size at the end of this method for better performance */ sc = rtems_bdbuf_set_block_size (vol->dd, vol->bps, true); 40040ae8: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 40040aec: d0 04 a0 6c ld [ %l2 + 0x6c ], %o0 <== NOT EXECUTED 40040af0: 7f ff 19 02 call 40006ef8 <== NOT EXECUTED 40040af4: 93 32 60 10 srl %o1, 0x10, %o1 <== NOT EXECUTED if (sc != RTEMS_SUCCESSFUL) 40040af8: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040afc: 12 80 00 22 bne 40040b84 <== NOT EXECUTED 40040b00: 84 10 20 01 mov 1, %g2 <== NOT EXECUTED { close(vol->fd); rtems_set_errno_and_return_minus_one( EINVAL ); } vol->bytes_per_block = vol->bps; 40040b04: c8 14 80 00 lduh [ %l2 ], %g4 <== NOT EXECUTED vol->bytes_per_block_log2 = vol->sec_log2; 40040b08: de 0c a0 02 ldub [ %l2 + 2 ], %o7 <== NOT EXECUTED vol->bytes_per_block = vol->bps; 40040b0c: 89 29 20 10 sll %g4, 0x10, %g4 <== NOT EXECUTED 40040b10: bb 31 20 10 srl %g4, 0x10, %i5 <== NOT EXECUTED vol->bytes_per_block_log2 = vol->sec_log2; 40040b14: de 2c a0 14 stb %o7, [ %l2 + 0x14 ] <== NOT EXECUTED vol->spc = FAT_GET_BR_SECTORS_PER_CLUSTER(boot_rec); /* * "sectors per cluster" of zero is invalid * (and would hang the following loop) */ if (vol->spc == 0) 40040b18: 9a 8c 20 ff andcc %l0, 0xff, %o5 <== NOT EXECUTED vol->bytes_per_block = vol->bps; 40040b1c: fa 24 a0 10 st %i5, [ %l2 + 0x10 ] <== NOT EXECUTED vol->sectors_per_block = 1; 40040b20: c4 2c a0 0d stb %g2, [ %l2 + 0xd ] <== NOT EXECUTED if (vol->spc == 0) 40040b24: 02 80 00 18 be 40040b84 <== NOT EXECUTED 40040b28: e0 2c a0 04 stb %l0, [ %l2 + 4 ] <== NOT EXECUTED { close(vol->fd); rtems_set_errno_and_return_minus_one(EINVAL); } for (vol->spc_log2 = 0, i = vol->spc; (i & 1) == 0; 40040b2c: c0 2c a0 05 clrb [ %l2 + 5 ] <== NOT EXECUTED 40040b30: 80 8c 20 01 btst 1, %l0 <== NOT EXECUTED 40040b34: 12 80 00 1c bne 40040ba4 <== NOT EXECUTED 40040b38: 84 10 00 0d mov %o5, %g2 <== NOT EXECUTED 40040b3c: 10 80 00 03 b 40040b48 <== NOT EXECUTED 40040b40: 86 10 20 01 mov 1, %g3 <== NOT EXECUTED 40040b44: 86 10 00 01 mov %g1, %g3 <== NOT EXECUTED i >>= 1, vol->spc_log2++); 40040b48: 85 38 a0 01 sra %g2, 1, %g2 <== NOT EXECUTED for (vol->spc_log2 = 0, i = vol->spc; (i & 1) == 0; 40040b4c: 80 88 a0 01 btst 1, %g2 <== NOT EXECUTED 40040b50: 02 bf ff fd be 40040b44 <== NOT EXECUTED 40040b54: 82 00 e0 01 add %g3, 1, %g1 <== NOT EXECUTED 40040b58: 84 08 e0 ff and %g3, 0xff, %g2 <== NOT EXECUTED 40040b5c: c6 2c a0 05 stb %g3, [ %l2 + 5 ] <== NOT EXECUTED 40040b60: 86 10 20 01 mov 1, %g3 <== NOT EXECUTED 40040b64: 10 80 00 12 b 40040bac <== NOT EXECUTED 40040b68: 87 28 c0 02 sll %g3, %g2, %g3 <== NOT EXECUTED if (fs_info->c.state == FAT_CACHE_EMPTY) 40040b6c: c4 0c a0 91 ldub [ %l2 + 0x91 ], %g2 <== NOT EXECUTED 40040b70: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 40040b74: 02 80 00 04 be 40040b84 <== NOT EXECUTED 40040b78: 01 00 00 00 nop <== NOT EXECUTED 40040b7c: 7f ff fd b7 call 40040258 <== NOT EXECUTED 40040b80: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED if (FAT_GET_FSINFO_LEAD_SIGNATURE(fs_info_sector) != FAT_FSINFO_LEAD_SIGNATURE_VALUE) { _fat_block_release(fs_info); close(vol->fd); 40040b84: 7f ff 29 fa call 4000b36c <== NOT EXECUTED 40040b88: d0 04 a0 68 ld [ %l2 + 0x68 ], %o0 <== NOT EXECUTED rtems_set_errno_and_return_minus_one( EINVAL ); 40040b8c: 40 00 6f 62 call 4005c914 <__errno> <== NOT EXECUTED 40040b90: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 40040b94: 82 10 20 16 mov 0x16, %g1 <== NOT EXECUTED 40040b98: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 40040b9c: 81 c7 e0 08 ret <== NOT EXECUTED 40040ba0: 81 e8 00 00 restore <== NOT EXECUTED for (vol->spc_log2 = 0, i = vol->spc; (i & 1) == 0; 40040ba4: 84 10 20 00 clr %g2 <== NOT EXECUTED 40040ba8: 86 10 20 01 mov 1, %g3 <== NOT EXECUTED if (vol->spc != UINT32_C(1) << vol->spc_log2) 40040bac: 80 a3 40 03 cmp %o5, %g3 <== NOT EXECUTED 40040bb0: 12 bf ff f5 bne 40040b84 <== NOT EXECUTED 40040bb4: bb 2f 40 02 sll %i5, %g2, %i5 <== NOT EXECUTED for (vol->bpc_log2 = 0, i = vol->bpc; (i & 1) == 0; 40040bb8: c0 2c a0 0c clrb [ %l2 + 0xc ] <== NOT EXECUTED 40040bbc: 84 10 00 1d mov %i5, %g2 <== NOT EXECUTED 40040bc0: 80 8f 60 01 btst 1, %i5 <== NOT EXECUTED 40040bc4: 12 80 00 0a bne 40040bec <== NOT EXECUTED 40040bc8: fa 24 a0 08 st %i5, [ %l2 + 8 ] <== NOT EXECUTED 40040bcc: 10 80 00 03 b 40040bd8 <== NOT EXECUTED 40040bd0: 86 10 20 01 mov 1, %g3 <== NOT EXECUTED 40040bd4: 86 10 00 01 mov %g1, %g3 <== NOT EXECUTED i >>= 1, vol->bpc_log2++); 40040bd8: 85 38 a0 01 sra %g2, 1, %g2 <== NOT EXECUTED for (vol->bpc_log2 = 0, i = vol->bpc; (i & 1) == 0; 40040bdc: 80 88 a0 01 btst 1, %g2 <== NOT EXECUTED 40040be0: 02 bf ff fd be 40040bd4 <== NOT EXECUTED 40040be4: 82 00 e0 01 add %g3, 1, %g1 <== NOT EXECUTED 40040be8: c6 2c a0 0c stb %g3, [ %l2 + 0xc ] <== NOT EXECUTED vol->rdir_secs = ((vol->rdir_entrs * FAT_DIRENTRY_SIZE) + (vol->bps - 1)) / 40040bec: 89 31 20 10 srl %g4, 0x10, %g4 <== NOT EXECUTED vol->fat_loc = FAT_GET_BR_RESERVED_SECTORS_NUM(boot_rec); 40040bf0: b5 2e a0 08 sll %i2, 8, %i2 <== NOT EXECUTED vol->rdir_secs = ((vol->rdir_entrs * FAT_DIRENTRY_SIZE) + (vol->bps - 1)) / 40040bf4: 86 01 3f ff add %g4, -1, %g3 <== NOT EXECUTED vol->rdir_entrs = FAT_GET_BR_FILES_PER_ROOT_DIR(boot_rec); 40040bf8: b3 2e 60 08 sll %i1, 8, %i1 <== NOT EXECUTED vol->fat_loc = FAT_GET_BR_RESERVED_SECTORS_NUM(boot_rec); 40040bfc: ae 16 80 17 or %i2, %l7, %l7 <== NOT EXECUTED vol->rdir_entrs = FAT_GET_BR_FILES_PER_ROOT_DIR(boot_rec); 40040c00: ac 16 40 16 or %i1, %l6, %l6 <== NOT EXECUTED vol->fats = FAT_GET_BR_FAT_NUM(boot_rec); 40040c04: e2 2c a0 15 stb %l1, [ %l2 + 0x15 ] <== NOT EXECUTED vol->rdir_secs = ((vol->rdir_entrs * FAT_DIRENTRY_SIZE) + (vol->bps - 1)) / 40040c08: 85 2d a0 05 sll %l6, 5, %g2 <== NOT EXECUTED vol->fat_loc = FAT_GET_BR_RESERVED_SECTORS_NUM(boot_rec); 40040c0c: ee 34 a0 20 sth %l7, [ %l2 + 0x20 ] <== NOT EXECUTED vol->rdir_secs = ((vol->rdir_entrs * FAT_DIRENTRY_SIZE) + (vol->bps - 1)) / 40040c10: 84 00 80 03 add %g2, %g3, %g2 <== NOT EXECUTED vol->rdir_entrs = FAT_GET_BR_FILES_PER_ROOT_DIR(boot_rec); 40040c14: ec 34 a0 2c sth %l6, [ %l2 + 0x2c ] <== NOT EXECUTED vol->rdir_secs = ((vol->rdir_entrs * FAT_DIRENTRY_SIZE) + (vol->bps - 1)) / 40040c18: 83 38 a0 1f sra %g2, 0x1f, %g1 <== NOT EXECUTED 40040c1c: 81 80 60 00 wr %g1, %y <== NOT EXECUTED 40040c20: 01 00 00 00 nop <== NOT EXECUTED 40040c24: 01 00 00 00 nop <== NOT EXECUTED 40040c28: 01 00 00 00 nop <== NOT EXECUTED 40040c2c: 88 78 80 04 sdiv %g2, %g4, %g4 <== NOT EXECUTED vol->rdir_size = vol->rdir_secs << vol->sec_log2; 40040c30: 9f 29 00 0f sll %g4, %o7, %o7 <== NOT EXECUTED vol->rdir_secs = ((vol->rdir_entrs * FAT_DIRENTRY_SIZE) + (vol->bps - 1)) / 40040c34: c8 24 a0 30 st %g4, [ %l2 + 0x30 ] <== NOT EXECUTED if ( (FAT_GET_BR_SECTORS_PER_FAT(boot_rec)) != 0) 40040c38: b7 2e e0 08 sll %i3, 8, %i3 <== NOT EXECUTED 40040c3c: aa 16 c0 15 or %i3, %l5, %l5 <== NOT EXECUTED 40040c40: ab 2d 60 10 sll %l5, 0x10, %l5 <== NOT EXECUTED 40040c44: 80 a5 60 00 cmp %l5, 0 <== NOT EXECUTED 40040c48: 02 80 00 98 be 40040ea8 <== NOT EXECUTED 40040c4c: de 24 a0 34 st %o7, [ %l2 + 0x34 ] <== NOT EXECUTED vol->fat_length = FAT_GET_BR_SECTORS_PER_FAT(boot_rec); 40040c50: ab 35 60 10 srl %l5, 0x10, %l5 <== NOT EXECUTED 40040c54: ea 24 a0 24 st %l5, [ %l2 + 0x24 ] <== NOT EXECUTED vol->data_fsec = vol->fat_loc + vol->fats * vol->fat_length + 40040c58: a2 5d 40 11 smul %l5, %l1, %l1 <== NOT EXECUTED 40040c5c: ae 04 40 17 add %l1, %l7, %l7 <== NOT EXECUTED 40040c60: 88 01 00 17 add %g4, %l7, %g4 <== NOT EXECUTED vol->rdir_loc = vol->fat_loc + vol->fats * vol->fat_length; 40040c64: ee 24 a0 28 st %l7, [ %l2 + 0x28 ] <== NOT EXECUTED if ( (FAT_GET_BR_TOTAL_SECTORS_NUM16(boot_rec)) != 0) 40040c68: b9 2f 20 08 sll %i4, 8, %i4 <== NOT EXECUTED 40040c6c: a8 17 00 14 or %i4, %l4, %l4 <== NOT EXECUTED 40040c70: a9 2d 20 10 sll %l4, 0x10, %l4 <== NOT EXECUTED 40040c74: 80 a5 20 00 cmp %l4, 0 <== NOT EXECUTED 40040c78: 02 80 00 80 be 40040e78 <== NOT EXECUTED 40040c7c: c8 24 a0 3c st %g4, [ %l2 + 0x3c ] <== NOT EXECUTED vol->tot_secs = FAT_GET_BR_TOTAL_SECTORS_NUM16(boot_rec); 40040c80: a9 35 20 10 srl %l4, 0x10, %l4 <== NOT EXECUTED 40040c84: e8 24 a0 38 st %l4, [ %l2 + 0x38 ] <== NOT EXECUTED data_secs = vol->tot_secs - vol->data_fsec; 40040c88: a8 25 00 04 sub %l4, %g4, %l4 <== NOT EXECUTED vol->data_cls = data_secs / vol->spc; 40040c8c: 81 80 20 00 wr %g0, %y <== NOT EXECUTED 40040c90: 01 00 00 00 nop <== NOT EXECUTED 40040c94: 01 00 00 00 nop <== NOT EXECUTED 40040c98: 01 00 00 00 nop <== NOT EXECUTED 40040c9c: 84 75 00 0d udiv %l4, %o5, %g2 <== NOT EXECUTED if ( vol->data_cls < FAT_FAT12_MAX_CLN) 40040ca0: 80 a0 af f4 cmp %g2, 0xff4 <== NOT EXECUTED 40040ca4: 18 80 00 69 bgu 40040e48 <== NOT EXECUTED 40040ca8: c4 24 a0 40 st %g2, [ %l2 + 0x40 ] <== NOT EXECUTED vol->type = FAT_FAT12; 40040cac: 84 10 20 01 mov 1, %g2 <== NOT EXECUTED 40040cb0: c4 2c a0 16 stb %g2, [ %l2 + 0x16 ] <== NOT EXECUTED vol->mask = FAT_FAT12_MASK; 40040cb4: 84 10 2f ff mov 0xfff, %g2 <== NOT EXECUTED 40040cb8: c4 24 a0 18 st %g2, [ %l2 + 0x18 ] <== NOT EXECUTED vol->eoc_val = FAT_FAT12_EOC; 40040cbc: 84 10 2f f8 mov 0xff8, %g2 <== NOT EXECUTED 40040cc0: c4 24 a0 1c st %g2, [ %l2 + 0x1c ] <== NOT EXECUTED else { vol->rdir_cl = 0; vol->mirror = 0; vol->afat = 0; vol->free_cls = FAT_UNDEFINED_VALUE; 40040cc4: 84 10 3f ff mov -1, %g2 <== NOT EXECUTED vol->rdir_cl = 0; 40040cc8: c0 24 a0 44 clr [ %l2 + 0x44 ] <== NOT EXECUTED vol->mirror = 0; 40040ccc: c0 2c a0 5c clrb [ %l2 + 0x5c ] <== NOT EXECUTED vol->afat = 0; 40040cd0: c0 2c a0 64 clrb [ %l2 + 0x64 ] <== NOT EXECUTED vol->free_cls = FAT_UNDEFINED_VALUE; 40040cd4: c4 24 a0 4c st %g2, [ %l2 + 0x4c ] <== NOT EXECUTED vol->next_cl = FAT_UNDEFINED_VALUE; 40040cd8: c4 24 a0 54 st %g2, [ %l2 + 0x54 ] <== NOT EXECUTED if (fs_info->c.state == FAT_CACHE_EMPTY) 40040cdc: c4 0c a0 91 ldub [ %l2 + 0x91 ], %g2 <== NOT EXECUTED 40040ce0: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 40040ce4: 12 80 00 7d bne 40040ed8 <== NOT EXECUTED 40040ce8: 01 00 00 00 nop <== NOT EXECUTED } _fat_block_release(fs_info); vol->afat_loc = vol->fat_loc + vol->fat_length * vol->afat; 40040cec: c4 0c a0 64 ldub [ %l2 + 0x64 ], %g2 <== NOT EXECUTED 40040cf0: c8 04 a0 24 ld [ %l2 + 0x24 ], %g4 <== NOT EXECUTED 40040cf4: c6 14 a0 20 lduh [ %l2 + 0x20 ], %g3 <== NOT EXECUTED 40040cf8: 84 58 80 04 smul %g2, %g4, %g2 <== NOT EXECUTED 40040cfc: 84 00 80 03 add %g2, %g3, %g2 <== NOT EXECUTED 40040d00: c4 24 a0 60 st %g2, [ %l2 + 0x60 ] <== NOT EXECUTED /* set up collection of fat-files fd */ fs_info->vhash = calloc(FAT_HASH_SIZE, sizeof(rtems_chain_control)); 40040d04: 92 10 20 0c mov 0xc, %o1 <== NOT EXECUTED 40040d08: 7f ff 25 be call 4000a400 <== NOT EXECUTED 40040d0c: 90 10 20 02 mov 2, %o0 <== NOT EXECUTED 40040d10: d0 24 a0 74 st %o0, [ %l2 + 0x74 ] <== NOT EXECUTED if ( fs_info->vhash == NULL ) 40040d14: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040d18: 02 80 01 03 be 40041124 <== NOT EXECUTED 40040d1c: 84 10 00 08 mov %o0, %g2 <== NOT EXECUTED head->previous = NULL; 40040d20: c0 22 20 04 clr [ %o0 + 4 ] <== NOT EXECUTED return &the_chain->Tail.Node; 40040d24: ba 02 20 04 add %o0, 4, %i5 <== NOT EXECUTED head->next = tail; 40040d28: fa 22 00 00 st %i5, [ %o0 ] <== NOT EXECUTED return &the_chain->Tail.Node; 40040d2c: 86 02 20 0c add %o0, 0xc, %g3 <== NOT EXECUTED 40040d30: 88 02 20 10 add %o0, 0x10, %g4 <== NOT EXECUTED tail->previous = head; 40040d34: c4 20 a0 08 st %g2, [ %g2 + 8 ] <== NOT EXECUTED } for (i = 0; i < FAT_HASH_SIZE; i++) rtems_chain_initialize_empty(fs_info->vhash + i); fs_info->rhash = calloc(FAT_HASH_SIZE, sizeof(rtems_chain_control)); 40040d38: 92 10 20 0c mov 0xc, %o1 <== NOT EXECUTED head->next = tail; 40040d3c: c8 20 a0 0c st %g4, [ %g2 + 0xc ] <== NOT EXECUTED 40040d40: 90 10 20 02 mov 2, %o0 <== NOT EXECUTED head->previous = NULL; 40040d44: c0 20 a0 10 clr [ %g2 + 0x10 ] <== NOT EXECUTED 40040d48: 7f ff 25 ae call 4000a400 <== NOT EXECUTED 40040d4c: c6 20 a0 14 st %g3, [ %g2 + 0x14 ] <== NOT EXECUTED 40040d50: d0 24 a0 78 st %o0, [ %l2 + 0x78 ] <== NOT EXECUTED if ( fs_info->rhash == NULL ) 40040d54: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040d58: 02 80 00 e7 be 400410f4 <== NOT EXECUTED 40040d5c: 84 10 00 08 mov %o0, %g2 <== NOT EXECUTED } for (i = 0; i < FAT_HASH_SIZE; i++) rtems_chain_initialize_empty(fs_info->rhash + i); fs_info->uino_pool_size = FAT_UINO_POOL_INIT_SIZE; fs_info->uino_base = (vol->tot_secs << vol->sec_mul) << 4; 40040d60: c8 0c a0 03 ldub [ %l2 + 3 ], %g4 <== NOT EXECUTED 40040d64: c6 04 a0 38 ld [ %l2 + 0x38 ], %g3 <== NOT EXECUTED 40040d68: c0 22 20 04 clr [ %o0 + 4 ] <== NOT EXECUTED 40040d6c: 87 28 c0 04 sll %g3, %g4, %g3 <== NOT EXECUTED return &the_chain->Tail.Node; 40040d70: ba 02 20 04 add %o0, 4, %i5 <== NOT EXECUTED 40040d74: 87 28 e0 04 sll %g3, 4, %g3 <== NOT EXECUTED head->next = tail; 40040d78: fa 22 00 00 st %i5, [ %o0 ] <== NOT EXECUTED fs_info->uino_pool_size = FAT_UINO_POOL_INIT_SIZE; 40040d7c: 88 10 21 00 mov 0x100, %g4 <== NOT EXECUTED fs_info->uino_base = (vol->tot_secs << vol->sec_mul) << 4; 40040d80: c6 24 a0 88 st %g3, [ %l2 + 0x88 ] <== NOT EXECUTED return &the_chain->Tail.Node; 40040d84: 86 02 20 0c add %o0, 0xc, %g3 <== NOT EXECUTED fs_info->uino_pool_size = FAT_UINO_POOL_INIT_SIZE; 40040d88: c8 24 a0 84 st %g4, [ %l2 + 0x84 ] <== NOT EXECUTED 40040d8c: 88 02 20 10 add %o0, 0x10, %g4 <== NOT EXECUTED fs_info->index = 0; 40040d90: c0 24 a0 80 clr [ %l2 + 0x80 ] <== NOT EXECUTED fs_info->uino = (char *)calloc(fs_info->uino_pool_size, sizeof(char)); 40040d94: 92 10 20 01 mov 1, %o1 <== NOT EXECUTED tail->previous = head; 40040d98: c4 20 a0 08 st %g2, [ %g2 + 8 ] <== NOT EXECUTED 40040d9c: 90 10 21 00 mov 0x100, %o0 <== NOT EXECUTED head->next = tail; 40040da0: c8 20 a0 0c st %g4, [ %g2 + 0xc ] <== NOT EXECUTED head->previous = NULL; 40040da4: c0 20 a0 10 clr [ %g2 + 0x10 ] <== NOT EXECUTED 40040da8: 7f ff 25 96 call 4000a400 <== NOT EXECUTED 40040dac: c6 20 a0 14 st %g3, [ %g2 + 0x14 ] <== NOT EXECUTED if ( fs_info->uino == NULL ) 40040db0: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040db4: 02 80 00 b9 be 40041098 <== NOT EXECUTED 40040db8: d0 24 a0 7c st %o0, [ %l2 + 0x7c ] <== NOT EXECUTED close(vol->fd); free(fs_info->vhash); free(fs_info->rhash); rtems_set_errno_and_return_minus_one( ENOMEM ); } fs_info->sec_buf = (uint8_t *)calloc(vol->bps, sizeof(uint8_t)); 40040dbc: d0 14 80 00 lduh [ %l2 ], %o0 <== NOT EXECUTED 40040dc0: 7f ff 25 90 call 4000a400 <== NOT EXECUTED 40040dc4: 92 10 20 01 mov 1, %o1 <== NOT EXECUTED if (fs_info->sec_buf == NULL) 40040dc8: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040dcc: 02 80 00 ce be 40041104 <== NOT EXECUTED 40040dd0: d0 24 a0 98 st %o0, [ %l2 + 0x98 ] <== NOT EXECUTED return (sec_num & (vol->spc - 1)) == 0; 40040dd4: c4 0c a0 04 ldub [ %l2 + 4 ], %g2 <== NOT EXECUTED 40040dd8: c6 04 a0 3c ld [ %l2 + 0x3c ], %g3 <== NOT EXECUTED 40040ddc: 84 00 bf ff add %g2, -1, %g2 <== NOT EXECUTED /* * If possible we will use the cluster size as bdbuf block size for faster * file access. This requires that certain sectors are aligned to cluster * borders. */ if (is_cluster_aligned(vol, vol->data_fsec) 40040de0: 80 88 80 03 btst %g2, %g3 <== NOT EXECUTED 40040de4: 12 80 00 d6 bne 4004113c <== NOT EXECUTED 40040de8: 01 00 00 00 nop <== NOT EXECUTED && (FAT_FAT32 == vol->type || is_cluster_aligned(vol, vol->rdir_loc))) 40040dec: c6 0c a0 16 ldub [ %l2 + 0x16 ], %g3 <== NOT EXECUTED 40040df0: 80 a0 e0 04 cmp %g3, 4 <== NOT EXECUTED 40040df4: 22 80 00 07 be,a 40040e10 <== NOT EXECUTED 40040df8: d2 04 a0 08 ld [ %l2 + 8 ], %o1 <== NOT EXECUTED return (sec_num & (vol->spc - 1)) == 0; 40040dfc: c6 04 a0 28 ld [ %l2 + 0x28 ], %g3 <== NOT EXECUTED && (FAT_FAT32 == vol->type || is_cluster_aligned(vol, vol->rdir_loc))) 40040e00: 80 88 80 03 btst %g2, %g3 <== NOT EXECUTED 40040e04: 12 80 00 ce bne 4004113c <== NOT EXECUTED 40040e08: 01 00 00 00 nop <== NOT EXECUTED { sc = rtems_bdbuf_set_block_size (vol->dd, vol->bpc, true); 40040e0c: d2 04 a0 08 ld [ %l2 + 8 ], %o1 <== NOT EXECUTED 40040e10: d0 04 a0 6c ld [ %l2 + 0x6c ], %o0 <== NOT EXECUTED 40040e14: 7f ff 18 39 call 40006ef8 <== NOT EXECUTED 40040e18: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED if (sc == RTEMS_SUCCESSFUL) 40040e1c: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040e20: 12 80 00 c7 bne 4004113c <== NOT EXECUTED 40040e24: 01 00 00 00 nop <== NOT EXECUTED { vol->bytes_per_block = vol->bpc; 40040e28: c8 04 a0 08 ld [ %l2 + 8 ], %g4 <== NOT EXECUTED vol->bytes_per_block_log2 = vol->bpc_log2; 40040e2c: c6 0c a0 0c ldub [ %l2 + 0xc ], %g3 <== NOT EXECUTED vol->sectors_per_block = vol->spc; 40040e30: c4 0c a0 04 ldub [ %l2 + 4 ], %g2 <== NOT EXECUTED vol->bytes_per_block = vol->bpc; 40040e34: c8 24 a0 10 st %g4, [ %l2 + 0x10 ] <== NOT EXECUTED vol->bytes_per_block_log2 = vol->bpc_log2; 40040e38: c6 2c a0 14 stb %g3, [ %l2 + 0x14 ] <== NOT EXECUTED vol->sectors_per_block = vol->spc; 40040e3c: c4 2c a0 0d stb %g2, [ %l2 + 0xd ] <== NOT EXECUTED 40040e40: 81 c7 e0 08 ret <== NOT EXECUTED 40040e44: 81 e8 00 00 restore <== NOT EXECUTED if ( vol->data_cls < FAT_FAT16_MAX_CLN) 40040e48: 07 00 00 3f sethi %hi(0xfc00), %g3 <== NOT EXECUTED 40040e4c: 88 10 e3 f4 or %g3, 0x3f4, %g4 ! fff4 <_Configuration_Interrupt_stack_size+0xeff4> <== NOT EXECUTED 40040e50: 80 a0 80 04 cmp %g2, %g4 <== NOT EXECUTED 40040e54: 38 80 00 25 bgu,a 40040ee8 <== NOT EXECUTED 40040e58: 07 03 ff ff sethi %hi(0xffffc00), %g3 <== NOT EXECUTED vol->mask = FAT_FAT16_MASK; 40040e5c: 84 10 e3 ff or %g3, 0x3ff, %g2 ! fffffff <== NOT EXECUTED vol->type = FAT_FAT16; 40040e60: 88 10 20 02 mov 2, %g4 <== NOT EXECUTED vol->eoc_val = FAT_FAT16_EOC; 40040e64: 86 10 e3 f8 or %g3, 0x3f8, %g3 <== NOT EXECUTED vol->type = FAT_FAT16; 40040e68: c8 2c a0 16 stb %g4, [ %l2 + 0x16 ] <== NOT EXECUTED vol->mask = FAT_FAT16_MASK; 40040e6c: c4 24 a0 18 st %g2, [ %l2 + 0x18 ] <== NOT EXECUTED 40040e70: 10 bf ff 95 b 40040cc4 <== NOT EXECUTED 40040e74: c6 24 a0 1c st %g3, [ %l2 + 0x1c ] <== NOT EXECUTED vol->tot_secs = FAT_GET_BR_TOTAL_SECTORS_NUM32(boot_rec); 40040e78: c2 0f bf 83 ldub [ %fp + -125 ], %g1 <== NOT EXECUTED 40040e7c: bb 28 60 08 sll %g1, 8, %i5 <== NOT EXECUTED 40040e80: c2 0f bf 7f ldub [ %fp + -129 ], %g1 <== NOT EXECUTED 40040e84: 85 28 60 10 sll %g1, 0x10, %g2 <== NOT EXECUTED 40040e88: c2 0f bf 7b ldub [ %fp + -133 ], %g1 <== NOT EXECUTED 40040e8c: a9 28 60 18 sll %g1, 0x18, %l4 <== NOT EXECUTED 40040e90: c2 0f bf 87 ldub [ %fp + -121 ], %g1 <== NOT EXECUTED 40040e94: ba 17 40 02 or %i5, %g2, %i5 <== NOT EXECUTED 40040e98: ba 17 40 01 or %i5, %g1, %i5 <== NOT EXECUTED 40040e9c: a8 17 40 14 or %i5, %l4, %l4 <== NOT EXECUTED 40040ea0: 10 bf ff 7a b 40040c88 <== NOT EXECUTED 40040ea4: e8 24 a0 38 st %l4, [ %l2 + 0x38 ] <== NOT EXECUTED vol->fat_length = FAT_GET_BR_SECTORS_PER_FAT32(boot_rec); 40040ea8: c2 0f bf 73 ldub [ %fp + -141 ], %g1 <== NOT EXECUTED 40040eac: ab 28 60 08 sll %g1, 8, %l5 <== NOT EXECUTED 40040eb0: c2 0f bf 6f ldub [ %fp + -145 ], %g1 <== NOT EXECUTED 40040eb4: 87 28 60 10 sll %g1, 0x10, %g3 <== NOT EXECUTED 40040eb8: c2 0f bf 6b ldub [ %fp + -149 ], %g1 <== NOT EXECUTED 40040ebc: 85 28 60 18 sll %g1, 0x18, %g2 <== NOT EXECUTED 40040ec0: c2 0f bf 77 ldub [ %fp + -137 ], %g1 <== NOT EXECUTED 40040ec4: aa 15 40 03 or %l5, %g3, %l5 <== NOT EXECUTED 40040ec8: aa 15 40 01 or %l5, %g1, %l5 <== NOT EXECUTED 40040ecc: aa 15 40 02 or %l5, %g2, %l5 <== NOT EXECUTED 40040ed0: 10 bf ff 62 b 40040c58 <== NOT EXECUTED 40040ed4: ea 24 a0 24 st %l5, [ %l2 + 0x24 ] <== NOT EXECUTED 40040ed8: 7f ff fc e0 call 40040258 <== NOT EXECUTED 40040edc: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED vol->afat_loc = vol->fat_loc + vol->fat_length * vol->afat; 40040ee0: 10 bf ff 84 b 40040cf0 <== NOT EXECUTED 40040ee4: c4 0c a0 64 ldub [ %l2 + 0x64 ], %g2 <== NOT EXECUTED else if ( vol->data_cls < FAT_FAT32_MASK - 1 ) 40040ee8: 88 10 e3 fd or %g3, 0x3fd, %g4 <== NOT EXECUTED 40040eec: 80 a0 80 04 cmp %g2, %g4 <== NOT EXECUTED 40040ef0: 18 bf ff 25 bgu 40040b84 <== NOT EXECUTED 40040ef4: c2 0f bf 57 ldub [ %fp + -169 ], %g1 <== NOT EXECUTED vol->rdir_cl = FAT_GET_BR_FAT32_ROOT_CLUSTER(boot_rec); 40040ef8: 85 28 60 08 sll %g1, 8, %g2 <== NOT EXECUTED 40040efc: c2 0f bf 63 ldub [ %fp + -157 ], %g1 <== NOT EXECUTED 40040f00: 89 28 60 10 sll %g1, 0x10, %g4 <== NOT EXECUTED 40040f04: c2 0f bf 5f ldub [ %fp + -161 ], %g1 <== NOT EXECUTED vol->mask = FAT_FAT32_MASK; 40040f08: b8 10 e3 ff or %g3, 0x3ff, %i4 <== NOT EXECUTED vol->eoc_val = FAT_FAT32_EOC; 40040f0c: ba 10 e3 f8 or %g3, 0x3f8, %i5 <== NOT EXECUTED vol->rdir_cl = FAT_GET_BR_FAT32_ROOT_CLUSTER(boot_rec); 40040f10: f6 0f bf 5b ldub [ %fp + -165 ], %i3 <== NOT EXECUTED 40040f14: 87 28 60 18 sll %g1, 0x18, %g3 <== NOT EXECUTED vol->mirror = FAT_GET_BR_EXT_FLAGS(boot_rec) & FAT_BR_EXT_FLAGS_MIRROR; 40040f18: c2 0f bf 67 ldub [ %fp + -153 ], %g1 <== NOT EXECUTED vol->rdir_cl = FAT_GET_BR_FAT32_ROOT_CLUSTER(boot_rec); 40040f1c: 84 10 80 04 or %g2, %g4, %g2 <== NOT EXECUTED vol->mask = FAT_FAT32_MASK; 40040f20: f8 24 a0 18 st %i4, [ %l2 + 0x18 ] <== NOT EXECUTED vol->rdir_cl = FAT_GET_BR_FAT32_ROOT_CLUSTER(boot_rec); 40040f24: 84 10 80 1b or %g2, %i3, %g2 <== NOT EXECUTED vol->mirror = FAT_GET_BR_EXT_FLAGS(boot_rec) & FAT_BR_EXT_FLAGS_MIRROR; 40040f28: 88 08 7f 80 and %g1, -128, %g4 <== NOT EXECUTED vol->type = FAT_FAT32; 40040f2c: b6 10 20 04 mov 4, %i3 <== NOT EXECUTED vol->rdir_cl = FAT_GET_BR_FAT32_ROOT_CLUSTER(boot_rec); 40040f30: 84 10 80 03 or %g2, %g3, %g2 <== NOT EXECUTED vol->type = FAT_FAT32; 40040f34: f6 2c a0 16 stb %i3, [ %l2 + 0x16 ] <== NOT EXECUTED if (vol->mirror) 40040f38: 80 88 60 80 btst 0x80, %g1 <== NOT EXECUTED vol->eoc_val = FAT_FAT32_EOC; 40040f3c: fa 24 a0 1c st %i5, [ %l2 + 0x1c ] <== NOT EXECUTED vol->rdir_cl = FAT_GET_BR_FAT32_ROOT_CLUSTER(boot_rec); 40040f40: c4 24 a0 44 st %g2, [ %l2 + 0x44 ] <== NOT EXECUTED if (vol->mirror) 40040f44: 02 80 00 42 be 4004104c <== NOT EXECUTED 40040f48: c8 2c a0 5c stb %g4, [ %l2 + 0x5c ] <== NOT EXECUTED vol->afat = FAT_GET_BR_EXT_FLAGS(boot_rec) & FAT_BR_EXT_FLAGS_FAT_NUM; 40040f4c: c2 0f bf 67 ldub [ %fp + -153 ], %g1 <== NOT EXECUTED 40040f50: 82 08 60 0f and %g1, 0xf, %g1 <== NOT EXECUTED 40040f54: c2 2c a0 64 stb %g1, [ %l2 + 0x64 ] <== NOT EXECUTED vol->info_sec = FAT_GET_BR_FAT32_FS_INFO_SECTOR(boot_rec); 40040f58: c2 0f bf 4f ldub [ %fp + -177 ], %g1 <== NOT EXECUTED 40040f5c: 93 28 60 08 sll %g1, 8, %o1 <== NOT EXECUTED 40040f60: c2 0f bf 53 ldub [ %fp + -173 ], %g1 <== NOT EXECUTED 40040f64: 92 12 40 01 or %o1, %g1, %o1 <== NOT EXECUTED if( vol->info_sec == 0 ) 40040f68: 80 a2 60 00 cmp %o1, 0 <== NOT EXECUTED 40040f6c: 02 bf ff 06 be 40040b84 <== NOT EXECUTED 40040f70: d2 34 a0 48 sth %o1, [ %l2 + 0x48 ] <== NOT EXECUTED ret = _fat_block_read(fs_info, vol->info_sec , 0, 40040f74: 96 10 20 04 mov 4, %o3 <== NOT EXECUTED 40040f78: 98 07 bf 90 add %fp, -112, %o4 <== NOT EXECUTED 40040f7c: 94 10 20 00 clr %o2 <== NOT EXECUTED 40040f80: 7f ff fd 65 call 40040514 <_fat_block_read> <== NOT EXECUTED 40040f84: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED if ( ret < 0 ) 40040f88: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040f8c: 06 80 00 56 bl 400410e4 <== NOT EXECUTED 40040f90: c6 0f bf 93 ldub [ %fp + -109 ], %g3 <== NOT EXECUTED if (FAT_GET_FSINFO_LEAD_SIGNATURE(fs_info_sector) != 40040f94: 87 28 e0 18 sll %g3, 0x18, %g3 <== NOT EXECUTED 40040f98: c4 0f bf 91 ldub [ %fp + -111 ], %g2 <== NOT EXECUTED 40040f9c: c8 0f bf 92 ldub [ %fp + -110 ], %g4 <== NOT EXECUTED 40040fa0: fa 0f bf 90 ldub [ %fp + -112 ], %i5 <== NOT EXECUTED 40040fa4: 85 28 a0 08 sll %g2, 8, %g2 <== NOT EXECUTED 40040fa8: 89 29 20 10 sll %g4, 0x10, %g4 <== NOT EXECUTED 40040fac: 84 10 80 04 or %g2, %g4, %g2 <== NOT EXECUTED 40040fb0: 84 10 80 1d or %g2, %i5, %g2 <== NOT EXECUTED 40040fb4: 84 10 80 03 or %g2, %g3, %g2 <== NOT EXECUTED 40040fb8: 07 10 58 54 sethi %hi(0x41615000), %g3 <== NOT EXECUTED 40040fbc: 86 10 e2 52 or %g3, 0x252, %g3 ! 41615252 <== NOT EXECUTED 40040fc0: 80 a0 80 03 cmp %g2, %g3 <== NOT EXECUTED 40040fc4: 12 bf fe ea bne 40040b6c <== NOT EXECUTED 40040fc8: 98 07 bf 90 add %fp, -112, %o4 <== NOT EXECUTED ret = _fat_block_read(fs_info, vol->info_sec , FAT_FSI_INFO, 40040fcc: d2 14 a0 48 lduh [ %l2 + 0x48 ], %o1 <== NOT EXECUTED 40040fd0: 96 10 20 0c mov 0xc, %o3 <== NOT EXECUTED 40040fd4: 94 10 21 e4 mov 0x1e4, %o2 <== NOT EXECUTED 40040fd8: 7f ff fd 4f call 40040514 <_fat_block_read> <== NOT EXECUTED 40040fdc: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED if ( ret < 0 ) 40040fe0: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40040fe4: 06 80 00 3a bl 400410cc <== NOT EXECUTED 40040fe8: c6 0f bf 95 ldub [ %fp + -107 ], %g3 <== NOT EXECUTED FAT_GET_FSINFO_FREE_CLUSTER_COUNT(fs_info_sector); 40040fec: f6 0f bf 96 ldub [ %fp + -106 ], %i3 <== NOT EXECUTED 40040ff0: f2 0f bf 94 ldub [ %fp + -108 ], %i1 <== NOT EXECUTED 40040ff4: f8 0f bf 97 ldub [ %fp + -105 ], %i4 <== NOT EXECUTED FAT_GET_FSINFO_NEXT_FREE_CLUSTER(fs_info_sector); 40040ff8: c4 0f bf 99 ldub [ %fp + -103 ], %g2 <== NOT EXECUTED 40040ffc: fa 0f bf 9a ldub [ %fp + -102 ], %i5 <== NOT EXECUTED 40041000: f4 0f bf 98 ldub [ %fp + -104 ], %i2 <== NOT EXECUTED 40041004: c8 0f bf 9b ldub [ %fp + -101 ], %g4 <== NOT EXECUTED FAT_GET_FSINFO_FREE_CLUSTER_COUNT(fs_info_sector); 40041008: 87 28 e0 08 sll %g3, 8, %g3 <== NOT EXECUTED 4004100c: b7 2e e0 10 sll %i3, 0x10, %i3 <== NOT EXECUTED 40041010: b9 2f 20 18 sll %i4, 0x18, %i4 <== NOT EXECUTED 40041014: 86 10 c0 1b or %g3, %i3, %g3 <== NOT EXECUTED FAT_GET_FSINFO_NEXT_FREE_CLUSTER(fs_info_sector); 40041018: 85 28 a0 08 sll %g2, 8, %g2 <== NOT EXECUTED FAT_GET_FSINFO_FREE_CLUSTER_COUNT(fs_info_sector); 4004101c: 86 10 c0 19 or %g3, %i1, %g3 <== NOT EXECUTED FAT_GET_FSINFO_NEXT_FREE_CLUSTER(fs_info_sector); 40041020: bb 2f 60 10 sll %i5, 0x10, %i5 <== NOT EXECUTED FAT_GET_FSINFO_FREE_CLUSTER_COUNT(fs_info_sector); 40041024: 86 10 c0 1c or %g3, %i4, %g3 <== NOT EXECUTED FAT_GET_FSINFO_NEXT_FREE_CLUSTER(fs_info_sector); 40041028: 84 10 80 1d or %g2, %i5, %g2 <== NOT EXECUTED 4004102c: 89 29 20 18 sll %g4, 0x18, %g4 <== NOT EXECUTED 40041030: 84 10 80 1a or %g2, %i2, %g2 <== NOT EXECUTED vol->free_cls_in_fs_info = 40041034: c6 24 a0 50 st %g3, [ %l2 + 0x50 ] <== NOT EXECUTED FAT_GET_FSINFO_NEXT_FREE_CLUSTER(fs_info_sector); 40041038: 84 10 80 04 or %g2, %g4, %g2 <== NOT EXECUTED vol->free_cls = vol->free_cls_in_fs_info; 4004103c: c6 24 a0 4c st %g3, [ %l2 + 0x4c ] <== NOT EXECUTED vol->next_cl_in_fs_info = 40041040: c4 24 a0 58 st %g2, [ %l2 + 0x58 ] <== NOT EXECUTED 40041044: 10 bf ff 26 b 40040cdc <== NOT EXECUTED 40041048: c4 24 a0 54 st %g2, [ %l2 + 0x54 ] <== NOT EXECUTED vol->afat = 0; 4004104c: 10 bf ff c3 b 40040f58 <== NOT EXECUTED 40041050: c0 2c a0 64 clrb [ %l2 + 0x64 ] <== NOT EXECUTED close(vol->fd); 40041054: d0 04 a0 68 ld [ %l2 + 0x68 ], %o0 <== NOT EXECUTED 40041058: 7f ff 28 c5 call 4000b36c <== NOT EXECUTED 4004105c: 01 00 00 00 nop <== NOT EXECUTED rtems_set_errno_and_return_minus_one(ENXIO); 40041060: 40 00 6e 2d call 4005c914 <__errno> <== NOT EXECUTED 40041064: b0 10 3f ff mov -1, %i0 ! ffffffff <== NOT EXECUTED 40041068: 82 10 20 06 mov 6, %g1 <== NOT EXECUTED 4004106c: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 40041070: 81 c7 e0 08 ret <== NOT EXECUTED 40041074: 81 e8 00 00 restore <== NOT EXECUTED close(vol->fd); 40041078: 7f ff 28 bd call 4000b36c <== NOT EXECUTED 4004107c: d0 04 a0 68 ld [ %l2 + 0x68 ], %o0 <== NOT EXECUTED rtems_set_errno_and_return_minus_one( EIO ); 40041080: 40 00 6e 25 call 4005c914 <__errno> <== NOT EXECUTED 40041084: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 40041088: 82 10 20 05 mov 5, %g1 <== NOT EXECUTED 4004108c: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 40041090: 81 c7 e0 08 ret <== NOT EXECUTED 40041094: 81 e8 00 00 restore <== NOT EXECUTED close(vol->fd); 40041098: 7f ff 28 b5 call 4000b36c <== NOT EXECUTED 4004109c: d0 04 a0 68 ld [ %l2 + 0x68 ], %o0 <== NOT EXECUTED free(fs_info->vhash); 400410a0: 7f ff 29 78 call 4000b680 <== NOT EXECUTED 400410a4: d0 04 a0 74 ld [ %l2 + 0x74 ], %o0 <== NOT EXECUTED free(fs_info->rhash); 400410a8: d0 04 a0 78 ld [ %l2 + 0x78 ], %o0 <== NOT EXECUTED free(fs_info->uino); 400410ac: 7f ff 29 75 call 4000b680 <== NOT EXECUTED 400410b0: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED rtems_set_errno_and_return_minus_one( ENOMEM ); 400410b4: 40 00 6e 18 call 4005c914 <__errno> <== NOT EXECUTED 400410b8: 01 00 00 00 nop <== NOT EXECUTED 400410bc: 82 10 20 0c mov 0xc, %g1 ! c <_TLS_Alignment+0xb> <== NOT EXECUTED 400410c0: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 400410c4: 81 c7 e0 08 ret <== NOT EXECUTED 400410c8: 81 e8 00 00 restore <== NOT EXECUTED if (fs_info->c.state == FAT_CACHE_EMPTY) 400410cc: c4 0c a0 91 ldub [ %l2 + 0x91 ], %g2 <== NOT EXECUTED 400410d0: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 400410d4: 02 80 00 04 be 400410e4 <== NOT EXECUTED 400410d8: 01 00 00 00 nop <== NOT EXECUTED 400410dc: 7f ff fc 5f call 40040258 <== NOT EXECUTED 400410e0: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED close(vol->fd); 400410e4: 7f ff 28 a2 call 4000b36c <== NOT EXECUTED 400410e8: d0 04 a0 68 ld [ %l2 + 0x68 ], %o0 <== NOT EXECUTED return -1; 400410ec: 81 c7 e0 08 ret <== NOT EXECUTED 400410f0: 91 e8 3f ff restore %g0, -1, %o0 <== NOT EXECUTED close(vol->fd); 400410f4: 7f ff 28 9e call 4000b36c <== NOT EXECUTED 400410f8: d0 04 a0 68 ld [ %l2 + 0x68 ], %o0 <== NOT EXECUTED free(fs_info->vhash); 400410fc: 10 bf ff ec b 400410ac <== NOT EXECUTED 40041100: d0 04 a0 74 ld [ %l2 + 0x74 ], %o0 <== NOT EXECUTED close(vol->fd); 40041104: 7f ff 28 9a call 4000b36c <== NOT EXECUTED 40041108: d0 04 a0 68 ld [ %l2 + 0x68 ], %o0 <== NOT EXECUTED free(fs_info->vhash); 4004110c: 7f ff 29 5d call 4000b680 <== NOT EXECUTED 40041110: d0 04 a0 74 ld [ %l2 + 0x74 ], %o0 <== NOT EXECUTED free(fs_info->rhash); 40041114: 7f ff 29 5b call 4000b680 <== NOT EXECUTED 40041118: d0 04 a0 78 ld [ %l2 + 0x78 ], %o0 <== NOT EXECUTED free(fs_info->uino); 4004111c: 10 bf ff e4 b 400410ac <== NOT EXECUTED 40041120: d0 04 a0 7c ld [ %l2 + 0x7c ], %o0 <== NOT EXECUTED close(vol->fd); 40041124: 7f ff 28 92 call 4000b36c <== NOT EXECUTED 40041128: d0 04 a0 68 ld [ %l2 + 0x68 ], %o0 <== NOT EXECUTED rtems_set_errno_and_return_minus_one( ENOMEM ); 4004112c: 40 00 6d fa call 4005c914 <__errno> <== NOT EXECUTED 40041130: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 40041134: 82 10 20 0c mov 0xc, %g1 <== NOT EXECUTED 40041138: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 4004113c: 81 c7 e0 08 ret <== NOT EXECUTED 40041140: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 40041540 : fat_fs_info_t *fs_info, uint32_t ino ) { return (ino >= fs_info->uino_base); 40041540: c2 02 20 88 ld [ %o0 + 0x88 ], %g1 <== NOT EXECUTED 40041544: 80 a2 40 01 cmp %o1, %g1 <== NOT EXECUTED } 40041548: 81 c3 e0 08 retl <== NOT EXECUTED 4004154c: 90 60 3f ff subx %g0, -1, %o0 <== NOT EXECUTED =============================================================================== 4003f1f8 : { 4003f1f8: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint32_t data_cls_val = fs_info->vol.data_cls + 2; 4003f1fc: c2 06 20 40 ld [ %i0 + 0x40 ], %g1 <== NOT EXECUTED if (fs_info->vol.next_cl - 2 < fs_info->vol.data_cls) 4003f200: e0 06 20 54 ld [ %i0 + 0x54 ], %l0 <== NOT EXECUTED 4003f204: 84 04 3f fe add %l0, -2, %g2 <== NOT EXECUTED { 4003f208: a4 10 00 18 mov %i0, %l2 <== NOT EXECUTED if (fs_info->vol.next_cl - 2 < fs_info->vol.data_cls) 4003f20c: 80 a0 40 02 cmp %g1, %g2 <== NOT EXECUTED 4003f210: 18 80 00 03 bgu 4003f21c <== NOT EXECUTED 4003f214: a6 00 60 02 add %g1, 2, %l3 <== NOT EXECUTED uint32_t cl4find = 2; 4003f218: a0 10 20 02 mov 2, %l0 <== NOT EXECUTED *cls_added = 0; 4003f21c: c0 26 c0 00 clr [ %i3 ] <== NOT EXECUTED while (*cls_added != count && i < data_cls_val) 4003f220: 80 a4 e0 02 cmp %l3, 2 <== NOT EXECUTED 4003f224: 18 80 00 03 bgu 4003f230 <== NOT EXECUTED 4003f228: 82 10 20 01 mov 1, %g1 <== NOT EXECUTED 4003f22c: 82 10 20 00 clr %g1 <== NOT EXECUTED 4003f230: 80 88 60 ff btst 0xff, %g1 <== NOT EXECUTED 4003f234: 02 80 00 50 be 4003f374 <== NOT EXECUTED 4003f238: 80 a6 a0 00 cmp %i2, 0 <== NOT EXECUTED 4003f23c: 02 80 00 4e be 4003f374 <== NOT EXECUTED 4003f240: a2 10 20 02 mov 2, %l1 <== NOT EXECUTED uint32_t save_cln = FAT_UNDEFINED_VALUE; 4003f244: 10 80 00 19 b 4003f2a8 <== NOT EXECUTED 4003f248: a8 10 3f ff mov -1, %l4 <== NOT EXECUTED rc = fat_set_fat_cluster(fs_info, cl4find, FAT_GENFAT_EOC); 4003f24c: 94 10 3f ff mov -1, %o2 <== NOT EXECUTED 4003f250: 92 10 00 10 mov %l0, %o1 <== NOT EXECUTED 4003f254: 7f ff ff 0f call 4003ee90 <== NOT EXECUTED 4003f258: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED if ( rc != RC_OK ) 4003f25c: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003f260: 12 80 00 38 bne 4003f340 <== NOT EXECUTED 4003f264: 80 a7 60 00 cmp %i5, 0 <== NOT EXECUTED if (zero_fill) 4003f268: 32 80 00 38 bne,a 4003f348 <== NOT EXECUTED 4003f26c: d6 04 a0 08 ld [ %l2 + 8 ], %o3 <== NOT EXECUTED (*cls_added)++; 4003f270: c2 06 c0 00 ld [ %i3 ], %g1 <== NOT EXECUTED 4003f274: 82 00 60 01 inc %g1 <== NOT EXECUTED 4003f278: c2 26 c0 00 st %g1, [ %i3 ] <== NOT EXECUTED 4003f27c: a8 10 00 10 mov %l0, %l4 <== NOT EXECUTED cl4find++; 4003f280: a0 04 20 01 inc %l0 <== NOT EXECUTED if (cl4find >= data_cls_val) 4003f284: 80 a4 c0 10 cmp %l3, %l0 <== NOT EXECUTED 4003f288: 18 80 00 03 bgu 4003f294 <== NOT EXECUTED 4003f28c: a2 04 60 01 inc %l1 <== NOT EXECUTED cl4find = 2; 4003f290: a0 10 20 02 mov 2, %l0 <== NOT EXECUTED while (*cls_added != count && i < data_cls_val) 4003f294: 80 a6 80 01 cmp %i2, %g1 <== NOT EXECUTED 4003f298: 02 80 00 38 be 4003f378 <== NOT EXECUTED 4003f29c: 80 a4 40 13 cmp %l1, %l3 <== NOT EXECUTED 4003f2a0: 3a 80 00 37 bcc,a 4003f37c <== NOT EXECUTED 4003f2a4: e8 27 00 00 st %l4, [ %i4 ] <== NOT EXECUTED uint32_t next_cln = 0; 4003f2a8: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED rc = fat_get_fat_cluster(fs_info, cl4find, &next_cln); 4003f2ac: 94 07 bf fc add %fp, -4, %o2 <== NOT EXECUTED 4003f2b0: 92 10 00 10 mov %l0, %o1 <== NOT EXECUTED 4003f2b4: 7f ff fe 84 call 4003ecc4 <== NOT EXECUTED 4003f2b8: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED if (*cls_added != 0) 4003f2bc: c2 06 c0 00 ld [ %i3 ], %g1 <== NOT EXECUTED if ( rc != RC_OK ) 4003f2c0: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4003f2c4: 12 80 00 3a bne 4003f3ac <== NOT EXECUTED 4003f2c8: b0 10 00 08 mov %o0, %i0 <== NOT EXECUTED if (next_cln == FAT_GENFAT_FREE) 4003f2cc: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED 4003f2d0: 80 a0 a0 00 cmp %g2, 0 <== NOT EXECUTED 4003f2d4: 32 bf ff ec bne,a 4003f284 <== NOT EXECUTED 4003f2d8: a0 04 20 01 inc %l0 <== NOT EXECUTED if (*cls_added == 0) 4003f2dc: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003f2e0: 22 bf ff db be,a 4003f24c <== NOT EXECUTED 4003f2e4: e0 26 40 00 st %l0, [ %i1 ] <== NOT EXECUTED rc = fat_set_fat_cluster(fs_info, cl4find, FAT_GENFAT_EOC); 4003f2e8: 94 10 3f ff mov -1, %o2 <== NOT EXECUTED 4003f2ec: 92 10 00 10 mov %l0, %o1 <== NOT EXECUTED 4003f2f0: 7f ff fe e8 call 4003ee90 <== NOT EXECUTED 4003f2f4: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED if ( rc != RC_OK ) 4003f2f8: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003f2fc: 12 80 00 2f bne 4003f3b8 <== NOT EXECUTED 4003f300: 94 10 00 10 mov %l0, %o2 <== NOT EXECUTED rc = fat_set_fat_cluster(fs_info, save_cln, cl4find); 4003f304: 92 10 00 14 mov %l4, %o1 <== NOT EXECUTED 4003f308: 7f ff fe e2 call 4003ee90 <== NOT EXECUTED 4003f30c: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED if ( rc != RC_OK ) 4003f310: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003f314: 02 bf ff d5 be 4003f268 <== NOT EXECUTED 4003f318: 80 a7 60 00 cmp %i5, 0 <== NOT EXECUTED fat_free_fat_clusters_chain(fs_info, (*chain)); 4003f31c: d2 06 40 00 ld [ %i1 ], %o1 <== NOT EXECUTED 4003f320: 7f ff ff 7e call 4003f118 <== NOT EXECUTED 4003f324: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED (void) fat_set_fat_cluster(fs_info, cl4find, FAT_GENFAT_FREE); 4003f328: 94 10 20 00 clr %o2 <== NOT EXECUTED 4003f32c: 92 10 00 10 mov %l0, %o1 <== NOT EXECUTED 4003f330: 7f ff fe d8 call 4003ee90 <== NOT EXECUTED 4003f334: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED fat_buf_release(fs_info); 4003f338: 40 00 04 6e call 400404f0 <== NOT EXECUTED 4003f33c: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED return rc; 4003f340: 81 c7 e0 08 ret <== NOT EXECUTED 4003f344: 81 e8 00 00 restore <== NOT EXECUTED ssize_t bytes_written = 4003f348: 98 10 20 00 clr %o4 <== NOT EXECUTED 4003f34c: 94 10 20 00 clr %o2 <== NOT EXECUTED 4003f350: 92 10 00 10 mov %l0, %o1 <== NOT EXECUTED 4003f354: 40 00 04 bb call 40040640 <== NOT EXECUTED 4003f358: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED if (fs_info->vol.bpc != bytes_written) 4003f35c: c2 04 a0 08 ld [ %l2 + 8 ], %g1 <== NOT EXECUTED 4003f360: 80 a0 40 08 cmp %g1, %o0 <== NOT EXECUTED 4003f364: 22 bf ff c4 be,a 4003f274 <== NOT EXECUTED 4003f368: c2 06 c0 00 ld [ %i3 ], %g1 <== NOT EXECUTED rc = -1; 4003f36c: 10 bf ff ec b 4003f31c <== NOT EXECUTED 4003f370: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED uint32_t save_cln = FAT_UNDEFINED_VALUE; 4003f374: a8 10 3f ff mov -1, %l4 <== NOT EXECUTED *last_cl = save_cln; 4003f378: e8 27 00 00 st %l4, [ %i4 ] <== NOT EXECUTED fs_info->vol.next_cl = save_cln; 4003f37c: e8 24 a0 54 st %l4, [ %l2 + 0x54 ] <== NOT EXECUTED if (fs_info->vol.free_cls != FAT_UNDEFINED_VALUE) 4003f380: c2 04 a0 4c ld [ %l2 + 0x4c ], %g1 <== NOT EXECUTED 4003f384: 80 a0 7f ff cmp %g1, -1 <== NOT EXECUTED 4003f388: 02 80 00 05 be 4003f39c <== NOT EXECUTED 4003f38c: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED fs_info->vol.free_cls -= (*cls_added); 4003f390: c4 06 c0 00 ld [ %i3 ], %g2 <== NOT EXECUTED 4003f394: 82 20 40 02 sub %g1, %g2, %g1 <== NOT EXECUTED 4003f398: c2 24 a0 4c st %g1, [ %l2 + 0x4c ] <== NOT EXECUTED fat_buf_release(fs_info); 4003f39c: 40 00 04 55 call 400404f0 <== NOT EXECUTED 4003f3a0: b0 10 20 00 clr %i0 <== NOT EXECUTED } 4003f3a4: 81 c7 e0 08 ret <== NOT EXECUTED 4003f3a8: 81 e8 00 00 restore <== NOT EXECUTED if (*cls_added != 0) 4003f3ac: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 4003f3b0: 02 80 00 05 be 4003f3c4 <== NOT EXECUTED 4003f3b4: 01 00 00 00 nop <== NOT EXECUTED fat_free_fat_clusters_chain(fs_info, (*chain)); 4003f3b8: d2 06 40 00 ld [ %i1 ], %o1 <== NOT EXECUTED 4003f3bc: 7f ff ff 57 call 4003f118 <== NOT EXECUTED 4003f3c0: 90 10 00 12 mov %l2, %o0 <== NOT EXECUTED return rc; 4003f3c4: 81 c7 e0 08 ret <== NOT EXECUTED 4003f3c8: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 40040594 : fat_fs_info_t *fs_info, uint32_t start, uint32_t offset, uint32_t count, const void *buff) { 40040594: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED uint32_t sec_num = start; uint32_t ofs = offset; uint8_t *sec_buf; uint32_t c = 0; while(count > 0) 40040598: 80 a6 e0 00 cmp %i3, 0 <== NOT EXECUTED 4004059c: 02 80 00 27 be 40040638 <== NOT EXECUTED 400405a0: a0 10 20 00 clr %l0 <== NOT EXECUTED fs_info->c.modified = true; 400405a4: 10 80 00 13 b 400405f0 <== NOT EXECUTED 400405a8: a2 10 20 01 mov 1, %l1 <== NOT EXECUTED c = MIN(count, (fs_info->vol.bps - ofs)); if (c == fs_info->vol.bytes_per_block) rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_GET, &sec_buf); else rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_READ, &sec_buf); 400405ac: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 400405b0: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 400405b4: 7f ff ff 9f call 40040430 <== NOT EXECUTED 400405b8: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED if (rc != RC_OK) return -1; memcpy((sec_buf + ofs), (buff + cmpltd), c); 400405bc: 92 07 00 10 add %i4, %l0, %o1 <== NOT EXECUTED if (rc != RC_OK) 400405c0: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 400405c4: 12 80 00 1c bne 40040634 <== NOT EXECUTED 400405c8: 94 10 00 1d mov %i5, %o2 <== NOT EXECUTED memcpy((sec_buf + ofs), (buff + cmpltd), c); 400405cc: d0 07 bf fc ld [ %fp + -4 ], %o0 <== NOT EXECUTED 400405d0: 40 00 82 80 call 40060fd0 <== NOT EXECUTED 400405d4: 90 02 00 1a add %o0, %i2, %o0 <== NOT EXECUTED 400405d8: e2 2e 20 90 stb %l1, [ %i0 + 0x90 ] <== NOT EXECUTED fat_buf_mark_modified(fs_info); count -= c; cmpltd +=c; 400405dc: a0 04 00 1d add %l0, %i5, %l0 <== NOT EXECUTED sec_num++; 400405e0: b2 06 60 01 inc %i1 <== NOT EXECUTED while(count > 0) 400405e4: b6 a6 c0 1d subcc %i3, %i5, %i3 <== NOT EXECUTED 400405e8: 02 80 00 14 be 40040638 <== NOT EXECUTED 400405ec: b4 10 20 00 clr %i2 <== NOT EXECUTED c = MIN(count, (fs_info->vol.bps - ofs)); 400405f0: fa 16 00 00 lduh [ %i0 ], %i5 <== NOT EXECUTED 400405f4: ba 27 40 1a sub %i5, %i2, %i5 <== NOT EXECUTED 400405f8: 80 a7 40 1b cmp %i5, %i3 <== NOT EXECUTED 400405fc: 38 80 00 02 bgu,a 40040604 <== NOT EXECUTED 40040600: ba 10 00 1b mov %i3, %i5 <== NOT EXECUTED if (c == fs_info->vol.bytes_per_block) 40040604: c2 06 20 10 ld [ %i0 + 0x10 ], %g1 <== NOT EXECUTED 40040608: 80 a0 40 1d cmp %g1, %i5 <== NOT EXECUTED 4004060c: 12 bf ff e8 bne 400405ac <== NOT EXECUTED 40040610: 92 10 00 19 mov %i1, %o1 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec_num, FAT_OP_TYPE_GET, &sec_buf); 40040614: 94 10 20 02 mov 2, %o2 <== NOT EXECUTED 40040618: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4004061c: 7f ff ff 85 call 40040430 <== NOT EXECUTED 40040620: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED memcpy((sec_buf + ofs), (buff + cmpltd), c); 40040624: 92 07 00 10 add %i4, %l0, %o1 <== NOT EXECUTED if (rc != RC_OK) 40040628: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 4004062c: 02 bf ff e8 be 400405cc <== NOT EXECUTED 40040630: 94 10 00 1d mov %i5, %o2 <== NOT EXECUTED return -1; 40040634: a0 10 3f ff mov -1, %l0 <== NOT EXECUTED ofs = 0; } return cmpltd; } 40040638: 81 c7 e0 08 ret <== NOT EXECUTED 4004063c: 91 e8 00 10 restore %g0, %l0, %o0 <== NOT EXECUTED =============================================================================== 4003ee90 : fat_set_fat_cluster( fat_fs_info_t *fs_info, uint32_t cln, uint32_t in_val ) { 4003ee90: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED int rc = RC_OK; uint32_t sec = 0; uint32_t ofs = 0; uint16_t fat16_clv = 0; uint32_t fat32_clv = 0; uint8_t *sec_buf = NULL; 4003ee94: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED /* sanity check */ if ( (cln < 2) || (cln > (fs_info->vol.data_cls + 1)) ) 4003ee98: 80 a6 60 01 cmp %i1, 1 <== NOT EXECUTED 4003ee9c: 08 80 00 74 bleu 4003f06c <== NOT EXECUTED 4003eea0: ba 10 00 18 mov %i0, %i5 <== NOT EXECUTED 4003eea4: c2 06 20 40 ld [ %i0 + 0x40 ], %g1 <== NOT EXECUTED 4003eea8: 82 00 60 01 inc %g1 <== NOT EXECUTED 4003eeac: 80 a0 40 19 cmp %g1, %i1 <== NOT EXECUTED 4003eeb0: 0a 80 00 6f bcs 4003f06c <== NOT EXECUTED 4003eeb4: 01 00 00 00 nop <== NOT EXECUTED rtems_set_errno_and_return_minus_one(EIO); sec = (FAT_FAT_OFFSET(fs_info->vol.type, cln) >> fs_info->vol.sec_log2) + 4003eeb8: c2 0e 20 16 ldub [ %i0 + 0x16 ], %g1 <== NOT EXECUTED 4003eebc: 80 88 60 01 btst 1, %g1 <== NOT EXECUTED 4003eec0: 12 80 00 22 bne 4003ef48 <== NOT EXECUTED 4003eec4: b7 36 60 01 srl %i1, 1, %i3 <== NOT EXECUTED 4003eec8: 80 88 60 02 btst 2, %g1 <== NOT EXECUTED 4003eecc: 02 80 00 03 be 4003eed8 <== NOT EXECUTED 4003eed0: a1 2e 60 02 sll %i1, 2, %l0 <== NOT EXECUTED 4003eed4: a1 2e 60 01 sll %i1, 1, %l0 <== NOT EXECUTED 4003eed8: f8 0f 60 02 ldub [ %i5 + 2 ], %i4 <== NOT EXECUTED 4003eedc: c2 07 60 60 ld [ %i5 + 0x60 ], %g1 <== NOT EXECUTED 4003eee0: b9 34 00 1c srl %l0, %i4, %i4 <== NOT EXECUTED fs_info->vol.afat_loc; ofs = FAT_FAT_OFFSET(fs_info->vol.type, cln) & (fs_info->vol.bps - 1); 4003eee4: f6 17 40 00 lduh [ %i5 ], %i3 <== NOT EXECUTED sec = (FAT_FAT_OFFSET(fs_info->vol.type, cln) >> fs_info->vol.sec_log2) + 4003eee8: b8 07 00 01 add %i4, %g1, %i4 <== NOT EXECUTED rc = fat_buf_access(fs_info, sec, FAT_OP_TYPE_READ, &sec_buf); 4003eeec: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 4003eef0: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003eef4: 92 10 00 1c mov %i4, %o1 <== NOT EXECUTED 4003eef8: 40 00 05 4e call 40040430 <== NOT EXECUTED 4003eefc: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003ef00: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003ef04: 12 80 00 0f bne 4003ef40 <== NOT EXECUTED 4003ef08: b6 06 ff ff add %i3, -1, %i3 <== NOT EXECUTED return rc; switch ( fs_info->vol.type ) 4003ef0c: e2 0f 60 16 ldub [ %i5 + 0x16 ], %l1 <== NOT EXECUTED 4003ef10: 80 a4 60 02 cmp %l1, 2 <== NOT EXECUTED 4003ef14: 02 80 00 35 be 4003efe8 <== NOT EXECUTED 4003ef18: b6 0e c0 10 and %i3, %l0, %i3 <== NOT EXECUTED 4003ef1c: 80 a4 60 04 cmp %l1, 4 <== NOT EXECUTED 4003ef20: 02 80 00 26 be 4003efb8 <== NOT EXECUTED 4003ef24: 80 a4 60 01 cmp %l1, 1 <== NOT EXECUTED 4003ef28: 02 80 00 0a be 4003ef50 <== NOT EXECUTED 4003ef2c: 80 8e 60 01 btst 1, %i1 <== NOT EXECUTED fat_buf_mark_modified(fs_info); break; default: rtems_set_errno_and_return_minus_one(EIO); 4003ef30: 40 00 76 79 call 4005c914 <__errno> <== NOT EXECUTED 4003ef34: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 4003ef38: 82 10 20 05 mov 5, %g1 <== NOT EXECUTED 4003ef3c: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED break; } return RC_OK; } 4003ef40: 81 c7 e0 08 ret <== NOT EXECUTED 4003ef44: 81 e8 00 00 restore <== NOT EXECUTED 4003ef48: 10 bf ff e4 b 4003eed8 <== NOT EXECUTED 4003ef4c: a0 06 c0 19 add %i3, %i1, %l0 <== NOT EXECUTED if ( FAT_CLUSTER_IS_ODD(cln) ) 4003ef50: 02 80 00 30 be 4003f010 <== NOT EXECUTED 4003ef54: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED *(sec_buf + ofs) &= 0x0F; 4003ef58: c4 08 40 1b ldub [ %g1 + %i3 ], %g2 <== NOT EXECUTED 4003ef5c: 84 08 a0 0f and %g2, 0xf, %g2 <== NOT EXECUTED 4003ef60: c4 28 40 1b stb %g2, [ %g1 + %i3 ] <== NOT EXECUTED fat16_clv = ((uint16_t )in_val) << FAT_FAT12_SHIFT; 4003ef64: 83 2e a0 04 sll %i2, 4, %g1 <== NOT EXECUTED *(sec_buf + ofs) |= (uint8_t)(fat16_clv & 0x00F0); 4003ef68: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED 4003ef6c: c6 08 80 1b ldub [ %g2 + %i3 ], %g3 <== NOT EXECUTED 4003ef70: 82 10 40 03 or %g1, %g3, %g1 <== NOT EXECUTED 4003ef74: c2 28 80 1b stb %g1, [ %g2 + %i3 ] <== NOT EXECUTED } static inline void fat_buf_mark_modified(fat_fs_info_t *fs_info) { fs_info->c.modified = true; 4003ef78: e2 2f 60 90 stb %l1, [ %i5 + 0x90 ] <== NOT EXECUTED if ( ofs == (fs_info->vol.bps - 1) ) 4003ef7c: c2 17 40 00 lduh [ %i5 ], %g1 <== NOT EXECUTED 4003ef80: 82 00 7f ff add %g1, -1, %g1 <== NOT EXECUTED 4003ef84: 80 a0 40 1b cmp %g1, %i3 <== NOT EXECUTED 4003ef88: 02 80 00 52 be 4003f0d0 <== NOT EXECUTED 4003ef8c: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED *(sec_buf + ofs + 1) &= 0x00; 4003ef90: b6 06 e0 01 inc %i3 <== NOT EXECUTED 4003ef94: c0 28 40 1b clrb [ %g1 + %i3 ] <== NOT EXECUTED *(sec_buf + ofs + 1) |= (uint8_t )((fat16_clv & 0xFF00)>>8); 4003ef98: 83 2e a0 14 sll %i2, 0x14, %g1 <== NOT EXECUTED 4003ef9c: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED 4003efa0: c6 08 80 1b ldub [ %g2 + %i3 ], %g3 <== NOT EXECUTED 4003efa4: 83 30 60 18 srl %g1, 0x18, %g1 <== NOT EXECUTED 4003efa8: 82 10 40 03 or %g1, %g3, %g1 <== NOT EXECUTED 4003efac: c2 28 80 1b stb %g1, [ %g2 + %i3 ] <== NOT EXECUTED 4003efb0: 81 c7 e0 08 ret <== NOT EXECUTED 4003efb4: 81 e8 00 00 restore <== NOT EXECUTED fat32_clv = CT_LE_L((in_val & FAT_FAT32_MASK)); 4003efb8: 11 3c 00 00 sethi %hi(0xf0000000), %o0 <== NOT EXECUTED 4003efbc: 40 00 ea b1 call 40079a80 <__bswapsi2> <== NOT EXECUTED 4003efc0: 90 2e 80 08 andn %i2, %o0, %o0 <== NOT EXECUTED *((uint32_t *)(sec_buf + ofs)) &= CT_LE_L(0xF0000000); 4003efc4: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED 4003efc8: c2 00 80 1b ld [ %g2 + %i3 ], %g1 <== NOT EXECUTED 4003efcc: 82 08 60 f0 and %g1, 0xf0, %g1 <== NOT EXECUTED *((uint32_t *)(sec_buf + ofs)) |= fat32_clv; 4003efd0: 90 10 40 08 or %g1, %o0, %o0 <== NOT EXECUTED 4003efd4: d0 20 80 1b st %o0, [ %g2 + %i3 ] <== NOT EXECUTED 4003efd8: 82 10 20 01 mov 1, %g1 <== NOT EXECUTED 4003efdc: c2 2f 60 90 stb %g1, [ %i5 + 0x90 ] <== NOT EXECUTED 4003efe0: 81 c7 e0 08 ret <== NOT EXECUTED 4003efe4: 81 e8 00 00 restore <== NOT EXECUTED (uint16_t )(CT_LE_W(in_val)); 4003efe8: 83 2e a0 08 sll %i2, 8, %g1 <== NOT EXECUTED 4003efec: b5 2e a0 10 sll %i2, 0x10, %i2 <== NOT EXECUTED 4003eff0: b5 36 a0 18 srl %i2, 0x18, %i2 <== NOT EXECUTED 4003eff4: b4 10 40 1a or %g1, %i2, %i2 <== NOT EXECUTED *((uint16_t *)(sec_buf + ofs)) = 4003eff8: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED 4003effc: f4 30 40 1b sth %i2, [ %g1 + %i3 ] <== NOT EXECUTED 4003f000: 82 10 20 01 mov 1, %g1 <== NOT EXECUTED 4003f004: c2 2f 60 90 stb %g1, [ %i5 + 0x90 ] <== NOT EXECUTED 4003f008: 81 c7 e0 08 ret <== NOT EXECUTED 4003f00c: 81 e8 00 00 restore <== NOT EXECUTED *(sec_buf + ofs) &= 0x00; 4003f010: c0 28 40 1b clrb [ %g1 + %i3 ] <== NOT EXECUTED fat16_clv = ((uint16_t )in_val) & FAT_FAT12_MASK; 4003f014: b4 0e af ff and %i2, 0xfff, %i2 <== NOT EXECUTED *(sec_buf + ofs) |= (uint8_t)(fat16_clv & 0x00FF); 4003f018: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED 4003f01c: c2 08 80 1b ldub [ %g2 + %i3 ], %g1 <== NOT EXECUTED 4003f020: 82 16 80 01 or %i2, %g1, %g1 <== NOT EXECUTED 4003f024: c2 28 80 1b stb %g1, [ %g2 + %i3 ] <== NOT EXECUTED 4003f028: e2 2f 60 90 stb %l1, [ %i5 + 0x90 ] <== NOT EXECUTED if ( ofs == (fs_info->vol.bps - 1) ) 4003f02c: c2 17 40 00 lduh [ %i5 ], %g1 <== NOT EXECUTED 4003f030: 82 00 7f ff add %g1, -1, %g1 <== NOT EXECUTED 4003f034: 80 a0 40 1b cmp %g1, %i3 <== NOT EXECUTED 4003f038: 02 80 00 13 be 4003f084 <== NOT EXECUTED 4003f03c: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED *(sec_buf + ofs + 1) &= 0xF0; 4003f040: b6 06 e0 01 inc %i3 <== NOT EXECUTED 4003f044: c2 08 80 1b ldub [ %g2 + %i3 ], %g1 <== NOT EXECUTED 4003f048: 82 08 7f f0 and %g1, -16, %g1 <== NOT EXECUTED 4003f04c: c2 28 80 1b stb %g1, [ %g2 + %i3 ] <== NOT EXECUTED *(sec_buf + ofs+1) |= (uint8_t)((fat16_clv & 0xFF00)>>8); 4003f050: b5 36 a0 08 srl %i2, 8, %i2 <== NOT EXECUTED 4003f054: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED 4003f058: c4 08 40 1b ldub [ %g1 + %i3 ], %g2 <== NOT EXECUTED 4003f05c: b4 16 80 02 or %i2, %g2, %i2 <== NOT EXECUTED 4003f060: f4 28 40 1b stb %i2, [ %g1 + %i3 ] <== NOT EXECUTED 4003f064: 81 c7 e0 08 ret <== NOT EXECUTED 4003f068: 81 e8 00 00 restore <== NOT EXECUTED rtems_set_errno_and_return_minus_one(EIO); 4003f06c: 40 00 76 2a call 4005c914 <__errno> <== NOT EXECUTED 4003f070: b0 10 3f ff mov -1, %i0 <== NOT EXECUTED 4003f074: 82 10 20 05 mov 5, %g1 <== NOT EXECUTED 4003f078: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED 4003f07c: 81 c7 e0 08 ret <== NOT EXECUTED 4003f080: 81 e8 00 00 restore <== NOT EXECUTED rc = fat_buf_access(fs_info, sec + 1, FAT_OP_TYPE_READ, 4003f084: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003f088: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 4003f08c: 92 07 20 01 add %i4, 1, %o1 <== NOT EXECUTED 4003f090: 40 00 04 e8 call 40040430 <== NOT EXECUTED 4003f094: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003f098: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003f09c: 12 bf ff a9 bne 4003ef40 <== NOT EXECUTED 4003f0a0: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED *sec_buf &= 0xF0; 4003f0a4: c2 08 80 00 ldub [ %g2 ], %g1 <== NOT EXECUTED 4003f0a8: 82 08 7f f0 and %g1, -16, %g1 <== NOT EXECUTED 4003f0ac: c2 28 80 00 stb %g1, [ %g2 ] <== NOT EXECUTED *sec_buf |= (uint8_t)((fat16_clv & 0xFF00)>>8); 4003f0b0: b5 36 a0 08 srl %i2, 8, %i2 <== NOT EXECUTED 4003f0b4: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED 4003f0b8: c2 08 80 00 ldub [ %g2 ], %g1 <== NOT EXECUTED 4003f0bc: 82 16 80 01 or %i2, %g1, %g1 <== NOT EXECUTED 4003f0c0: c2 28 80 00 stb %g1, [ %g2 ] <== NOT EXECUTED 4003f0c4: e2 2f 60 90 stb %l1, [ %i5 + 0x90 ] <== NOT EXECUTED 4003f0c8: 81 c7 e0 08 ret <== NOT EXECUTED 4003f0cc: 81 e8 00 00 restore <== NOT EXECUTED rc = fat_buf_access(fs_info, sec + 1, FAT_OP_TYPE_READ, 4003f0d0: 96 07 bf fc add %fp, -4, %o3 <== NOT EXECUTED 4003f0d4: 94 10 20 01 mov 1, %o2 <== NOT EXECUTED 4003f0d8: 92 07 20 01 add %i4, 1, %o1 <== NOT EXECUTED 4003f0dc: 40 00 04 d5 call 40040430 <== NOT EXECUTED 4003f0e0: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if (rc != RC_OK) 4003f0e4: b0 92 20 00 orcc %o0, 0, %i0 <== NOT EXECUTED 4003f0e8: 12 bf ff 96 bne 4003ef40 <== NOT EXECUTED 4003f0ec: c2 07 bf fc ld [ %fp + -4 ], %g1 <== NOT EXECUTED *sec_buf &= 0x00; 4003f0f0: c0 28 40 00 clrb [ %g1 ] <== NOT EXECUTED *sec_buf |= (uint8_t)((fat16_clv & 0xFF00)>>8); 4003f0f4: 83 2e a0 14 sll %i2, 0x14, %g1 <== NOT EXECUTED 4003f0f8: c4 07 bf fc ld [ %fp + -4 ], %g2 <== NOT EXECUTED 4003f0fc: c6 08 80 00 ldub [ %g2 ], %g3 <== NOT EXECUTED 4003f100: 83 30 60 18 srl %g1, 0x18, %g1 <== NOT EXECUTED 4003f104: 82 10 40 03 or %g1, %g3, %g1 <== NOT EXECUTED 4003f108: c2 28 80 00 stb %g1, [ %g2 ] <== NOT EXECUTED 4003f10c: e2 2f 60 90 stb %l1, [ %i5 + 0x90 ] <== NOT EXECUTED 4003f110: 81 c7 e0 08 ret <== NOT EXECUTED 4003f114: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 40041250 : * RC_OK on success, or -1 if error occured * and errno set appropriately */ int fat_shutdown_drive(fat_fs_info_t *fs_info) { 40041250: 9d e3 bf a0 save %sp, -96, %sp <== NOT EXECUTED int rc = RC_OK; int i = 0; rc = fat_sync(fs_info); 40041254: 7f ff ff bc call 40041144 <== NOT EXECUTED 40041258: 90 10 00 18 mov %i0, %o0 <== NOT EXECUTED rc = -1; for (i = 0; i < FAT_HASH_SIZE; i++) { rtems_chain_node *node = NULL; rtems_chain_control *the_chain = fs_info->vhash + i; 4004125c: fa 06 20 74 ld [ %i0 + 0x74 ], %i5 <== NOT EXECUTED if ( rc != RC_OK ) 40041260: 80 a0 00 08 cmp %g0, %o0 <== NOT EXECUTED rc = fat_sync(fs_info); 40041264: b4 10 00 08 mov %o0, %i2 <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 40041268: d0 07 40 00 ld [ %i5 ], %o0 <== NOT EXECUTED { 4004126c: b8 10 00 18 mov %i0, %i4 <== NOT EXECUTED return &the_chain->Tail.Node; 40041270: b6 07 60 04 add %i5, 4, %i3 <== NOT EXECUTED if ( rc != RC_OK ) 40041274: b0 60 20 00 subx %g0, 0, %i0 <== NOT EXECUTED if ( !_Chain_Is_empty(the_chain)) 40041278: 80 a6 c0 08 cmp %i3, %o0 <== NOT EXECUTED 4004127c: 22 80 00 0c be,a 400412ac <== NOT EXECUTED 40041280: d0 07 60 0c ld [ %i5 + 0xc ], %o0 <== NOT EXECUTED new_first = old_first->next; 40041284: c2 02 00 00 ld [ %o0 ], %g1 <== NOT EXECUTED head->next = new_first; 40041288: c2 27 40 00 st %g1, [ %i5 ] <== NOT EXECUTED while ( (node = rtems_chain_get_unprotected(the_chain)) != NULL ) free(node); 4004128c: 7f ff 28 fd call 4000b680 <== NOT EXECUTED 40041290: fa 20 60 04 st %i5, [ %g1 + 4 ] <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 40041294: d0 07 40 00 ld [ %i5 ], %o0 <== NOT EXECUTED if ( !_Chain_Is_empty(the_chain)) 40041298: 80 a6 c0 08 cmp %i3, %o0 <== NOT EXECUTED 4004129c: 32 bf ff fb bne,a 40041288 <== NOT EXECUTED 400412a0: c2 02 00 00 ld [ %o0 ], %g1 <== NOT EXECUTED 400412a4: fa 07 20 74 ld [ %i4 + 0x74 ], %i5 <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 400412a8: d0 07 60 0c ld [ %i5 + 0xc ], %o0 <== NOT EXECUTED return &the_chain->Tail.Node; 400412ac: b6 07 60 10 add %i5, 0x10, %i3 <== NOT EXECUTED if ( !_Chain_Is_empty(the_chain)) 400412b0: 80 a2 00 1b cmp %o0, %i3 <== NOT EXECUTED 400412b4: 02 80 00 0a be 400412dc <== NOT EXECUTED 400412b8: b2 07 60 0c add %i5, 0xc, %i1 <== NOT EXECUTED new_first = old_first->next; 400412bc: c2 02 00 00 ld [ %o0 ], %g1 <== NOT EXECUTED head->next = new_first; 400412c0: c2 27 60 0c st %g1, [ %i5 + 0xc ] <== NOT EXECUTED 400412c4: 7f ff 28 ef call 4000b680 <== NOT EXECUTED 400412c8: f2 20 60 04 st %i1, [ %g1 + 4 ] <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 400412cc: d0 07 60 0c ld [ %i5 + 0xc ], %o0 <== NOT EXECUTED if ( !_Chain_Is_empty(the_chain)) 400412d0: 80 a6 c0 08 cmp %i3, %o0 <== NOT EXECUTED 400412d4: 32 bf ff fb bne,a 400412c0 <== NOT EXECUTED 400412d8: c2 02 00 00 ld [ %o0 ], %g1 <== NOT EXECUTED } for (i = 0; i < FAT_HASH_SIZE; i++) { rtems_chain_node *node = NULL; rtems_chain_control *the_chain = fs_info->rhash + i; 400412dc: fa 07 20 78 ld [ %i4 + 0x78 ], %i5 <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 400412e0: d0 07 40 00 ld [ %i5 ], %o0 <== NOT EXECUTED return &the_chain->Tail.Node; 400412e4: b6 07 60 04 add %i5, 4, %i3 <== NOT EXECUTED if ( !_Chain_Is_empty(the_chain)) 400412e8: 80 a6 c0 08 cmp %i3, %o0 <== NOT EXECUTED 400412ec: 22 80 00 0c be,a 4004131c <== NOT EXECUTED 400412f0: d0 07 60 0c ld [ %i5 + 0xc ], %o0 <== NOT EXECUTED new_first = old_first->next; 400412f4: c2 02 00 00 ld [ %o0 ], %g1 <== NOT EXECUTED head->next = new_first; 400412f8: c2 27 40 00 st %g1, [ %i5 ] <== NOT EXECUTED while ( (node = rtems_chain_get_unprotected(the_chain)) != NULL ) free(node); 400412fc: 7f ff 28 e1 call 4000b680 <== NOT EXECUTED 40041300: fa 20 60 04 st %i5, [ %g1 + 4 ] <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 40041304: d0 07 40 00 ld [ %i5 ], %o0 <== NOT EXECUTED if ( !_Chain_Is_empty(the_chain)) 40041308: 80 a2 00 1b cmp %o0, %i3 <== NOT EXECUTED 4004130c: 32 bf ff fb bne,a 400412f8 <== NOT EXECUTED 40041310: c2 02 00 00 ld [ %o0 ], %g1 <== NOT EXECUTED 40041314: fa 07 20 78 ld [ %i4 + 0x78 ], %i5 <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 40041318: d0 07 60 0c ld [ %i5 + 0xc ], %o0 <== NOT EXECUTED return &the_chain->Tail.Node; 4004131c: b6 07 60 10 add %i5, 0x10, %i3 <== NOT EXECUTED if ( !_Chain_Is_empty(the_chain)) 40041320: 80 a6 c0 08 cmp %i3, %o0 <== NOT EXECUTED 40041324: 02 80 00 0a be 4004134c <== NOT EXECUTED 40041328: b2 07 60 0c add %i5, 0xc, %i1 <== NOT EXECUTED new_first = old_first->next; 4004132c: c2 02 00 00 ld [ %o0 ], %g1 <== NOT EXECUTED head->next = new_first; 40041330: c2 27 60 0c st %g1, [ %i5 + 0xc ] <== NOT EXECUTED 40041334: 7f ff 28 d3 call 4000b680 <== NOT EXECUTED 40041338: f2 20 60 04 st %i1, [ %g1 + 4 ] <== NOT EXECUTED return _Chain_Immutable_head( the_chain )->next; 4004133c: d0 07 60 0c ld [ %i5 + 0xc ], %o0 <== NOT EXECUTED if ( !_Chain_Is_empty(the_chain)) 40041340: 80 a6 c0 08 cmp %i3, %o0 <== NOT EXECUTED 40041344: 32 bf ff fb bne,a 40041330 <== NOT EXECUTED 40041348: c2 02 00 00 ld [ %o0 ], %g1 <== NOT EXECUTED } free(fs_info->vhash); 4004134c: 7f ff 28 cd call 4000b680 <== NOT EXECUTED 40041350: d0 07 20 74 ld [ %i4 + 0x74 ], %o0 <== NOT EXECUTED free(fs_info->rhash); 40041354: 7f ff 28 cb call 4000b680 <== NOT EXECUTED 40041358: d0 07 20 78 ld [ %i4 + 0x78 ], %o0 <== NOT EXECUTED free(fs_info->uino); 4004135c: 7f ff 28 c9 call 4000b680 <== NOT EXECUTED 40041360: d0 07 20 7c ld [ %i4 + 0x7c ], %o0 <== NOT EXECUTED free(fs_info->sec_buf); 40041364: 7f ff 28 c7 call 4000b680 <== NOT EXECUTED 40041368: d0 07 20 98 ld [ %i4 + 0x98 ], %o0 <== NOT EXECUTED close(fs_info->vol.fd); 4004136c: 7f ff 28 00 call 4000b36c <== NOT EXECUTED 40041370: d0 07 20 68 ld [ %i4 + 0x68 ], %o0 <== NOT EXECUTED if (rc) 40041374: 80 a6 a0 00 cmp %i2, 0 <== NOT EXECUTED 40041378: 12 80 00 04 bne 40041388 <== NOT EXECUTED 4004137c: 01 00 00 00 nop <== NOT EXECUTED errno = EIO; return rc; } 40041380: 81 c7 e0 08 ret <== NOT EXECUTED 40041384: 81 e8 00 00 restore <== NOT EXECUTED errno = EIO; 40041388: 40 00 6d 63 call 4005c914 <__errno> <== NOT EXECUTED 4004138c: 01 00 00 00 nop <== NOT EXECUTED 40041390: 82 10 20 05 mov 5, %g1 ! 5 <_TLS_Alignment+0x4> <== NOT EXECUTED 40041394: c2 22 00 00 st %g1, [ %o0 ] <== NOT EXECUTED } 40041398: 81 c7 e0 08 ret <== NOT EXECUTED 4004139c: 81 e8 00 00 restore <== NOT EXECUTED =============================================================================== 40041144 : return RC_OK; } int fat_sync(fat_fs_info_t *fs_info) { 40041144: 9d e3 bf 98 save %sp, -104, %sp <== NOT EXECUTED if (fs_info->vol.type == FAT_FAT32) 40041148: c2 0e 20 16 ldub [ %i0 + 0x16 ], %g1 <== NOT EXECUTED { 4004114c: ba 10 00 18 mov %i0, %i5 <== NOT EXECUTED if (fs_info->vol.type == FAT_FAT32) 40041150: 80 a0 60 04 cmp %g1, 4 <== NOT EXECUTED 40041154: 02 80 00 0d be 40041188 <== NOT EXECUTED 40041158: b0 10 20 00 clr %i0 <== NOT EXECUTED if (fs_info->c.state == FAT_CACHE_EMPTY) 4004115c: c2 0f 60 91 ldub [ %i5 + 0x91 ], %g1 <== NOT EXECUTED 40041160: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 40041164: 12 80 00 18 bne 400411c4 <== NOT EXECUTED 40041168: 01 00 00 00 nop <== NOT EXECUTED if ( rc != RC_OK ) rc = -1; fat_buf_release(fs_info); if (rtems_bdbuf_syncdev(fs_info->vol.dd) != RTEMS_SUCCESSFUL) 4004116c: 7f ff 17 40 call 40006e6c <== NOT EXECUTED 40041170: d0 07 60 6c ld [ %i5 + 0x6c ], %o0 <== NOT EXECUTED 40041174: 80 a2 20 00 cmp %o0, 0 <== NOT EXECUTED 40041178: 12 80 00 34 bne 40041248 <== NOT EXECUTED 4004117c: 01 00 00 00 nop <== NOT EXECUTED rc = -1; return rc; } 40041180: 81 c7 e0 08 ret <== NOT EXECUTED 40041184: 81 e8 00 00 restore <== NOT EXECUTED uint32_t free_count = fs_info->vol.free_cls; 40041188: f6 07 60 4c ld [ %i5 + 0x4c ], %i3 <== NOT EXECUTED if (free_count != fs_info->vol.free_cls_in_fs_info) 4004118c: c2 07 60 50 ld [ %i5 + 0x50 ], %g1 <== NOT EXECUTED 40041190: 80 a6 c0 01 cmp %i3, %g1 <== NOT EXECUTED 40041194: 12 80 00 1e bne 4004120c <== NOT EXECUTED 40041198: f8 07 60 54 ld [ %i5 + 0x54 ], %i4 <== NOT EXECUTED if (next_free != fs_info->vol.next_cl_in_fs_info) 4004119c: c2 07 60 58 ld [ %i5 + 0x58 ], %g1 <== NOT EXECUTED 400411a0: 80 a7 00 01 cmp %i4, %g1 <== NOT EXECUTED 400411a4: 12 80 00 0b bne 400411d0 <== NOT EXECUTED 400411a8: 01 00 00 00 nop <== NOT EXECUTED if ( (ret1 < 0) || (ret2 < 0) ) 400411ac: b0 0e 20 ff and %i0, 0xff, %i0 <== NOT EXECUTED 400411b0: b0 20 00 18 neg %i0 <== NOT EXECUTED if (fs_info->c.state == FAT_CACHE_EMPTY) 400411b4: c2 0f 60 91 ldub [ %i5 + 0x91 ], %g1 <== NOT EXECUTED 400411b8: 80 a0 60 00 cmp %g1, 0 <== NOT EXECUTED 400411bc: 02 bf ff ec be 4004116c <== NOT EXECUTED 400411c0: 01 00 00 00 nop <== NOT EXECUTED 400411c4: 7f ff fc 25 call 40040258 <== NOT EXECUTED 400411c8: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED 400411cc: 30 bf ff e8 b,a 4004116c <== NOT EXECUTED uint32_t le_next_free = CT_LE_L(next_free); 400411d0: 40 00 e2 2c call 40079a80 <__bswapsi2> <== NOT EXECUTED 400411d4: 90 10 00 1c mov %i4, %o0 <== NOT EXECUTED fs_info->vol.next_cl_in_fs_info = next_free; 400411d8: f8 27 60 58 st %i4, [ %i5 + 0x58 ] <== NOT EXECUTED ret2 = fat_sector_write(fs_info, 400411dc: 98 07 bf fc add %fp, -4, %o4 <== NOT EXECUTED 400411e0: d2 17 60 48 lduh [ %i5 + 0x48 ], %o1 <== NOT EXECUTED uint32_t le_next_free = CT_LE_L(next_free); 400411e4: d0 27 bf fc st %o0, [ %fp + -4 ] <== NOT EXECUTED ret2 = fat_sector_write(fs_info, 400411e8: 96 10 20 04 mov 4, %o3 <== NOT EXECUTED 400411ec: 94 10 21 ec mov 0x1ec, %o2 <== NOT EXECUTED 400411f0: 7f ff fc e9 call 40040594 <== NOT EXECUTED 400411f4: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED 400411f8: 91 32 20 1f srl %o0, 0x1f, %o0 <== NOT EXECUTED 400411fc: b0 12 00 18 or %o0, %i0, %i0 <== NOT EXECUTED if ( (ret1 < 0) || (ret2 < 0) ) 40041200: b0 0e 20 ff and %i0, 0xff, %i0 <== NOT EXECUTED 40041204: 10 bf ff ec b 400411b4 <== NOT EXECUTED 40041208: b0 20 00 18 neg %i0 <== NOT EXECUTED uint32_t le_free_count = CT_LE_L(free_count); 4004120c: 40 00 e2 1d call 40079a80 <__bswapsi2> <== NOT EXECUTED 40041210: 90 10 00 1b mov %i3, %o0 <== NOT EXECUTED fs_info->vol.free_cls_in_fs_info = free_count; 40041214: f6 27 60 50 st %i3, [ %i5 + 0x50 ] <== NOT EXECUTED ret1 = fat_sector_write(fs_info, 40041218: 98 07 bf fc add %fp, -4, %o4 <== NOT EXECUTED 4004121c: d2 17 60 48 lduh [ %i5 + 0x48 ], %o1 <== NOT EXECUTED uint32_t le_free_count = CT_LE_L(free_count); 40041220: d0 27 bf fc st %o0, [ %fp + -4 ] <== NOT EXECUTED ret1 = fat_sector_write(fs_info, 40041224: 96 10 20 04 mov 4, %o3 <== NOT EXECUTED 40041228: 94 10 21 e8 mov 0x1e8, %o2 <== NOT EXECUTED 4004122c: 7f ff fc da call 40040594 <== NOT EXECUTED 40041230: 90 10 00 1d mov %i5, %o0 <== NOT EXECUTED if (next_free != fs_info->vol.next_cl_in_fs_info) 40041234: c2 07 60 58 ld [ %i5 + 0x58 ], %g1 <== NOT EXECUTED 40041238: 80 a7 00 01 cmp %i4, %g1 <== NOT EXECUTED 4004123c: 02 bf ff dc be 400411ac <== NOT EXECUTED 40041240: b1 32 20 1f srl %o0, 0x1f, %i0 <== NOT EXECUTED 40041244: 30 bf ff e3 b,a 400411d0 <== NOT EXECUTED } 40041248: 81 c7 e0 08 ret <== NOT EXECUTED 4004124c: 91 e8 3f ff restore %g0, -1, %o0 <== NOT EXECUTED =============================================================================== 4004dcb0 : fat_file_type_t type, const char *name, int name_len, mode_t mode, const fat_file_fd_t *link_fd) { 4004dcb0: 9d e3 bf 00 save %sp, -256, %sp <== NOT EXECUTED int rc = RC_OK; ssize_t ret = 0; msdos_fs_info_t *fs_info = parent_loc->mt_entry->fs_info; 4004dcb4: c2 06 20 14 ld [ %i0 + 0x14 ], %g1 <== NOT EXECUTED 4004dcb8: e0 00 60 08 ld [ %g1 + 8 ], %l0 <== NOT EXECUTED fat_file_fd_t *parent_fat_fd = parent_loc->node_access; fat_file_fd_t *fat_fd = NULL; 4004dcbc: c0 27 bf 6c clr [ %fp + -148 ] <== NOT EXECUTED dir_pos->lname.cln = FAT_FILE_SHORT_NAME; 4004dcc0: 82 10 3f ff mov -1, %g1 <== NOT EXECUTED time_t now; uint16_t time_val = 0; 4004dcc4: c0 37 bf 68 clrh [ %fp + -152 ] <== NOT EXECUTED fat_dir_pos_init(&dir_pos); memset(short_node, 0, MSDOS_DIRECTORY_ENTRY_STRUCT_SIZE); memset(dot_dotdot, 0, MSDOS_DIRECTORY_ENTRY_STRUCT_SIZE * 2); if (name_len > MSDOS_NAME_MAX_LFN_WITH_DOT) { 4004dcc8: 80 a6 e1 04 cmp %i3, 0x104 <== NOT EXECUTED uint16_t date = 0; 4004dccc: c0 37 bf 6a clrh [ %fp + -150 ] <== NOT EXECUTED memset(short_node, 0, MSDOS_DIRECTORY_ENTRY_STRUCT_SIZE); 4004dcd0: c0 27 bf 80 clr [ %fp + -128 ] <== NOT EXECUTED 4004dcd4: c0 27 bf 84 clr [ %fp + -124 ] <== NOT EXECUTED dir_pos->sname.cln = 0; 4004dcd8: c0 27 bf 70 clr [ %fp + -144 ] <== NOT EXECUTED 4004dcdc: c0 27 bf 88 clr [ %fp + -120 ] <== NOT EXECUTED 4004dce0: c0 27 bf 8c clr [ %fp + -116 ] <== NOT EXECUTED dir_pos->sname.ofs = 0; 4004dce4: c0 27 bf 74 clr [ %fp + -140 ] <== NOT EXECUTED 4004dce8: c0 27 bf 90 clr [ %fp + -112 ] <== NOT EXECUTED 4004dcec: c0 27 bf 94 clr [ %fp + -108 ] <== NOT EXECUTED dir_pos->lname.cln = FAT_FILE_SHORT_NAME; 4004dcf0: c2 27 bf 78 st %g1, [ %fp + -136 ] <== NOT EXECUTED 4004dcf4: c0 27 bf 98 clr [ %fp + -104 ] <== NOT EXECUTED 4004dcf8: c0 27 bf 9c clr [ %fp + -100 ] <== NOT EXECUTED dir_pos->lname.ofs = FAT_FILE_SHORT_NAME; 4004dcfc: c2 27 bf 7c st %g1, [ %fp + -132 ] <== NOT EXECUTED memset(dot_dotdot, 0, MSDOS_DIRECTORY_ENTRY_STRUCT_SIZE * 2); 4004dd00: c0 27 bf c0 clr [ %fp + -64 ] <== NOT EXECUTED 4004dd04: c0 27 bf c4 clr [ %fp + -60 ] <== NOT EXECUTED 4004dd08: c0 27 bf c8 clr [ %fp + -56 ] <== NOT EXECUTED 4004dd0c: c0 27 bf cc clr [ %fp + -52 ] <== NOT EXECUTED 4004dd10: c0 27 bf d0 clr [ %fp + -48 ] <== NOT EXECUTED 4004dd14: c0 27 bf d4 clr [ %fp + -44 ] <== NOT EXECUTED 4004dd18: c0 27 bf d8 clr [ %fp + -40 ] <== NOT EXECUTED 4004dd1c: c0 27 bf dc clr [ %fp + -36 ] <== NOT EXECUTED 4004dd20: c0 27 bf e0 clr [ %fp + -32 ] <== NOT EXECUTED 4004dd24: c0 27 bf e4 clr [ %fp + -28 ] <== NOT EXECUTED 4004dd28: c0 27 bf e8 clr [ %fp + -24 ] <== NOT EXECUTED 4004dd2c: c0 27 bf ec clr [ %fp + -20 ] <== NOT EXECUTED 4004dd30: c0 27 bf f0 clr [ %fp + -16 ] <== NOT EXECUTED 4004dd34: c0 27 bf f4 clr [ %fp + -12 ] <== NOT EXECUTED 4004dd38: c0 27 bf f8 clr [ %fp + -8 ] <== NOT EXECUTED 4004dd3c: c0 27 bf fc clr [ %fp + -4 ] <== NOT EXECUTED if (name_len > MSDOS_NAME_MAX_LFN_WITH_DOT) { 4004dd40: 14 80 00 e3 bg 4004e0cc <== NOT EXECUTED 4004dd44: f8 06 20 08 ld [ %i0 + 8 ], %i4 <== NOT EXECUTED rtems_set_errno_and_return_minus_one(ENAMETOOLONG); } name_type = msdos_long_to_short (fs_info->converter, 4004dd48: d0 04 20 c0 ld [ %l0 + 0xc0 ], %o0 <== NOT EXECUTED 4004dd4c: 98 10 20 0b mov 0xb, %o4 <== NOT EXECUTED 4004dd50: 96 07 bf 80 add %fp, -128, %o3 <== NOT EXECUTED 4004dd54: 94 10 00 1b mov %i3, %o2 <== NOT EXECUTED 4004dd58: 40 00 01 bf call 4004e454 <== NOT EXECUTED 4004dd5c: 92 10 00 1a mov %i2, %o1 <== NOT EXECUTED name, name_len, MSDOS_DIR_NAME(short_node), MSDOS_NAME_MAX); if (name_type == MSDOS_NAME_INVALID) { 4004dd60: a6 92 20 00 orcc %o0, 0, %l3 <== NOT EXECUTED 4004dd64: 02 80 00 df be 4004e0e0 <== NOT EXECUTED 4004dd68: 01 00 00 00 nop <== NOT EXECUTED rtems_set_errno_and_return_minus_one(EINVAL); } /* fill reserved field */ *MSDOS_DIR_NT_RES(short_node) = MSDOS_RES_NT_VALUE; 4004dd6c: c0 2f bf 8c clrb [ %fp + -116 ] <== NOT EXECUTED /* set up last write date and time */ now = time(NULL); 4004dd70: 40 00 77 39 call 4006ba54