rt-thread-official/components/dfs/filesystems/yaffs2/fixwarning.diff

399 lines
12 KiB
Diff

diff --git a/dfs_yaffs2.c b/dfs_yaffs2.c
index 4b056ae..e63d5d4 100644
--- a/dfs_yaffs2.c
+++ b/dfs_yaffs2.c
@@ -39,7 +39,6 @@ static int dfs_yaffs_mount(struct dfs_filesystem* fs,
const void* data)
{
unsigned index;
- ynandif_Geometry *g;
/*1. find a empty entry in partition table */
for (index = 0; index < NAND_DEVICE_PART_MAX ; index ++)
diff --git a/yaffs/direct/yaffsfs.c b/yaffs/direct/yaffsfs.c
index 17fc502..1f47ea7 100644
--- a/yaffs/direct/yaffsfs.c
+++ b/yaffs/direct/yaffsfs.c
@@ -1367,7 +1367,7 @@ off_t yaffs_lseek(int handle, off_t offset, int whence)
if(offset >= 0)
pos = offset;
} else if(whence == SEEK_CUR) {
- if( (fd->position + offset) >= 0)
+ if( ((int)fd->position + offset) >= 0)
pos = (fd->position + offset);
} else if(whence == SEEK_END) {
fSize = yaffs_get_obj_length(obj);
diff --git a/yaffs/direct/yportenv.h b/yaffs/direct/yportenv.h
index f693c16..ac0a737 100644
--- a/yaffs/direct/yportenv.h
+++ b/yaffs/direct/yportenv.h
@@ -45,7 +45,7 @@
#endif
#ifndef loff_t
- typedef unsigned long loff_t;
+ typedef long loff_t;
#endif
#ifndef dev_t
@@ -66,7 +66,7 @@
#elif defined (__GNUC__) && !defined(__CC_ARM)
#ifndef loff_t
- typedef unsigned long loff_t;
+ typedef long loff_t;
#endif
#ifndef dev_t
diff --git a/yaffs/yaffs_guts.c b/yaffs/yaffs_guts.c
index d72aa5b..08db8c8 100644
--- a/yaffs/yaffs_guts.c
+++ b/yaffs/yaffs_guts.c
@@ -280,7 +280,7 @@ static void yaffs_handle_chunk_wr_error(struct yaffs_dev *dev, int nand_chunk,
static inline int yaffs_hash_fn(int n)
{
- n = abs(n);
+ n = n > 0 ? n : -n;
return n % YAFFS_NOBJECT_BUCKETS;
}
@@ -319,9 +319,9 @@ static int yaffs_check_chunk_erased(struct yaffs_dev *dev, int nand_chunk)
int retval = YAFFS_OK;
u8 *data = yaffs_get_temp_buffer(dev);
struct yaffs_ext_tags tags;
- int result;
- result = yaffs_rd_chunk_tags_nand(dev, nand_chunk, data, &tags);
+
+ yaffs_rd_chunk_tags_nand(dev, nand_chunk, data, &tags);
if (tags.ecc_result > YAFFS_ECC_RESULT_NO_ERROR)
retval = YAFFS_FAIL;
@@ -347,9 +347,9 @@ static int yaffs_verify_chunk_written(struct yaffs_dev *dev,
int retval = YAFFS_OK;
struct yaffs_ext_tags temp_tags;
u8 *buffer = yaffs_get_temp_buffer(dev);
- int result;
- result = yaffs_rd_chunk_tags_nand(dev, nand_chunk, buffer, &temp_tags);
+
+ yaffs_rd_chunk_tags_nand(dev, nand_chunk, buffer, &temp_tags);
if (memcmp(buffer, data, dev->data_bytes_per_chunk) ||
temp_tags.obj_id != tags->obj_id ||
temp_tags.chunk_id != tags->chunk_id ||
@@ -1478,7 +1478,7 @@ static struct yaffs_cache *yaffs_grab_chunk_cache(struct yaffs_dev *dev)
struct yaffs_obj *the_obj;
int usage;
int i;
- int pushout;
+ /* int pushout; */
if (dev->param.n_caches < 1)
return NULL;
@@ -1499,7 +1499,7 @@ static struct yaffs_cache *yaffs_grab_chunk_cache(struct yaffs_dev *dev)
the_obj = dev->cache[0].object;
usage = -1;
cache = NULL;
- pushout = -1;
+ /* pushout = -1; */
for (i = 0; i < dev->param.n_caches; i++) {
if (dev->cache[i].object &&
@@ -1509,7 +1509,7 @@ static struct yaffs_cache *yaffs_grab_chunk_cache(struct yaffs_dev *dev)
usage = dev->cache[i].last_use;
the_obj = dev->cache[i].object;
cache = &dev->cache[i];
- pushout = i;
+ /* pushout = i; */
}
}
@@ -3167,7 +3167,7 @@ static void yaffs_check_obj_details_loaded(struct yaffs_obj *in)
struct yaffs_obj_hdr *oh;
struct yaffs_dev *dev;
struct yaffs_ext_tags tags;
- int result;
+
int alloc_failed = 0;
if (!in || !in->lazy_loaded || in->hdr_chunk < 1)
@@ -3177,7 +3177,7 @@ static void yaffs_check_obj_details_loaded(struct yaffs_obj *in)
in->lazy_loaded = 0;
buf = yaffs_get_temp_buffer(dev);
- result = yaffs_rd_chunk_tags_nand(dev, in->hdr_chunk, buf, &tags);
+ yaffs_rd_chunk_tags_nand(dev, in->hdr_chunk, buf, &tags);
oh = (struct yaffs_obj_hdr *)buf;
in->yst_mode = oh->yst_mode;
@@ -3189,6 +3189,7 @@ static void yaffs_check_obj_details_loaded(struct yaffs_obj *in)
yaffs_clone_str(oh->alias);
if (!in->variant.symlink_variant.alias)
alloc_failed = 1; /* Not returned */
+ alloc_failed = alloc_failed;
}
yaffs_release_temp_buffer(dev, buf);
}
@@ -3274,7 +3275,7 @@ int yaffs_update_oh(struct yaffs_obj *in, const YCHAR *name, int force,
struct yaffs_dev *dev = in->my_dev;
int prev_chunk_id;
int ret_val = 0;
- int result = 0;
+
int new_chunk_id;
struct yaffs_ext_tags new_tags;
struct yaffs_ext_tags old_tags;
@@ -3297,7 +3298,7 @@ int yaffs_update_oh(struct yaffs_obj *in, const YCHAR *name, int force,
prev_chunk_id = in->hdr_chunk;
if (prev_chunk_id > 0) {
- result = yaffs_rd_chunk_tags_nand(dev, prev_chunk_id,
+ yaffs_rd_chunk_tags_nand(dev, prev_chunk_id,
buffer, &old_tags);
yaffs_verify_oh(in, oh, &old_tags, 0);
@@ -3921,7 +3922,7 @@ int yaffs_del_obj(struct yaffs_obj *obj)
list_del_init(&obj->variant.dir_variant.dirty);
}
return yaffs_del_dir(obj);
- break;
+ //break;
case YAFFS_OBJECT_TYPE_SYMLINK:
ret_val = yaffs_del_symlink(obj);
break;
@@ -3993,17 +3994,17 @@ static int yaffs_unlink_worker(struct yaffs_obj *obj)
switch (obj->variant_type) {
case YAFFS_OBJECT_TYPE_FILE:
return yaffs_del_file(obj);
- break;
+ //break;
case YAFFS_OBJECT_TYPE_DIRECTORY:
list_del_init(&obj->variant.dir_variant.dirty);
return yaffs_del_dir(obj);
- break;
+ //break;
case YAFFS_OBJECT_TYPE_SYMLINK:
return yaffs_del_symlink(obj);
- break;
+ //break;
case YAFFS_OBJECT_TYPE_SPECIAL:
return yaffs_generic_obj_del(obj);
- break;
+ //break;
case YAFFS_OBJECT_TYPE_HARDLINK:
case YAFFS_OBJECT_TYPE_UNKNOWN:
default:
@@ -4421,7 +4422,7 @@ int yaffs_get_obj_name(struct yaffs_obj *obj, YCHAR *name, int buffer_size)
} else if (obj->short_name[0]) {
strcpy(name, obj->short_name);
} else if (obj->hdr_chunk > 0) {
- int result;
+
u8 *buffer = yaffs_get_temp_buffer(obj->my_dev);
struct yaffs_obj_hdr *oh = (struct yaffs_obj_hdr *)buffer;
@@ -4429,7 +4430,7 @@ int yaffs_get_obj_name(struct yaffs_obj *obj, YCHAR *name, int buffer_size)
memset(buffer, 0, obj->my_dev->data_bytes_per_chunk);
if (obj->hdr_chunk > 0) {
- result = yaffs_rd_chunk_tags_nand(obj->my_dev,
+ yaffs_rd_chunk_tags_nand(obj->my_dev,
obj->hdr_chunk,
buffer, NULL);
}
@@ -4490,16 +4491,16 @@ unsigned yaffs_get_obj_type(struct yaffs_obj *obj)
switch (obj->variant_type) {
case YAFFS_OBJECT_TYPE_FILE:
return DT_REG;
- break;
+ //break;
case YAFFS_OBJECT_TYPE_DIRECTORY:
return DT_DIR;
- break;
+ //break;
case YAFFS_OBJECT_TYPE_SYMLINK:
return DT_LNK;
- break;
+ //break;
case YAFFS_OBJECT_TYPE_HARDLINK:
return DT_REG;
- break;
+ //break;
case YAFFS_OBJECT_TYPE_SPECIAL:
if (S_ISFIFO(obj->yst_mode))
return DT_FIFO;
@@ -4510,10 +4511,10 @@ unsigned yaffs_get_obj_type(struct yaffs_obj *obj)
if (S_ISSOCK(obj->yst_mode))
return DT_SOCK;
return DT_REG;
- break;
+ //break;
default:
return DT_REG;
- break;
+ //break;
}
}
@@ -4837,7 +4838,7 @@ int yaffs_guts_initialise(struct yaffs_dev *dev)
dev->n_erased_blocks = 0;
dev->n_free_chunks = 0;
dev->alloc_block = -1;
- dev->alloc_page = -1;
+ dev->alloc_page = (u32)(-1);
dev->n_deleted_files = 0;
dev->n_unlinked_files = 0;
dev->n_bg_deletions = 0;
diff --git a/yaffs/yaffs_packedtags2.c b/yaffs/yaffs_packedtags2.c
index 820bc41..9306623 100644
--- a/yaffs/yaffs_packedtags2.c
+++ b/yaffs/yaffs_packedtags2.c
@@ -35,7 +35,7 @@
/* Also, the top 4 bits of the object Id are set to the object type. */
#define EXTRA_OBJECT_TYPE_SHIFT (28)
-#define EXTRA_OBJECT_TYPE_MASK ((0x0f) << EXTRA_OBJECT_TYPE_SHIFT)
+#define EXTRA_OBJECT_TYPE_MASK ((0x0fUL) << EXTRA_OBJECT_TYPE_SHIFT)
static void yaffs_dump_packed_tags2_tags_only(
const struct yaffs_packed_tags2_tags_only *ptt)
@@ -129,7 +129,7 @@ void yaffs_unpack_tags2_tags_only(struct yaffs_ext_tags *t,
t->extra_parent_id = ptt->chunk_id & (~(ALL_EXTRA_FLAGS));
t->extra_is_shrink = ptt->chunk_id & EXTRA_SHRINK_FLAG ? 1 : 0;
t->extra_shadows = ptt->chunk_id & EXTRA_SHADOWS_FLAG ? 1 : 0;
- t->extra_obj_type = ptt->obj_id >> EXTRA_OBJECT_TYPE_SHIFT;
+ t->extra_obj_type = (enum yaffs_obj_type)(ptt->obj_id >> EXTRA_OBJECT_TYPE_SHIFT);
t->obj_id &= ~EXTRA_OBJECT_TYPE_MASK;
if (t->extra_obj_type == YAFFS_OBJECT_TYPE_HARDLINK)
diff --git a/yaffs/yaffs_verify.c b/yaffs/yaffs_verify.c
index b3e540d..1758125 100644
--- a/yaffs/yaffs_verify.c
+++ b/yaffs/yaffs_verify.c
@@ -223,7 +223,7 @@ void yaffs_verify_oh(struct yaffs_obj *obj, struct yaffs_obj_hdr *oh,
void yaffs_verify_file(struct yaffs_obj *obj)
{
int required_depth;
- int actual_depth;
+ //int actual_depth;
u32 last_chunk;
u32 the_chunk;
u32 x;
@@ -252,7 +252,7 @@ void yaffs_verify_file(struct yaffs_obj *obj)
required_depth++;
}
- actual_depth = obj->variant.file_variant.top_level;
+ //actual_depth = obj->variant.file_variant.top_level;
/* Check that the chunks in the tnode tree are all correct.
* We do this by scanning through the tnode tree and
diff --git a/yaffs/yaffs_yaffs1.c b/yaffs/yaffs_yaffs1.c
index da6a40f..8e7f4b2 100644
--- a/yaffs/yaffs_yaffs1.c
+++ b/yaffs/yaffs_yaffs1.c
@@ -23,7 +23,7 @@ int yaffs1_scan(struct yaffs_dev *dev)
{
struct yaffs_ext_tags tags;
int blk;
- int result;
+ //int result;
int chunk;
int c;
int deleted;
@@ -84,7 +84,7 @@ int yaffs1_scan(struct yaffs_dev *dev)
cond_resched();
bi = yaffs_get_block_info(dev, blk);
- state = bi->block_state;
+ state = (enum yaffs_block_state)(bi->block_state);
deleted = 0;
@@ -95,7 +95,7 @@ int yaffs1_scan(struct yaffs_dev *dev)
/* Read the tags and decide what to do */
chunk = blk * dev->param.chunks_per_block + c;
- result = yaffs_rd_chunk_tags_nand(dev, chunk, NULL,
+ yaffs_rd_chunk_tags_nand(dev, chunk, NULL,
&tags);
/* Let's have a good look at this chunk... */
@@ -181,7 +181,7 @@ int yaffs1_scan(struct yaffs_dev *dev)
yaffs_set_chunk_bit(dev, blk, c);
bi->pages_in_use++;
- result = yaffs_rd_chunk_tags_nand(dev, chunk,
+ yaffs_rd_chunk_tags_nand(dev, chunk,
chunk_data,
NULL);
diff --git a/yaffs/yaffs_yaffs2.c b/yaffs/yaffs_yaffs2.c
index 5761e96..69acd20 100644
--- a/yaffs/yaffs_yaffs2.c
+++ b/yaffs/yaffs_yaffs2.c
@@ -946,7 +946,7 @@ static inline int yaffs2_scan_chunk(struct yaffs_dev *dev,
int is_shrink;
int is_unlinked;
struct yaffs_ext_tags tags;
- int result;
+ //int result;
int alloc_failed = 0;
int chunk = blk * dev->param.chunks_per_block + chunk_in_block;
struct yaffs_file_var *file_var;
@@ -954,12 +954,12 @@ static inline int yaffs2_scan_chunk(struct yaffs_dev *dev,
struct yaffs_symlink_var *sl_var;
if (summary_available) {
- result = yaffs_summary_fetch(dev, &tags, chunk_in_block);
+ yaffs_summary_fetch(dev, &tags, chunk_in_block);
tags.seq_number = bi->seq_number;
}
if (!summary_available || tags.obj_id == 0) {
- result = yaffs_rd_chunk_tags_nand(dev, chunk, NULL, &tags);
+ yaffs_rd_chunk_tags_nand(dev, chunk, NULL, &tags);
dev->tags_used++;
} else {
dev->summary_used++;
@@ -1114,7 +1114,7 @@ static inline int yaffs2_scan_chunk(struct yaffs_dev *dev,
* invalid data until needed.
*/
- result = yaffs_rd_chunk_tags_nand(dev,
+ yaffs_rd_chunk_tags_nand(dev,
chunk,
chunk_data,
NULL);
@@ -1349,7 +1349,7 @@ int yaffs2_scan_backwards(struct yaffs_dev *dev)
int n_to_scan = 0;
enum yaffs_block_state state;
int c;
- int deleted;
+ //int deleted;
LIST_HEAD(hard_list);
struct yaffs_block_info *bi;
u32 seq_number;
@@ -1467,7 +1467,7 @@ int yaffs2_scan_backwards(struct yaffs_dev *dev)
/* get the block to scan in the correct order */
blk = block_index[block_iter].block;
bi = yaffs_get_block_info(dev, blk);
- deleted = 0;
+ //deleted = 0;
summary_available = yaffs_summary_read(dev, dev->sum_tags, blk);
diff --git a/yaffs_osglue.c b/yaffs_osglue.c
index 2c34f99..4f2e5db 100644
--- a/yaffs_osglue.c
+++ b/yaffs_osglue.c
@@ -58,7 +58,6 @@ void yaffsfs_LockInit(void)
#else
static rt_mutex_t mutex = RT_NULL;
-static rt_sem_t sem = RT_NULL;
void yaffsfs_Lock(void)
{
rt_mutex_take(mutex, RT_WAITING_FOREVER);