projects
/
platform
/
kernel
/
u-boot.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
7191203
)
semihosting: create file in smh_fs_write_at()
author
Heinrich Schuchardt
<heinrich.schuchardt@canonical.com>
Fri, 12 May 2023 22:47:03 +0000
(
00:47
+0200)
committer
Tom Rini
<trini@konsulko.com>
Wed, 31 May 2023 21:23:01 +0000
(17:23 -0400)
If a file does not exist, it should be created.
Fixes:
f676b45151c3
("fs: Add semihosting filesystem")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
fs/semihostingfs.c
patch
|
blob
|
history
diff --git
a/fs/semihostingfs.c
b/fs/semihostingfs.c
index
96eb334
..
3592338
100644
(file)
--- a/
fs/semihostingfs.c
+++ b/
fs/semihostingfs.c
@@
-57,8
+57,12
@@
static int smh_fs_write_at(const char *filename, loff_t pos, void *buffer,
{
long fd, size, ret;
+ /* Try to open existing file */
fd = smh_open(filename, MODE_READ | MODE_BINARY | MODE_PLUS);
if (fd < 0)
+ /* Create new file */
+ fd = smh_open(filename, MODE_WRITE | MODE_BINARY);
+ if (fd < 0)
return fd;
ret = smh_seek(fd, pos);
if (ret < 0) {