Skip to content

Commit 16be6a1

Browse files
committed
Limitations note created
1 parent f640bb4 commit 16be6a1

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

notes/limitations.md

+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
# Current Limitations in the System
2+
3+
### Relative *vs.* Absolute Paths
4+
For path-based operations, such as `open`, `rename`, `getxattr`, ..., the system only considers the absolute path.
5+
This is because PADLL needs to check if the path belongs to the targeted mountpoint.
6+
For example, if the path is `/mnt/data/file.txt` and the target mountpoint is `/mnt`, it will be considered as a valid path;
7+
however, if the path is `file.txt`, it will be considered as an invalid path.
8+
9+
This has repercussions not only for the path-based operations, but also for those that are dependent on the returned file descriptor.
10+
11+
12+
### Close for unregisted file descriptors
13+
One of the microbenchmarks is to replay the trace of the `close` system call in the ABCI supercomputer.
14+
However, if the trace replayer only submits "dumb" `close`operations (*i.e.,* random file descriptors), the operation will not be successfully enforced, since at some point in the internal operation flow, it will generate an invalid `workflow identifier` (`static_cast<uint32_t> (-1)`).
15+
16+
17+
### File descriptor based operations when `open` is not handled
18+
If the `open` system call is not handled in the system (`libc_calls::open = false`), then all file descriptor based operations such as `read`, `write`, `close`, ... will not be enforced, since the `MountPointEntry` is not registered.
19+

0 commit comments

Comments
 (0)