diff --git a/fs/spiffs/src/spiffs_core.c b/fs/spiffs/src/spiffs_core.c index 8354fd01c9c..25047e2738a 100644 --- a/fs/spiffs/src/spiffs_core.c +++ b/fs/spiffs/src/spiffs_core.c @@ -241,7 +241,8 @@ static int spiffs_objlu_scan_callback(FAR struct spiffs_s *fs, int16_t objid, ****************************************************************************/ static int spiffs_objlu_find_id_and_span_callback(FAR struct spiffs_s *fs, - int16_t objid, int16_t blkndx, + int16_t objid, + int16_t blkndx, int entry, FAR const void *user_const, FAR void *user_var) @@ -283,7 +284,8 @@ static int spiffs_objlu_find_id_and_span_callback(FAR struct spiffs_s *fs, * ****************************************************************************/ -static int spiffs_find_objhdr_pgndx_callback(FAR struct spiffs_s *fs, int16_t objid, +static int spiffs_find_objhdr_pgndx_callback(FAR struct spiffs_s *fs, + int16_t objid, int16_t blkndx, int entry, FAR const void *user_const, FAR void *user_var) @@ -352,7 +354,8 @@ static int if (conflicting_name != NULL && (objid & SPIFFS_OBJID_NDXFLAG) != 0) { struct spiffs_pgobj_ndxheader_s objhdr; - int16_t pgndx = SPIFFS_OBJ_LOOKUP_ENTRY_TO_PGNDX(fs, blkndx, entry); + int16_t pgndx = SPIFFS_OBJ_LOOKUP_ENTRY_TO_PGNDX(fs, blkndx, + entry); int ret; ret = spiffs_cache_read(fs, SPIFFS_OP_T_OBJ_LU2 | SPIFFS_OP_C_READ, @@ -415,7 +418,8 @@ spiffs_objlu_find_free_objid_compact_callback(FAR struct spiffs_s *fs, int ret; ret = spiffs_cache_read(fs, SPIFFS_OP_T_OBJ_LU2 | SPIFFS_OP_C_READ, 0, - SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, entry), + SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, + entry), sizeof(struct spiffs_pgobj_ndxheader_s), (FAR uint8_t *)&objhdr); if (ret >= 0 && objhdr.phdr.spndx == 0 && @@ -582,7 +586,8 @@ int spiffs_foreach_objlu(FAR struct spiffs_s *fs, int16_t starting_block, int entries_per_page; int ret; - entry_count = SPIFFS_GEO_BLOCK_COUNT(fs) * SPIFFS_OBJ_LOOKUP_MAX_ENTRIES(fs); + entry_count = SPIFFS_GEO_BLOCK_COUNT(fs) * + SPIFFS_OBJ_LOOKUP_MAX_ENTRIES(fs); cur_block = starting_block; cur_block_addr = starting_block * SPIFFS_GEO_BLOCK_SIZE(fs); objlu_buf = (FAR int16_t *)fs->lu_work; @@ -668,17 +673,18 @@ int spiffs_foreach_objlu(FAR struct spiffs_s *fs, int16_t starting_block, if (ret == SPIFFS_VIS_COUNTINUE_RELOAD) { physoff = cur_block_addr + - SPIFFS_PAGE_TO_PADDR(fs, obj_lookup_page); + SPIFFS_PAGE_TO_PADDR(fs, obj_lookup_page); ret = spiffs_cache_read(fs, - SPIFFS_OP_T_OBJ_LU | - SPIFFS_OP_C_READ, 0, - physoff, - SPIFFS_GEO_PAGE_SIZE(fs), - fs->lu_work); + SPIFFS_OP_T_OBJ_LU | + SPIFFS_OP_C_READ, 0, + physoff, + SPIFFS_GEO_PAGE_SIZE(fs), + fs->lu_work); if (ret < 0) { - ferr("ERROR: spiffs_cache_read() failed: %d\n", + ferr("ERROR: spiffs_cache_read() failed: " + "%d\n", ret); return ret; } @@ -1089,9 +1095,9 @@ int spiffs_page_allocate_data(FAR struct spiffs_s *fs, int16_t objid, ph->flags &= ~SPIFFS_PH_FLAG_USED; ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, 0, - SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, entry), - sizeof(struct spiffs_page_header_s), - (FAR uint8_t *)ph); + SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, entry), + sizeof(struct spiffs_page_header_s), + (FAR uint8_t *)ph); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", ret); @@ -1103,9 +1109,9 @@ int spiffs_page_allocate_data(FAR struct spiffs_s *fs, int16_t objid, if (data) { ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, 0, - SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, entry) + - sizeof(struct spiffs_page_header_s) + page_offs, - len, data); + SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, entry) + + sizeof(struct spiffs_page_header_s) + page_offs, + len, data); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", ret); @@ -1119,9 +1125,9 @@ int spiffs_page_allocate_data(FAR struct spiffs_s *fs, int16_t objid, { ph->flags &= ~SPIFFS_PH_FLAG_FINAL; ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, 0, - SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, entry) + - offsetof(struct spiffs_page_header_s, flags), - sizeof(uint8_t), (FAR uint8_t *)&ph->flags); + SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, entry) + + offsetof(struct spiffs_page_header_s, flags), + sizeof(uint8_t), (FAR uint8_t *)&ph->flags); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", ret); @@ -1216,10 +1222,10 @@ int spiffs_page_move(FAR struct spiffs_s *fs, /* Mark entry in destination object lookup */ ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_LU | SPIFFS_OP_C_UPDT, 0, - SPIFFS_BLOCK_TO_PADDR(fs, SPIFFS_BLOCK_FOR_PAGE(fs, free_pgndx)) + - SPIFFS_OBJ_LOOKUP_ENTRY_FOR_PAGE(fs, free_pgndx) * - sizeof(int16_t), sizeof(int16_t), - (FAR uint8_t *)&ndx); + SPIFFS_BLOCK_TO_PADDR(fs, SPIFFS_BLOCK_FOR_PAGE(fs, free_pgndx)) + + SPIFFS_OBJ_LOOKUP_ENTRY_FOR_PAGE(fs, free_pgndx) * + sizeof(int16_t), sizeof(int16_t), + (FAR uint8_t *)&ndx); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", ret); @@ -1233,7 +1239,8 @@ int spiffs_page_move(FAR struct spiffs_s *fs, /* Mark finalized in destination page */ phdr->flags &= ~(SPIFFS_PH_FLAG_FINAL | SPIFFS_PH_FLAG_USED); - ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, objid, + ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, + objid, SPIFFS_PAGE_TO_PADDR(fs, free_pgndx) + offsetof(struct spiffs_page_header_s, flags), sizeof(uint8_t), (FAR uint8_t *)&phdr->flags); @@ -1267,10 +1274,10 @@ int spiffs_page_delete(FAR struct spiffs_s *fs, int16_t pgndx) int16_t d_objid = SPIFFS_OBJID_DELETED; ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_LU | SPIFFS_OP_C_DELE, 0, - SPIFFS_BLOCK_TO_PADDR(fs, SPIFFS_BLOCK_FOR_PAGE(fs, pgndx)) + - SPIFFS_OBJ_LOOKUP_ENTRY_FOR_PAGE(fs, pgndx) * - sizeof(int16_t), sizeof(int16_t), - (FAR uint8_t *)&d_objid); + SPIFFS_BLOCK_TO_PADDR(fs, SPIFFS_BLOCK_FOR_PAGE(fs, pgndx)) + + SPIFFS_OBJ_LOOKUP_ENTRY_FOR_PAGE(fs, pgndx) * + sizeof(int16_t), sizeof(int16_t), + (FAR uint8_t *)&d_objid); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", ret); @@ -1371,16 +1378,19 @@ int spiffs_fobj_create(FAR struct spiffs_s *fs, objndx_hdr.phdr.objid = objid; objndx_hdr.phdr.spndx = 0; objndx_hdr.phdr.flags = - 0xff & ~(SPIFFS_PH_FLAG_FINAL | SPIFFS_PH_FLAG_INDEX | SPIFFS_PH_FLAG_USED); + 0xff & ~(SPIFFS_PH_FLAG_FINAL | SPIFFS_PH_FLAG_INDEX | + SPIFFS_PH_FLAG_USED); objndx_hdr.type = type; objndx_hdr.size = SPIFFS_UNDEFINED_LEN; - strncpy((char *)objndx_hdr.name, (const char *)name, CONFIG_SPIFFS_NAME_MAX); + strncpy((char *)objndx_hdr.name, (const char *)name, + CONFIG_SPIFFS_NAME_MAX); /* Update page */ ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, 0, - SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, entry), + SPIFFS_OBJ_LOOKUP_ENTRY_TO_PADDR(fs, blkndx, + entry), sizeof(struct spiffs_pgobj_ndxheader_s), (FAR uint8_t *)&objndx_hdr); @@ -1532,7 +1542,9 @@ void spiffs_fobj_event(FAR struct spiffs_s *fs, fobj != NULL; fobj = next) { - /* Set up for the next time through the loop (in case fobj is deleted) */ + /* Set up for the next time through the loop (in case fobj is + * deleted) + */ next = (FAR struct spiffs_file_s *)dq_next((FAR dq_entry_t *)fobj); @@ -1549,7 +1561,8 @@ void spiffs_fobj_event(FAR struct spiffs_s *fs, if (ev != SPIFFS_EV_NDXDEL) { - finfo("Setting objid=%d (offset=%d) objhdr_pgndx to %04x size=%d\n", + finfo("Setting objid=%d (offset=%d) objhdr_pgndx " + "to %04x size=%d\n", fobj->objid, fobj->offset, new_pgndx, new_size); fobj->objhdr_pgndx = new_pgndx; @@ -1581,7 +1594,8 @@ void spiffs_fobj_event(FAR struct spiffs_s *fs, if (fobj->cache_page && fobj->cache_page->offset > act_new_size + 1) { - spiffs_cacheinfo("File truncated, dropping cache page=%d, " + spiffs_cacheinfo("File truncated, " + "dropping cache page=%d, " "no writeback\n", fobj->cache_page->cpndx); @@ -1662,7 +1676,8 @@ int spiffs_fobj_open_bypage(FAR struct spiffs_s *fs, int16_t pgndx, physoff = SPIFFS_BLOCK_TO_PADDR(fs, blkndx) + entry * sizeof(int16_t); ret = spiffs_cache_read(fs, SPIFFS_OP_T_OBJ_LU | SPIFFS_OP_C_READ, 0, - physoff, sizeof(int16_t), (FAR uint8_t *)&objid); + physoff, sizeof(int16_t), + (FAR uint8_t *)&objid); /* Fill in the parts of the open file structure known only to the core * logic. @@ -1775,21 +1790,23 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, * 0xffffffff) */ - ret = spiffs_page_index_check(fs, fobj, cur_objndx_pgndx, 0); + ret = spiffs_page_index_check(fs, fobj, + cur_objndx_pgndx, 0); if (ret < 0) { - ferr("ERROR: spiffs_page_index_check() failed: %d\n", - ret); + ferr("ERROR: spiffs_page_index_check() failed: " + "%d\n", + ret); return ret; } ret = spiffs_cache_write(fs, - SPIFFS_OP_T_OBJNDX | SPIFFS_OP_C_UPDT, - fobj->objid, - SPIFFS_PAGE_TO_PADDR(fs, cur_objndx_pgndx), - SPIFFS_GEO_PAGE_SIZE(fs), - fs->work); + SPIFFS_OP_T_OBJNDX | SPIFFS_OP_C_UPDT, + fobj->objid, + SPIFFS_PAGE_TO_PADDR(fs, cur_objndx_pgndx), + SPIFFS_GEO_PAGE_SIZE(fs), + fs->work); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", @@ -1808,12 +1825,14 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, &new_objhdr_page); if (ret < 0) { - ferr("ERROR: spiffs_fobj_update_ndxhdr() failed: %d\n", + ferr("ERROR: spiffs_fobj_update_ndxhdr() failed: " + "%d\n", ret); return ret; } - finfo("objid=%04x store new objhdr, %04x:%04x, nwritten=%d\n", + finfo("objid=%04x store new objhdr, " + "%04x:%04x, nwritten=%d\n", fobj->objid, new_objhdr_page, 0, nwritten); } } @@ -1825,23 +1844,26 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, prev_objndx_spndx); if (ret < 0) { - ferr("ERROR: spiffs_page_index_check() failed: %d\n", ret); + ferr("ERROR: spiffs_page_index_check() failed: " + "%d\n", ret); return ret; } ret = spiffs_cache_write(fs, - SPIFFS_OP_T_OBJNDX | SPIFFS_OP_C_UPDT, - fobj->objid, - SPIFFS_PAGE_TO_PADDR(fs, cur_objndx_pgndx), - SPIFFS_GEO_PAGE_SIZE(fs), - fs->work); + SPIFFS_OP_T_OBJNDX | SPIFFS_OP_C_UPDT, + fobj->objid, + SPIFFS_PAGE_TO_PADDR(fs, cur_objndx_pgndx), + SPIFFS_GEO_PAGE_SIZE(fs), + fs->work); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", ret); return ret; } - spiffs_fobj_event(fs, (FAR struct spiffs_page_objndx_s *)fs->work, + spiffs_fobj_event(fs, + (FAR struct spiffs_page_objndx_s *) + fs->work, SPIFFS_EV_NDXUPD, fobj->objid, objndx->phdr.spndx, cur_objndx_pgndx, 0); @@ -1881,7 +1903,8 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, ret = spiffs_cache_read(fs, SPIFFS_OP_T_OBJNDX | SPIFFS_OP_C_READ, fobj->objid, - SPIFFS_PAGE_TO_PADDR(fs, cur_objndx_pgndx), + SPIFFS_PAGE_TO_PADDR(fs, + cur_objndx_pgndx), SPIFFS_GEO_PAGE_SIZE(fs), fs->work); if (ret < 0) { @@ -1915,7 +1938,8 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, 0xff & ~(SPIFFS_PH_FLAG_FINAL | SPIFFS_PH_FLAG_INDEX); ret = spiffs_page_allocate_data(fs, - fobj->objid | SPIFFS_OBJID_NDXFLAG, + fobj->objid | + SPIFFS_OBJID_NDXFLAG, &phdr, 0, 0, 0, 1, &cur_objndx_pgndx); if (ret < 0) @@ -1928,14 +1952,17 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, /* Quick "load" of new object index page */ memset(fs->work, 0xff, SPIFFS_GEO_PAGE_SIZE(fs)); - memcpy(fs->work, &phdr, sizeof(struct spiffs_page_header_s)); + memcpy(fs->work, &phdr, + sizeof(struct spiffs_page_header_s)); spiffs_fobj_event(fs, - (FAR struct spiffs_page_objndx_s *)fs->work, + (FAR struct spiffs_page_objndx_s *) + fs->work, SPIFFS_EV_NDXNEW, fobj->objid, cur_objndx_spndx, cur_objndx_pgndx, 0); - finfo("objid=%04x create objndx page, %04x:%04x, nwritten=%d\n", + finfo("objid=%04x create objndx page, " + "%04x:%04x, nwritten=%d\n", fobj->objid, cur_objndx_pgndx, cur_objndx_spndx, nwritten); } @@ -1956,22 +1983,26 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, { ret = spiffs_objlu_find_id_and_span(fs, - fobj->objid | SPIFFS_OBJID_NDXFLAG, + fobj->objid | + SPIFFS_OBJID_NDXFLAG, cur_objndx_spndx, 0, &pgndx); if (ret < 0) { - ferr("ERROR: spiffs_objlu_find_id_and_span() failed: %d\n", + ferr("ERROR: spiffs_objlu_find_id_and_span() " + "failed: %d\n", ret); return ret; } } - finfo("objid=%04x found object index at page=%04x [fobj size=%d]\n", + finfo("objid=%04x found object index at " + "page=%04x [fobj size=%d]\n", fobj->objid, pgndx, fobj->size); ret = spiffs_cache_read(fs, - SPIFFS_OP_T_OBJNDX | SPIFFS_OP_C_READ, + SPIFFS_OP_T_OBJNDX | + SPIFFS_OP_C_READ, fobj->objid, SPIFFS_PAGE_TO_PADDR(fs, pgndx), SPIFFS_GEO_PAGE_SIZE(fs), @@ -2016,7 +2047,8 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, phdr.flags = 0xff & ~(SPIFFS_PH_FLAG_FINAL); /* Finalize immediately */ ret = spiffs_page_allocate_data(fs, - fobj->objid & ~SPIFFS_OBJID_NDXFLAG, + fobj->objid & + ~SPIFFS_OBJID_NDXFLAG, &phdr, &data[nwritten], to_write, page_offs, 1, &data_page); @@ -2057,10 +2089,12 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, fobj->objid, SPIFFS_PAGE_TO_PADDR(fs, data_page) + - sizeof(struct spiffs_page_header_s) + page_offs, + sizeof(struct spiffs_page_header_s) + + page_offs, to_write, &data[nwritten]); - finfo("objid=%04x store to existing data page, %04x:%04x offset=%d, " + finfo("objid=%04x store to existing data page, " + "%04x:%04x offset=%d, " "len=%d, nwritten=%d\n", fobj->objid, data_page, data_spndx, page_offs, to_write, nwritten); @@ -2071,14 +2105,17 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, break; } - /* Update memory representation of object index page with new data page */ + /* Update memory representation of object index page with new data + * page + */ if (cur_objndx_spndx == 0) { /* Update object index header page */ ((FAR int16_t *)((FAR uint8_t *) objhdr + - sizeof(struct spiffs_pgobj_ndxheader_s)))[data_spndx] = data_page; + sizeof(struct spiffs_pgobj_ndxheader_s)))[data_spndx] = + data_page; finfo("objid=%04x wrote page %04x to objhdr entry=%04x in mem\n", fobj->objid, data_page, data_spndx); @@ -2170,11 +2207,14 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, if (offset == 0) { - /* Wrote to empty object - simply update size and write whole page */ + /* Wrote to empty object - simply update size and write whole + * page + */ objhdr->size = offset + nwritten; - finfo("objid=%04x store fresh objhdr page, %04x:%04x, nwritten=%d\n", + finfo("objid=%04x store fresh objhdr page, " + "%04x:%04x, nwritten=%d\n", fobj->objid, cur_objndx_pgndx, cur_objndx_spndx, nwritten); ret2 = spiffs_page_index_check(fs, fobj, cur_objndx_pgndx, @@ -2188,7 +2228,8 @@ ssize_t spiffs_fobj_append(FAR struct spiffs_s *fs, ret2 = spiffs_cache_write(fs, SPIFFS_OP_T_OBJNDX | SPIFFS_OP_C_UPDT, fobj->objid, - SPIFFS_PAGE_TO_PADDR(fs, cur_objndx_pgndx), + SPIFFS_PAGE_TO_PADDR(fs, + cur_objndx_pgndx), SPIFFS_GEO_PAGE_SIZE(fs), fs->work); if (ret2 < 0) { @@ -2307,7 +2348,8 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, fs->work, 0, 0, &new_objhdr_pgndx); - finfo("Store modified objhdr page, %04x:%04x, nwritten=%d\n", + finfo("Store modified objhdr page, " + "%04x:%04x, nwritten=%d\n", new_objhdr_pgndx, 0, nwritten); if (ret < 0) @@ -2327,11 +2369,13 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, prev_objndx_spndx); if (ret < 0) { - ferr("ERROR: spiffs_page_index_check() failed: %d\n", ret); + ferr("ERROR: spiffs_page_index_check() failed: %d\n", + ret); return ret; } - ret = spiffs_page_move(fs, fobj->objid, (FAR uint8_t *)objndx, + ret = spiffs_page_move(fs, fobj->objid, + (FAR uint8_t *)objndx, fobj->objid, 0, cur_objndx_pgndx, &new_objndx_pgndx); @@ -2346,10 +2390,11 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, } spiffs_fobj_event(fs, - (FAR struct spiffs_page_objndx_s *)objndx, - SPIFFS_EV_NDXUPD, fobj->objid, - objndx->phdr.spndx, new_objndx_pgndx, - 0); + (FAR struct spiffs_page_objndx_s *) + objndx, + SPIFFS_EV_NDXUPD, fobj->objid, + objndx->phdr.spndx, new_objndx_pgndx, + 0); } } @@ -2365,7 +2410,8 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, ret = spiffs_cache_read(fs, SPIFFS_OP_T_OBJNDX | SPIFFS_OP_C_READ, fobj->objid, - SPIFFS_PAGE_TO_PADDR(fs, cur_objndx_pgndx), + SPIFFS_PAGE_TO_PADDR(fs, + cur_objndx_pgndx), SPIFFS_GEO_PAGE_SIZE(fs), fs->work); if (ret < 0) { @@ -2397,12 +2443,14 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, { ret = spiffs_objlu_find_id_and_span(fs, - fobj->objid | SPIFFS_OBJID_NDXFLAG, + fobj->objid | + SPIFFS_OBJID_NDXFLAG, cur_objndx_spndx, 0, &pgndx); if (ret < 0) { - ferr("ERROR: spiffs_objlu_find_id_and_span() failed: %d\n", + ferr("ERROR: spiffs_objlu_find_id_and_span() failed: " + "%d\n", ret); return ret; } @@ -2469,17 +2517,20 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, /* A full page, allocate and write a new page of data */ ret = spiffs_page_allocate_data(fs, - fobj->objid & ~SPIFFS_OBJID_NDXFLAG, + fobj->objid & + ~SPIFFS_OBJID_NDXFLAG, &phdr, &data[nwritten], to_write, page_offs, 1, &data_pgndx); - finfo("Store new data page, %04x:%04x offset=%d, len=%d, nwritten=%d\n", + finfo("Store new data page, %04x:%04x offset=%d, " + "len=%d, nwritten=%d\n", data_pgndx, data_spndx, page_offs, to_write, nwritten); } else { /* Write to existing page, allocate new and copy unmodified data */ - ret = spiffs_page_data_check(fs, fobj, orig_data_pgndx, data_spndx); + ret = spiffs_page_data_check(fs, fobj, orig_data_pgndx, + data_spndx); if (ret < 0) { ferr("ERROR: spiffs_page_data_check() failed: %d\n", ret); @@ -2487,7 +2538,8 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, } ret = spiffs_page_allocate_data(fs, - fobj->objid & ~SPIFFS_OBJID_NDXFLAG, + fobj->objid & + ~SPIFFS_OBJID_NDXFLAG, &phdr, 0, 0, 0, 0, &data_pgndx); if (ret < 0) { @@ -2504,8 +2556,10 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, ret = spiffs_phys_cpy(fs, fobj->objid, SPIFFS_PAGE_TO_PADDR(fs, data_pgndx) + sizeof(struct spiffs_page_header_s), - SPIFFS_PAGE_TO_PADDR(fs, orig_data_pgndx) + - sizeof(struct spiffs_page_header_s), page_offs); + SPIFFS_PAGE_TO_PADDR(fs, + orig_data_pgndx) + + sizeof(struct spiffs_page_header_s), + page_offs); if (ret < 0) { ferr("ERROR: spiffs_phys_cpy() failed: %d\n", ret); @@ -2520,10 +2574,12 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, ret = spiffs_phys_cpy(fs, fobj->objid, SPIFFS_PAGE_TO_PADDR(fs, data_pgndx) + - sizeof(struct spiffs_page_header_s) + page_offs + + sizeof(struct spiffs_page_header_s) + + page_offs + to_write, SPIFFS_PAGE_TO_PADDR(fs, orig_data_pgndx) - + sizeof(struct spiffs_page_header_s) + page_offs + + + sizeof(struct spiffs_page_header_s) + + page_offs + to_write, SPIFFS_DATA_PAGE_SIZE(fs) - (page_offs + to_write)); @@ -2535,8 +2591,10 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, } ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, - fobj->objid, SPIFFS_PAGE_TO_PADDR(fs, data_pgndx) + - sizeof(struct spiffs_page_header_s) + page_offs, + fobj->objid, + SPIFFS_PAGE_TO_PADDR(fs, data_pgndx) + + sizeof(struct spiffs_page_header_s) + + page_offs, to_write, &data[nwritten]); if (ret < 0) { @@ -2548,8 +2606,10 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, fobj->objid, SPIFFS_PAGE_TO_PADDR(fs, data_pgndx) + - offsetof(struct spiffs_page_header_s, flags), - sizeof(uint8_t), (FAR uint8_t *)&phdr.flags); + offsetof(struct spiffs_page_header_s, + flags), + sizeof(uint8_t), + (FAR uint8_t *)&phdr.flags); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", ret); @@ -2571,14 +2631,17 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, break; } - /* Update memory representation of object index page with new data page */ + /* Update memory representation of object index page with new data + * page + */ if (cur_objndx_spndx == 0) { /* Update object index header page */ ((FAR int16_t *)((FAR uint8_t *)objhdr + - sizeof(struct spiffs_pgobj_ndxheader_s)))[data_spndx] = data_pgndx; + sizeof(struct spiffs_pgobj_ndxheader_s)))[data_spndx] = + data_pgndx; finfo("Wrote page %04x to objhdr entry=%04x in mem\n", data_pgndx, data_spndx); @@ -2588,8 +2651,8 @@ ssize_t spiffs_fobj_modify(FAR struct spiffs_s *fs, /* Update object index page */ ((FAR int16_t *)((FAR uint8_t *)objndx + - sizeof(struct spiffs_page_objndx_s)))[SPIFFS_OBJNDX_ENTRY(fs, data_spndx)] = - data_pgndx; + sizeof(struct spiffs_page_objndx_s))) + [SPIFFS_OBJNDX_ENTRY(fs, data_spndx)] = data_pgndx; finfo("Wrote page %04x to objndx entry %04x in mem\n", data_pgndx, (int16_t)SPIFFS_OBJNDX_ENTRY(fs, data_spndx)); @@ -2736,7 +2799,8 @@ int spiffs_fobj_truncate(FAR struct spiffs_s *fs, * remove the file, then there is nothing to do. */ - if ((fobj->size == SPIFFS_UNDEFINED_LEN || fobj->size == 0) && !remove_full) + if ((fobj->size == SPIFFS_UNDEFINED_LEN || fobj->size == 0) && + !remove_full) { /* Do nothing */ @@ -2775,7 +2839,9 @@ int spiffs_fobj_truncate(FAR struct spiffs_s *fs, cur_size = fobj->size; } - /* Before truncating, check if object is to be fully removed and mark this */ + /* Before truncating, check if object is to be fully removed and mark + * this + */ if (remove_full && new_size == 0) { @@ -2856,7 +2922,8 @@ int spiffs_fobj_truncate(FAR struct spiffs_s *fs, &new_objhdr_pgndx); if (ret < 0) { - ferr("ERROR: spiffs_fobj_update_ndxhdr() failed: %d\n", + ferr("ERROR: spiffs_fobj_update_ndxhdr() failed: " + "%d\n", ret); return ret; } @@ -2875,7 +2942,8 @@ int spiffs_fobj_truncate(FAR struct spiffs_s *fs, else { ret = spiffs_objlu_find_id_and_span(fs, - fobj->objid | SPIFFS_OBJID_NDXFLAG, + fobj->objid | + SPIFFS_OBJID_NDXFLAG, cur_objndx_spndx, 0, &objndx_pgndx); if (ret < 0) @@ -2995,8 +3063,8 @@ int spiffs_fobj_truncate(FAR struct spiffs_s *fs, /* Delete last page, partially */ - bytes_to_remove = - SPIFFS_DATA_PAGE_SIZE(fs) - (new_size % SPIFFS_DATA_PAGE_SIZE(fs)); + bytes_to_remove = SPIFFS_DATA_PAGE_SIZE(fs) - + (new_size % SPIFFS_DATA_PAGE_SIZE(fs)); finfo("Delete %d bytes from data page=%04x for data spndx=%04x, " "cur_size=%d\n", @@ -3016,7 +3084,8 @@ int spiffs_fobj_truncate(FAR struct spiffs_s *fs, /* Allocate new page and copy unmodified data */ ret = spiffs_page_allocate_data(fs, - fobj->objid & ~SPIFFS_OBJID_NDXFLAG, + fobj->objid & + ~SPIFFS_OBJID_NDXFLAG, &phdr, 0, 0, 0, 0, &new_data_pgndx); if (ret < 0) @@ -3050,8 +3119,10 @@ int spiffs_fobj_truncate(FAR struct spiffs_s *fs, ret = spiffs_cache_write(fs, SPIFFS_OP_T_OBJ_DA | SPIFFS_OP_C_UPDT, fobj->objid, SPIFFS_PAGE_TO_PADDR(fs, new_data_pgndx) + - offsetof(struct spiffs_page_header_s, flags), - sizeof(uint8_t), (FAR uint8_t *)&phdr.flags); + offsetof(struct spiffs_page_header_s, + flags), + sizeof(uint8_t), + (FAR uint8_t *)&phdr.flags); if (ret < 0) { ferr("ERROR: spiffs_cache_write() failed: %d\n", ret); @@ -3274,12 +3345,14 @@ ssize_t spiffs_object_read(FAR struct spiffs_s *fs, { ret = spiffs_objlu_find_id_and_span(fs, - fobj->objid | SPIFFS_OBJID_NDXFLAG, + fobj->objid | + SPIFFS_OBJID_NDXFLAG, cur_objndx_spndx, 0, &objndx_pgndx); if (ret < 0) { - ferr("ERROR: spiffs_objlu_find_id_and_span() failed: %d\n", + ferr("ERROR: spiffs_objlu_find_id_and_span() failed: " + "%d\n", ret); return ret; } @@ -3405,7 +3478,8 @@ int spiffs_objlu_find_free_objid(FAR struct spiffs_s *fs, int16_t *objid, int16_t free_objid; int ret = OK; - max_objects = (SPIFFS_GEO_BLOCK_COUNT(fs) * SPIFFS_OBJ_LOOKUP_MAX_ENTRIES(fs)) / 2; + max_objects = (SPIFFS_GEO_BLOCK_COUNT(fs) * + SPIFFS_OBJ_LOOKUP_MAX_ENTRIES(fs)) / 2; free_objid = SPIFFS_OBJID_FREE; state.min_objid = 1; @@ -3434,9 +3508,9 @@ int spiffs_objlu_find_free_objid(FAR struct spiffs_s *fs, int16_t *objid, memset(fs->work, 0, SPIFFS_GEO_PAGE_SIZE(fs)); ret = spiffs_foreach_objlu(fs, 0, 0, 0, 0, - spiffs_objlu_find_free_objid_bitmap_callback, - conflicting_name, &state.min_objid, - 0, 0); + spiffs_objlu_find_free_objid_bitmap_callback, + conflicting_name, &state.min_objid, + 0, 0); if (ret == SPIFFS_VIS_END) { ret = OK; @@ -3521,7 +3595,9 @@ int spiffs_objlu_find_free_objid(FAR struct spiffs_s *fs, int16_t *objid, if (min_count == 0) { - /* No objid in this range, skip compacting and use directly */ + /* No objid in this range, skip compacting and use + * directly + */ *objid = min_i * state.compaction + state.min_objid; return OK; @@ -3555,17 +3631,16 @@ int spiffs_objlu_find_free_objid(FAR struct spiffs_s *fs, int16_t *objid, * byte */ - state.compaction = - (state.max_objid - - state.min_objid) / ((SPIFFS_GEO_PAGE_SIZE(fs) / sizeof(uint8_t))); + state.compaction = (state.max_objid - state.min_objid) / + ((SPIFFS_GEO_PAGE_SIZE(fs) / sizeof(uint8_t))); finfo("COMP min=%04x max=%04x compact=%d\n", state.min_objid, state.max_objid, state.compaction); memset(fs->work, 0, SPIFFS_GEO_PAGE_SIZE(fs)); ret = spiffs_foreach_objlu(fs, 0, 0, 0, 0, - spiffs_objlu_find_free_objid_compact_callback, - &state, 0, 0, 0); + spiffs_objlu_find_free_objid_compact_callback, + &state, 0, 0, 0); if (ret == SPIFFS_VIS_END) { ret = OK;