c05ef4f5a1
chore: example eventloop add debug
2023-04-26 00:28:02 +07:00
cf008fa0a8
chore: example read-write memfd verify bytes
2023-04-26 00:02:53 +07:00
fe8ee1c7be
chore: sync liburing queue
2023-04-26 00:02:19 +07:00
a826825a93
chore: go work add library
2023-04-25 23:07:58 +07:00
14a4d321ac
chore: example read-write intensive to memfd file
2023-04-24 21:53:45 +07:00
69433c4222
chore: example simple-eventloop run client on bg
2023-04-24 21:43:19 +07:00
0ebe45c00d
test: ring concurrent enqeue
...
Add test for ring concurrent enqueue.
2023-04-24 11:42:10 +07:00
b97c7aa767
chore: implement grace shutdown on simple eventloop
2023-04-18 12:04:03 +07:00
64d8c0e3b6
chore: simple eventloop example
2023-04-18 02:41:38 +07:00
f4992f93e1
feat: get probe ring
2023-04-17 18:38:30 +07:00
805d8d14fa
chore: tcp echo example
...
tcp echo example with:
- multishot accept
- provide buffers, automatic buffer selection
https://lwn.net/Articles/815491/
2023-04-17 18:33:25 +07:00
56bbdd81d6
feat: added some prepare helper
...
* PrepAcceptMultishot (renamed)
* PrepAcceptMultishotDirect (renamed)
* PrepRecvmsgMultishot
* PrepSendSetAddr
* PrepSendto
* PrepRecvMultishot
* PrepFgetxattr
2023-04-16 17:50:51 +07:00
d3eea9e076
chore: adjust read-write, nvme example
2023-04-16 17:18:15 +07:00
8f4508a832
fix(nvme): constant folds for uring, ioctl cmd ops
2023-04-16 10:46:28 +07:00
c85becd14b
chore: cleanup debug
2023-04-16 04:19:02 +07:00
29583697c8
chore: basic usage example
2023-04-16 04:00:36 +07:00
ff91bfb1cd
feat: essential ioctl and nvme package support
2023-04-16 03:58:57 +07:00
0e7d4faaff
chore: sync liburing
...
* support for sqe128, cqe32
* using unsafe.Add
* compile-time size guard/check
* added support for uring_cmd
2023-04-16 03:56:10 +07:00
bd50af5d21
fix: syscall nr
2023-04-16 03:46:47 +07:00
f5548b679a
chore: setup go work
2023-04-16 02:49:09 +07:00
78032efb6a
doc: update graph
2022-10-25 18:23:01 +07:00
8dea91c509
ring: big cqe support
2022-10-25 15:36:16 +07:00
56c528fe00
ring: prepare sqe support
...
Added prepare SQE op:
* fallocate
* openat2
* openat2_direct
* statx
* recv
* epoll_ctl
* multishot accept
* multishot accept_direct
* provide_buffers
* remove_buffers
* shutdown
* unlinkat, unlink
* renameat, rename
* sync_file_range
* mkdirat, mkdir
* symlinkat, symlink
* linkat, link
* msg_ring
* getxattr
* setxattr
* fsetxattr
2022-10-25 15:31:31 +07:00
6338cf3427
ring: io_uring syscall nr for __ALPHA__
2022-10-25 15:31:01 +07:00
5a76c34f61
fix: use sigset from golang.org/x/sys/unix
2022-10-25 15:27:19 +07:00
510f87a46e
chore: ignore code workspace
2022-10-24 11:34:09 +07:00
1abd875eb9
feat: seq_cst implementation
2022-10-13 22:08:46 +07:00
527c11cde6
feat: sync liburing
...
revision: 1c469ee303d0f458a
2022-10-13 22:08:27 +07:00
8d37b05bc1
fix: change base type of UserData to uint64
2022-10-13 22:03:46 +07:00
4937c09d11
ring: support sqe128, cqe32 index array
2022-10-12 23:19:37 +07:00
b60c5ed2ba
test: sqe and cqe size check
2022-10-12 23:17:41 +07:00
3409c752f2
fix: unresolved typo
2022-10-12 23:16:02 +07:00
fzn0x
4ed8bc99bd
fix: minor code typo ( #5 )
...
* fix: minor code typo
2022-10-02 19:20:08 +07:00
d0c4e7f98f
Merge pull request #4 from ii64/doc/add-license
...
doc: add license
2022-09-04 17:43:27 +07:00
aad8211d3e
doc: add license
...
Fixes #3
2022-09-04 17:41:10 +07:00
98f78a3b9f
bench/perf: handle interrupt from iouring enter
...
Other adjustments:
* Fix miss results, using `SeenCqe` to pop CQ entry.
* Increase sqpoll thread cpu to 16.
* Fix CQE/SQE to Cqe/Sqe function name.
* Fix UserData usage.
Benchmark:
* Increase number of N to 10_000_000
2022-07-28 19:48:32 +07:00
0fee4d7a7f
doc: update graph
2022-07-28 19:47:38 +07:00
7eedf9754b
all: use of unsafe pointer for ring, and adjustments
...
There's other adjustment/addition:
* Function name CQE/SQE renamed to Cqe/Sqe.
* SQ entry union sets value withput util to reduce function
complexity, so leaving function budget for another stuff.
* UserData has its own type, implement for uint64, uintptr,
and unsafe.
* TODO: decide what to use `Syscall` or `RawSyscall`.
* Exposed `SeenCqe`.
* Ignore *.test file extension.
* Inline cost tool.
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-28 19:45:51 +07:00
56090b50c8
bench/perf: use of go sched
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 23:31:18 +07:00
a5a0584e4d
doc: update graph
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 23:30:52 +07:00
25e599231f
all: use constant for sizeof, add bench test
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 23:23:00 +07:00
254fa28928
doc: update graph
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 23:21:52 +07:00
f3ba7e7189
queue: fix cqe peek batch, and improve test
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 23:20:18 +07:00
501014a053
bench/perf: fix sqpoll result mismatch
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 23:19:07 +07:00
7c0e1c4ef7
bench/perf: perf script nop sq entry
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 09:59:36 +07:00
cd2c4242e8
doc: add graph
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 09:57:32 +07:00
734c7883b8
doc: add example on readme
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 08:27:55 +07:00
7fa3c507b1
api: impl get sqe, wait cqe, and test
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 08:26:44 +07:00
aa6bf08729
setup: fix ring fd not set
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 08:25:45 +07:00
793e0b8cbd
queue: impl wait cqe, and tests
...
Signed-off-by: Nugraha <richiisei@gmail.com>
2022-07-07 08:24:46 +07:00