arvinzzz
|
98da8bbdfb
|
refactor: vfs opt
1. vfs重构优化,统一fs模块的对外接口,减少不必要的冗余调用,由fs组件直接提供posix对外接口
2. vfs与libc关系整理
3. fs接口实现规范化
BREAKING CHANGE:
删除API:
int LOS_Open(const char *path, int flags, ...);
int LOS_Close(int fd);
ssize_t LOS_Read(int fd, void *buff, size_t bytes);
ssize_t LOS_Write(int fd, const void *buff, size_t bytes);
off_t LOS_Lseek(int fd, off_t off, int whence);
int LOS_Stat(const char *path, struct stat *stat);
int LOS_Statfs(const char *path, struct statfs *buf);
int LOS_Unlink(const char *path);
int LOS_Rename(const char *oldpath, const char *newpath);
int LOS_Fsync(int fd);
DIR *LOS_Opendir(const char *path);
struct dirent *LOS_Readdir(DIR *dir);
int LOS_Closedir(DIR *dir);
int LOS_Mkdir(const char *path, mode_t mode);
int LOS_Rmdir(const char *path);
int LOS_Lstat(const char *path, struct stat *buffer);
int LOS_Fstat(int fd, struct stat *buf);
int LOS_Fcntl(int fd, int cmd, ...);
int LOS_Ioctl(int fd, int req, ...);
ssize_t LOS_Readv(int fd, const struct iovec *iovBuf, int iovcnt);
ssize_t LOS_Writev(int fd, const struct iovec *iovBuf, int iovcnt);
ssize_t LOS_Pread(int fd, void *buff, size_t bytes, off_t off);
ssize_t LOS_Pwrite(int fd, const void *buff, size_t bytes, off_t off);
int LOS_Isatty(int fd);
int LOS_Access(const char *path, int amode);
int LOS_Ftruncate(int fd, off_t length);
int LOS_FsUmount(const char *target);
int LOS_FsUmount2(const char *target, int flag);
int LOS_FsMount(const char *source, const char *target,
const char *fsType, unsigned long mountflags,
const void *data);
int OsFcntl(int fd, int cmd, va_list ap);
int OsIoctl(int fd, int req, va_list ap);
Close #I65MNQ
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: I3d16852ffb87ab061c22b22f5873eba384842101
|
2022-12-13 16:56:18 +08:00 |
Hongjin Li
|
a3ce436841
|
fix: 提供CONFIG_NFILE_DESCRIPTORS宏标识最大可打开fd数量
提供CONFIG_NFILE_DESCRIPTORS宏,标识最大可打开fd数量。
提供FAT_MAX_OPEN_FILES宏,标识FAT文件系统中最大可打开fd数量。
如果只有FAT文件系统,那么CONFIG_NFILE_DESCRIPTORS等于FAT_MAX_OPEN_FILES。
如果有多个文件系统,比如fat+little+yaffs,那么CONFIG_NFILE_DESCRIPTORS应该定义为多个文件系统可打开fd数量之和。
BREAKING CHANGE:
对外提供的CONFIG_NFILE_DESCRIPTORS宏,用来标识最大可打开fd数量。
开发者可以在target_config.h中自定义CONFIG_NFILE_DESCRIPTORS和FAT_MAX_OPEN_FILES宏。
Close #I62WDU
Signed-off-by: Hongjin Li <lihongjin1@huawei.com>
|
2022-12-06 10:11:13 +08:00 |
Hongjin Li
|
a859329f28
|
fix: 使用LOSCFG_FS_FREE_HOOK释放内存
文件系统中使用LOSCFG_FS_FREE_HOOK代替free()来释放内存。
close #I6412J
Signed-off-by: Hongjin Li <lihongjin1@huawei.com>
|
2022-12-01 09:33:32 +08:00 |
openharmony_ci
|
68b8deea89
|
!937 添加MAX_OPEN_DIRS宏,标识最大可打开dir数量
Merge pull request !937 from Hongjin Li/max_open_dirs
|
2022-11-29 11:38:36 +00:00 |
Hongjin Li
|
a288718c2c
|
fix: 添加LOSCFG_MAX_OPEN_DIRS标识最大可打开dir数量
提供LOSCFG_MAX_OPEN_DIRS宏定义,标识最大可打开dir数量。新增g_dirNum静态变量,标识已打开的dir数量。
在opendir成功时g_dirNum++,在closedir成功时g_dirNum--。
BREAKING CHANGE:
新增LOSCFG_MAX_OPEN_DIRS宏定义,标识最大可打开dir数量。
fix: I62XEA
Signed-off-by: Hongjin Li <lihongjin1@huawei.com>
|
2022-11-29 19:05:00 +08:00 |
Far
|
f190275664
|
feat: 文件系统提供动态内存分配器钩子
增加LOS_FS_MALLOC/LOS_FS_FREE宏以提供用户配置动态内存分配器的能力。
用户只需要在components/fs/vfs/los_fs.h中修改对应的函数即可。
BREAKING CHANGE:
文件系统提供动态内存分配器钩子
新增宏:
LOS_FS_MALLOC
LOS_FS_FREE
fix #I63IJW
Signed-off-by: Far <yesiyuan2@huawei.com>
Change-Id: I20cb41f621a2e22d74749583f546d550ba127b72
|
2022-11-28 20:02:20 +08:00 |
arvinzzz
|
474201593d
|
feat: 提供死机场景下dump文件的能力
死机场景下,vfs层锁会放开,提供dump文件的能力
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: Id8c9e63fbf011dbc6690b9b4557bd3370353bf21
|
2022-11-05 17:58:37 +08:00 |
xiacong
|
784429d0dc
|
<fix>
修复报警信息,为以下修复点
1、修复空指针未判断
2、修复open后未及时close 导致内存泄露
3、修复strdup后未free
4、修复赋值后未使用等问题
5、修复编码中判断条件中无符号变量小于零的情况
Signed-off-by: xiacong <xiacong4@huawei.com>
Change-Id: I13d046141afeb8a116e6a04304a3793bf8e12bee
Signed-off-by: xiacong <xiacong4@huawei.com>
|
2022-09-24 22:11:27 +08:00 |
wangchen
|
0adbafb9c2
|
\fix: M核用例编译问题修复
【背景】M核用例编译问题修复
【修改方案】
1, 添加musl缺失的fcntl
2,删除musl下对fcntl和ioctl的依赖
3,修改fs和vfs种fcntl入参的处理
【影响】
对现有的产品编译不会有影响。
re #I5PKBJ
Signed-off-by: wangchen <wangchen240@huawei.com>
|
2022-09-21 07:20:12 +00:00 |
wangchen
|
2ce5ce9397
|
fix: littlefs readdir在完全读完后,会设置错误码EBADF
【背景】littlefs readdir在完全读完后,会设置错误码EBADF
【修改方案】
1, fsFops->readdir 执行返回非0时,有可能是正常情况,因此删除else赋值错误码
【影响】
对现有的产品编译不会有影响。
re #I5M1OE
Signed-off-by: wangchen <wangchen240@huawei.com>
|
2022-08-12 09:25:20 +00:00 |
openharmony_ci
|
2ec2c369e7
|
!755 内核告警清理
Merge pull request !755 from yinjiaming/fix
|
2022-08-09 08:37:39 +00:00 |
arvinzzz
|
d0c50a4af0
|
fix: iccarm编译修复
close: #I5JXMJ
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: I3fbaf459ad4807a44396f319a4d53d3cc1e7700c
|
2022-08-01 16:53:18 +08:00 |
yinjiaming
|
a36d5d9058
|
fix: 内核告警修复
【背景】
内核代码经代码扫描工具发现存在一些关于代码格式的告警,
现经修改解除掉告警。
【修改方案】
修改了代码中格式不规范的地方,修改的点有:
1.代码中一行过长
2.没有合理的添加空格和空行
3.没有按照规范进行缩进
4.括号的格式没有按照规范
5.注释的格式不对以及存在魔数字
6.函数的声明与定义的格式不一致
并更新了修改文件的版权头时间
【影响】
对现有的产品编译不会有影响。
re #I5H6F5
Signed-off-by: yinjiaming <yinjiaming@huawei.com>
Change-Id: Id8eb0450d03fae537ea4c73190fdadb76b29253d
|
2022-07-29 08:30:38 +00:00 |
arvinzzz
|
d84471ff29
|
fix: 告警修复
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: I1c00ca1dda35c62b06bff78353737f7943a647e9
|
2022-03-23 17:15:52 +08:00 |
arvinzzz
|
38f8472ddb
|
fix: 告警修复
Signed-off-by: arvinzzz <zhaotianyu9@huawei.com>
Change-Id: Iaec45e835737c0ae7eea88408b2a1a4a79f1a40c
|
2022-03-22 18:29:16 +08:00 |
zhushengle
|
a09d4882c4
|
fix: 规范整改
Signed-off-by: zhushengle <zhushengle@huawei.com>
Change-Id: I7be78853291d53636fd199104b4c72bbab222bcd
|
2022-03-19 15:46:10 +08:00 |
longxingkai
|
e3e9b2f5a5
|
fix fs opendir bug
Signed-off-by: longxingkai <longxingkai@talkweb.com.cn>
|
2022-03-11 10:23:38 +08:00 |
Guangyao Ma
|
09034de68a
|
refactor: liteos-m vfs refactory
close #I4RV26
Change-Id: I76d5d5128d37efa5fbcde6d105c78f4d7be607de
Signed-off-by: Guangyao Ma <guangyao.ma@outlook.com>
|
2022-03-09 12:07:15 +08:00 |