Far
acda419a2d
fix: 修复了LOSCFG_FS_FAT_VIRTUAL_PARTITION宏开关错误作用域引起的功能错误
...
在init_cluster函数中,若未打开LOSCFG_FS_FAT_VIRTUAL_PARTITION会导致循环初始化
簇时,未调用sync_window函数,进而导致创建的文件夹未能正确置零。
Close #I3W1IW
Signed-off-by: Far <yesiyuan2@huawei.com>
2021-06-17 20:56:36 +08:00
openharmony_ci
9169637084
!310 fatfs支持symlink与readlink功能
...
Merge pull request !310 from JING/link
2021-06-17 10:03:38 +08:00
chenjing
e50cf0be6f
feat: fatfs支持符号链接功能
...
1 将fatfs_creat与fatfs_mkdir抽象成fatfs_creat_obj,通过参数type控制创建的对象类型;
2 新增fatfs_symlink与fatfs_readlink接口,其中:
1) fatfs_symlink通过fatfs_creat_obj创建出符号链接文件,并为其申请新簇,将target内容写入簇的第一个sector;
2) fatfs_readlink读出符号链接文件对应簇中第一个sector的内容
close #I3V8D1
Signed-off-by: chenjing <chenjing139@huawei.com>
Change-Id: I38dfaa28af156399817530923534d5b73b4c64af
2021-06-15 11:32:55 +08:00
openharmony_ci
b91fabb76c
!292 新增link/symlink/readlink接口的系统调用及内核实现
...
Merge pull request !292 from JING/link
2021-06-10 13:02:04 +08:00
chenjing
6eddc869d3
feat: support link/symlink/readlink
...
新增link/symlink/readlink接口的系统调用及内核实现,当前仅支持jffs2文件系统。具体接口说明如下:
一、hard link
接口原型:
int link(const char *oldpath, const char *newpath);
int linkat(int olddirfd, const char *oldpath, int newdirfd, const char *newpath, int flags);
作用:
创建oldpath的硬链接,名为newpath。
功能说明:
1、newpath与oldpath必须在同一挂载分区内。
2、若newpath已存在,不会覆盖,错误码EEXIST。
3、oldpath必须为普通文件或者软链接文件。
4、如果oldpath是一个软链接文件,那么:
若调用link接口或者linkat(flags=0),创建出软链接文件的硬链接;
若调用linkat(flags = AT_SYMLINK_FOLLOW),创建出软链接所指向源文件的硬链接。
5、oldpath与newpath对应同一个文件,对oldpath与newpath任一名字的操作都是直接操作文件,没有“原始文件”的说法。
6、使用cp命令拷贝一个硬链接文件,生成文件的拷贝,新文件的nlink数为1。
7、删除oldpath或newpath,底层文件仍存在,可以通过另一个path访问。只有当两个path都删除之后,才会真正将文件删除,空间释放。
二、symbol link
接口原型:
int symlink(const char *target, const char *linkpath);
int symlinkat(const char *target, int newdirfd, const char *linkpath);
作用:
创建一个软链接文件linkpath,存储字符串target。
功能说明:
1、target可以为任意字符串(长度小于PATH_MAX)。
2、若linkpath文件名已存在,不会覆盖,错误码EEXIST。
3、用readlink函数可读取软链接的target内容。
4、软链接文件本身大小为target长度。
5、ls时软链接文件类型显示为 'l'。
6、symlink最大循环次数为CONFIG_FS_MAX_LNK_CNT(目前为40),超出则返回错误,错误码ELOOP。
7、使用cp命令拷贝一个软链接文件:
若target是一个文件:创建一个源文件的拷贝,类型为普通文件;
若target非文件:拷贝失败。
三、readlink
接口原型:
ssize_t readlink(const char *pathname, char *buf, size_t bufsiz);
ssize_t readlinkat(int dirfd, const char *pathname, char *buf, size_t bufsiz);
作用:
读取软链接文件存放的的target内容。
功能说明:
1、pathname必须为软链接文件,否则错误码EINVAL。
2、如果bufsiz小于target长度,则截断target。
close #I3Q0OD
Change-Id: I3864d6069b627b705a369e8e32dc1eb922dc0157
Signed-off-by: chenjing <chenjing139@huawei.com>
2021-06-09 16:39:41 +08:00
lzl
6352d6e1da
kernel adapter
...
Signed-off-by: lzl <sucer_fater@163.com>
2021-06-08 09:07:04 +00:00
openharmony_ci
1a3f3f54e7
!302 fix: Codex告警清零
...
Merge pull request !302 from Far/master
2021-06-08 08:48:48 +08:00
chenwei
101a55d119
fix: codex
...
1,VFS代码中不修改参数增加const修饰
2,fs_file_mapping.c: 增加安全函数的判空
3,path_cache.c: sizeof改为使用类型
4,fs_syscall.c: 对NULL解引用
5,VnodeLookup:冗余的判空,及不正确的判空
close: I3UMWD
Signed-off-by: yansira <yansira@hotmail.com>
2021-06-07 22:45:40 +08:00
Far
b5370af822
fix: codex clean
...
1. 修复可能对NULL指针解引用的场景
2. 将不修改内容的指针入参修改为const
3. 对getpgrp的返回值进行校验后再使用
4. 修复了局部变量未初始化的问题
Close #I3UOFN
Signed-off-by: Far <yesiyuan2@huawei.com>
2021-06-07 17:08:02 +08:00
openharmony_ci
efbab200aa
!254 memory-based romfs
...
Merge pull request !254 from LeonChan/lc-master
2021-06-04 23:22:25 +08:00
openharmony_ci
a580754751
!295 修复删除/dev目录下的文件但是vnode number没有减小的问题
...
Merge pull request !295 from LeonChan/lc-bugfix-vnode
2021-06-04 21:50:32 +08:00
chenwei
4f514a16af
fix: the total used vnode number not increased after unlink a file under
...
/dev/
fix #I3TS1Y
Signed-off-by: yansira <yansira@hotmail.com>
2021-06-04 16:49:04 +08:00
chenwei
c4595d2504
feat(file system): add memory-based romfs
...
1, this RomFS's codebase is Nuttx romfs, then it is compatible with
Linux RomFS and you can create such a file system using the tool genromfs.
2, there are two major changes against with the original Nuttx romfs:
1), it is memory-based: all contents of the fs are stored in the
memory in the very first stage of "mount".
2), this version of romfs is altered to be compatible with our new
version of VFS to take advantage of vnode cache and path cache.
close: #I3S0CP
2021-06-04 16:39:51 +08:00
li_zan
f10dd7c135
feat: A核proc文件系统在echo模式下新增write的功能
...
close: #I3T6MZ
Signed-off-by: li_zan <371442490@qq.com>
2021-06-04 16:14:18 +08:00
openharmony_ci
3f16f1684a
!248 fix: fix length typo
...
Merge pull request !248 from kenneth/los_queue.h
2021-05-22 09:13:46 +08:00
arvinzzz
8cde768588
refactor: Refactored the kernel boot process and added a init framework
...
close: #I3I768
Change-Id: I4f801df4abe1a9afdf43391c28276e96a5e81513
2021-05-20 16:45:43 +08:00
kenneth
12d98b144b
fix: fix length typo
...
fix typos length、there、necessary
close https://gitee.com/openharmony/kernel_liteos_a/issues/I3RSY0
2021-05-18 14:33:59 +08:00
openharmony_ci
616ca955d5
!220 statfs不能正常显示FAT12和FAT16分区的空闲块和有效块
...
Merge pull request !220 from Far/fatfs
2021-05-15 10:01:28 +08:00
zhOu
f76fa4a344
feature: support ipc copy fd to process
2021-05-11 14:56:09 +08:00
Far
9503c4a9fc
fix: statfs can't get f_bfree and f_bavail of a FAT12/FAT16 partition
...
FAT12/FAT16 partition has no FSINFO sector storing the free cluster number,
so scanning the FAT is necessary to get the free clusters nums.
Close #I3Q0VS
2021-05-08 10:02:55 +08:00
mucor
04bcb11c3c
fix:add vnode destory for unregister dev node
...
Change-Id: I2205bbf42e7c2339f81443ace6924b12f4fa1c09
2021-04-30 15:31:03 +08:00
mucor
749420308e
fix:shell cmd rm -r crash when open target dir failed
...
Change-Id: I1146ab12b02aeef3f9a2a0422ee45936f5e4c105
2021-04-29 16:52:13 +08:00
openharmony_ci
1d0a3f022b
!186 将VnodeInUseIter和VnodeFreeAll函数改为非递归
...
Merge pull request !186 from Far/dev
2021-04-29 10:04:50 +08:00
openharmony_ci
6467ebb2dd
!194 PathCacheMemoryDump内存占用统计错误
...
Merge pull request !194 from Far/master
2021-04-29 09:58:45 +08:00
openharmony_ci
67f9f7506c
!192 format函数错误分支未释放锁
...
Merge pull request !192 from Far/fatfs
2021-04-29 09:57:58 +08:00
Far
5f6656cb36
fix: VnodeInUseIter and VnodeFreeAll used to be recursive
...
Function VnodeInUseIter and VnodeFreeAll used to be recursive.
Now we traverse the current in-use vnode list to find the vnode in
1 filesystem
Close #I3NN3U
2021-04-28 14:35:29 +08:00
Far
87da7c794c
fix: PathCacheMemoryDump miscalculate the RAM usage of PathCache
...
PathCacheMemoryDump miscalculate the RAM usage of PathCache for not
counting the name field of PathCache, which is allocated with PathCache
Close #I3OBXY
2021-04-28 14:31:31 +08:00
mucor
aa34ffe7c7
fix:remove redundant code
...
Change-Id: I8662952ac9d7912aaf2e2e72f779b3def41d14c4
2021-04-28 09:57:32 +08:00
Far
9b2b700fa0
fix: some branch in format does not release the vnode mutex properly
...
if fatfs_mkfs returns a error, format may return without drop the vnode mutex, which may cause deadlock
Close #I3OFAY
2021-04-27 16:49:23 +08:00
chenjing
af61187587
fix: fix the inappropriate errno in FatFs
...
The errno of unrecognized fat filesystem changes from ENOENT to ENOTSUP.
Close #I3O8IF
2021-04-26 16:18:51 +08:00
openharmony_ci
be40fa1381
!178 当从hashtable中获取Vnode缓存时,需要刷新Vnode的parent指针
...
Merge pull request !178 from Far/fatfs
2021-04-24 11:30:01 +08:00
openharmony_ci
fbdb808d11
!169 los_disk_cache_clear错误日志缺少换行符
...
Merge pull request !169 from Far/dev
2021-04-24 09:39:54 +08:00
Far
9f47faff73
fix: PathCacheFree try to free name field in struct PathCache
...
The name field of struct PathCache is not allocated. It should not try to free it by free(nc->name)
Close #I3NTH9
2021-04-23 15:28:44 +08:00
Far
f32caa52c6
fix: parent point of vnode found by VfsHashGet should be updated
...
When fatfs_lookup find a vnode from hashlist, the field parent of vnode should be updated,
because the old parent may be reclaimed.
Close #I3NNFA
2021-04-22 16:24:08 +08:00
openharmony_ci
dc90400456
!171 ftruncate新增支持FAT12与FAT16
...
Merge pull request !171 from JING/ftruncate
2021-04-22 15:21:21 +08:00
mucor
e8178d5917
refresh parent vnode when get vnode from hash table
...
Change-Id: I3cc042b1fcd00022bc6ba48e2a05d70f351b83de
2021-04-22 11:23:25 +08:00
JING
3027cfe543
fix ftruncate
2021-04-22 11:12:28 +08:00
openharmony_ci
89ed41a016
!173 [Desc] fix bug: kernel crashed after rmdir the umounted folder
...
Merge pull request !173 from LeonChan/lc-master
2021-04-21 19:31:12 +08:00
LeonChan
f305d1f702
fix: kernel crashed when delete a umounted folder
2021-04-21 18:35:15 +08:00
chenwei
ac0d083b1c
fix: kernel crashed after rmdir the umounted folder
...
Close: I3NGBT
Change-Id: I70130c42061e51f5978b48befea66a5925386343
2021-04-21 17:31:28 +08:00
chenjing
b9c544d898
Description: [fix]ftruncate bugfix
...
Bug: #I3NEVN
Test:
2021-04-21 16:16:08 +08:00
Far
5f6f683fab
style: los_disk_cache_clear error message has no \n(LF)
...
Close #I3NCDD
2021-04-21 11:01:09 +08:00
openharmony_ci
6ee33eb893
!165 【轻量级 PR】:update fs/vfs/vnode_hash.c.
...
Merge pull request !165 from 冷钦街/N/A
2021-04-21 08:37:54 +08:00
openharmony_ci
7dd3b59fb0
!166 【轻量级 PR】:update fs/vfs/mount.c.
...
Merge pull request !166 from 冷钦街/N/A
2021-04-21 08:37:09 +08:00
冷钦街
d7798fd0ab
update fs/vfs/path_cache.c.
2021-04-20 22:16:09 +08:00
openharmony_ci
5605063950
!163 [Desc] add debug code to fix bug: kernel crashed after rmdir the umounted folder 3
...
Merge pull request !163 from LeonChan/lc-master
2021-04-20 19:09:47 +08:00
冷钦街
0566bccffa
update fs/vfs/mount.c.
2021-04-20 18:35:15 +08:00
冷钦街
9bcead9a8f
update fs/vfs/vnode_hash.c.
2021-04-20 18:26:48 +08:00
chenwei
c6e921241b
fix: kernel crashed when delete a umounted folder
...
Close: I3MZZ6
Change-Id: Iab3919a2eebb44c82531a7fa7a2f688ec4bcc5a0
2021-04-20 16:10:24 +08:00
Far
902a11de9a
fix: lookup new vnode may cause parent vnode freeing
...
Close #I3MYP4
Change-Id: I533f4bacaf7e6dd500f5ac3ce4f5343b3b885988
2021-04-20 11:43:14 +08:00
Caoruihong
7e73c929a2
remove __cplusplus guards in .c files
...
Change-Id: I052d930d54e63179b17b77f02c107a015f3cfc3f
2021-04-19 18:28:25 +08:00
openharmony_ci
75a85e4483
!151 [Desc] add debug code to fix bug: kernel crashed after rmdir the umounted folder, parentVnode->data null
...
Merge pull request !151 from LeonChan/lc-master
2021-04-19 11:00:57 +08:00
openharmony_ci
23ee3689da
!150 Initialize a parameter
...
Merge pull request !150 from JING/master
2021-04-19 10:18:25 +08:00
openharmony_ci
9920e359f8
!149 VfsProcfsOpen实现存在问题,没有调用具体procfs节点的存在的open函数
...
Merge pull request !149 from zhangfanfan2/master
2021-04-17 12:05:35 +08:00
chenwei
296274b60f
add debug code to fix bug: kernel crashed after rmdir the umounted folder, parent->data null
...
Change-Id: I44981eb9475feb4604ffe91244b4dff00f7d1548
2021-04-17 11:44:03 +08:00
chenjing
9c13a59ac0
Description: [fix]Uninitialized parameter
...
Bug: #I2E08N
Test:
2021-04-17 10:04:29 +08:00
openharmony_ci
0e56ee6509
!147 fix capabilities in write and execute case
...
Merge pull request !147 from 野生毛霉君/master
2021-04-17 09:46:29 +08:00
zhangfanfan2
78e1fdb971
解决issueI3J6PP
2021-04-16 18:51:09 +08:00
mucor
c6b898ea30
fix capabilities in write and execute case
...
Change-Id: Ic9abc53cd0aafa1fd6272fab8191493c609ea995
2021-04-16 17:33:40 +08:00
openharmony_ci
098da53afe
!146 Fix the LFN dir entry leak in fatfs.
...
Merge pull request !146 from JING/master
2021-04-16 17:31:45 +08:00
openharmony_ci
af2b0ac75b
!144 用于检测umount栈溢出的调测功能
...
Merge pull request !144 from ysy4tc3/dev
2021-04-16 17:11:28 +08:00
JING
580ed3ea62
update fs/fat/virpart/src/virpart.c.
2021-04-16 15:49:35 +08:00
chenjing
77e8075f2f
Description: [fix]Initialize parameter
...
Bug: Uninitialized parameter
Test:
2021-04-16 15:37:26 +08:00
chenjing
b9b9d6dbaf
Description: [fix] LFN dir entry leak
...
Bug: #I3J1IC
Test: io test 1000 time
2021-04-16 11:39:37 +08:00
chenwei
a7c5abf64c
add debug code to fix bug: kernel crashed after rmdir the umounted folder
...
Change-Id: Ia956fd09f1bd734cd26ab631359c1e2131fe1e37
2021-04-16 11:30:04 +08:00
Far
7e0e46828b
Bugfix: add vnode iteration debug feature for a bug
...
buginfo: when try to umount a nfs node, it may casue stack overflow.
Change-Id: I7d96f74a770607c990ca5f51cb92fb2843a08d12
2021-04-16 11:00:38 +08:00
openharmony_ci
7332c00077
!139 FATFS及mmcblk 性能优化
...
Merge pull request !139 from ysy4tc3/dev
2021-04-15 19:19:51 +08:00
Far
beca52b61b
Feature: Fatfs scandir format and mmcblk read/write optimization
...
1. Bcache block with high mem address is after lower mem address in RCU list when initing bcache.
2. Format will clear the bcache before writing the FAT.
3. The fatfs_readdir use the bcache writing block to reduce the chance of data switching out
4. Add performance analysing macron switch
Change-Id: I8fbc48418509d2e660d725d2c265266e931c26f8
2021-04-15 14:49:43 +08:00
Caoruihong
d2197c801f
use -include option instead of including menuconfig manually
...
Change-Id: Ie48b96fe9c8ab036d7234b56a169d6668171a895
2021-04-14 17:56:48 +08:00
openharmony_ci
ca41a70d7d
!132 VfsJffs2Lookup中VfsHashGet获取的vnode未判断data字段的有效性
...
Merge pull request !132 from zhangfanfan2/jffs2
2021-04-10 09:00:27 +08:00
zhangfanfan2
78a6bd9416
VfsJffs2Lookup中VfsHashGet获取的vnode未判断data字段的有效性
2021-04-09 19:30:40 +08:00
Guangyao Ma
ce849f2145
feat: add and fix some syscall
...
add SysFstatat64 SysInfo SysVfork SysGetrusage
fix up SysDup SysFcntl
Change-Id: If41228da62f406312858921e48e2210e04f16a16
2021-04-09 14:45:53 +08:00
chenjing
62c039b287
proc closedir
2021-04-07 09:49:17 +08:00
chenjing
18d5e25373
/proc/mounts
2021-04-06 17:33:49 +08:00
chenjing
7c3c92f87a
/proc/mounts
2021-04-06 16:20:58 +08:00
chenjing
c13366fd92
/proc/mounts
2021-04-06 15:21:29 +08:00
openharmony_ci
90b9c37b66
!107 Fix OHOS shell cannot ls a file
...
Merge pull request !107 from ysy4tc3/dev
2021-04-01 14:47:04 +08:00
openharmony_ci
be5e5fdf42
!112 修复代码段及只读段在uncache映射区域可以篡改的漏洞
...
Merge pull request !112 from JerryH/mmu
2021-04-01 09:51:59 +08:00
Far
704f60f687
Description: fix OHOS shell cannot ls a file
...
Change-Id: Ia403ada9bbb688b81a6e188f591211d10349a7f0
2021-03-31 19:12:22 +08:00
YOUR_NAME
c959d43684
IssueNo:#I3E0F2
...
Description:Delete VM to support only kernel mode.
Sig:liteos_a
Feature or Bugfix:Feature
Binary Source:No
Change-Id: Ie1029c8fbc0c1b85c138663933118d2d148b7769
2021-03-31 16:14:54 +08:00
laokz
349c1e46de
QEMU arm platform: get 'bootargs' from flash; fix code style
...
Change-Id: I94175fa89a61f4f08d9f921203bedfc2dd9e53e4
2021-03-30 23:07:22 +08:00
mucor
f82be437b9
change while loop to for loop
...
Change-Id: Ie5c0cbca1e94c97ee2f511bf5ee3cdfb8c085a79
2021-03-30 10:54:37 +08:00
openharmony_ci
e3ca50e8ad
!92 fix bad code in fs codes
...
Merge pull request !92 from 野生毛霉君/master
2021-03-30 09:49:11 +08:00
openharmony_ci
7387d410bf
!100 解决kernel/liteos_a仓下关闭fat,编译不过的问题
...
Merge pull request !100 from li_zan/master
2021-03-29 12:06:31 +08:00
li_zan
ee740f627f
change config for fs2
2021-03-27 17:20:18 +08:00
openharmony_ci
1763f37811
!99 [Desc] 1, remove redundant code for O_APPEND flag in VfsJffs2Write; 2, fix bug for access freed memory in VfsJffs2Reclaim
...
Merge pull request !99 from LeonChan/master
2021-03-27 15:29:32 +08:00
openharmony_ci
23c2c270b8
!98 内核支持syscall关闭
...
Merge pull request !98 from zhangfanfan2/master
2021-03-27 09:58:48 +08:00
chenwei
b9d22b21e8
[Desc] 1, remove redundant code for O_APPEND flag in VfsJffs2Write; 2, fix bug for access freed memory in VfsJffs2Reclaim
...
Change-Id: Ibf8a1f352afa0c7ae608431a756ee58cec9bc262
2021-03-27 09:54:19 +08:00
openharmony_ci
f2ba6f956e
!93 four code defect need to be fixed
...
Merge pull request !93 from ysy4tc3/master
2021-03-27 09:08:56 +08:00
YOUR_NAME
b1be50cdb9
[Desc] Support to close syscall.
...
Change-Id: I6f7c469e96da9cc89c5c33bf7a9afe19625e175f
2021-03-26 20:12:50 +08:00
li_zan
195172e655
change config for fs
2021-03-26 17:00:15 +08:00
mucor
1884fa0523
fix readdir, rename
...
Change-Id: Ic443742e125915f0e5332a338dedea5c40348928
2021-03-24 18:15:06 +08:00
YOUR_NAME
63edd9afd1
Description: code defect fix
...
Change-Id: I9c49073ad2bbd668102d20da8ff7a8d680890deb
2021-03-24 17:02:25 +08:00
wangchenyang
d970750808
Description:vfs refactoring
...
Feature or Bugfix:Feature
Binary Source:Huawei
PrivateCode(Yes/No):Yes
Change-Id: I175d2648bc6f9078c34de2c0a5c93fda10b86c47
ChangeID:13306388
2021-03-19 13:22:46 +08:00
mamingshuai
73a7b66116
update openharmony 1.0.1
2021-03-11 18:43:57 +08:00
laokz
9404c9971d
add QEMU arm 'virt' CFI flash support, enable rootfs and user-space app
2021-02-05 23:10:05 +08:00
openharmony_ci
b4a1cf6d54
!61 Fix Qemu target build when LOSCFG_COMPILE_DEBUG is enabled
...
Merge pull request !61 from likailong/master
2021-01-25 16:49:00 +08:00
likailong
0faabbe7b3
Description: Fixes qemu_arm_virt_ca7 target build failure after enabling LOSCFG_COMPILE_DEBUG option in kernel configuration.
...
Reviewed-by: Zbigniew
2021-01-21 09:09:37 +08:00
laokz
5f4f8e0c99
fatfs.c避免不同配置下`未使用变量`编译错误
2021-01-20 21:02:38 +08:00
Zbigniew Bodek
e0406e3df7
Fix various build problems when building for non-HiSi config
...
Mainly adding missing headers, removing redundant headers that
induce undefined symbols or rearranging existing headers
according to dependencies betheen them.
Also add missing include paths to makefiles and make configs.
Note: direct inclusion of pthread.h in disk.h is caused by the
latter being used almost everywhere, including third_party libraries.
Putting pthread.h there releases us from affecting more code.
Basically fixes build for anything that is not default HiSi
configuration.
Signed-off-by: Zbigniew Bodek <zbigniew.bodek@huawei.com>
Change-Id: Icdcb0874d9fed34d01fa282d33bd2e041c2ac436
2020-11-17 23:07:01 +08:00