* Register 0 files, but reserve space for 10. Then add one file. */
| 396 | * Register 0 files, but reserve space for 10. Then add one file. |
| 397 | */ |
| 398 | static int test_zero(struct io_uring *ring) |
| 399 | { |
| 400 | int *files, *fds = NULL; |
| 401 | int ret; |
| 402 | |
| 403 | files = open_files(0, 10, 0); |
| 404 | ret = io_uring_register_files(ring, files, 10); |
| 405 | if (ret) { |
| 406 | fprintf(stderr, "%s: register ret=%d\n", __FUNCTION__, ret); |
| 407 | goto err; |
| 408 | } |
| 409 | |
| 410 | fds = open_files(1, 0, 1); |
| 411 | ret = io_uring_register_files_update(ring, 0, fds, 1); |
| 412 | if (ret != 1) { |
| 413 | fprintf(stderr, "%s: update ret=%d\n", __FUNCTION__, ret); |
| 414 | goto err; |
| 415 | } |
| 416 | |
| 417 | ret = io_uring_unregister_files(ring); |
| 418 | if (ret) { |
| 419 | fprintf(stderr, "%s: unregister ret=%d\n", __FUNCTION__, ret); |
| 420 | goto err; |
| 421 | } |
| 422 | |
| 423 | if (fds) |
| 424 | close_files(fds, 1, 1); |
| 425 | free(files); |
| 426 | return 0; |
| 427 | err: |
| 428 | if (fds) |
| 429 | close_files(fds, 1, 1); |
| 430 | free(files); |
| 431 | return 1; |
| 432 | } |
| 433 | |
| 434 | static int test_fixed_read_write(struct io_uring *ring, int index) |
| 435 | { |
no test coverage detected