changelog shortlog graph tags branches files raw help

Mercurial > core / changeset: more urings

changeset 241: bc5832f97879
parent 240: a3b65a8138ac
child 242: 37a48c39be02
author: Richard Westhaver <ellis@rwest.io>
date: Sun, 24 Mar 2024 23:05:46 -0400
files: lisp/ffi/tree-sitter/api.lisp lisp/ffi/uring/constants.lisp lisp/ffi/uring/pkg.lisp
description: more urings
     1.1--- a/lisp/ffi/tree-sitter/api.lisp	Sun Mar 24 21:46:43 2024 -0400
     1.2+++ b/lisp/ffi/tree-sitter/api.lisp	Sun Mar 24 23:05:46 2024 -0400
     1.3@@ -125,9 +125,7 @@
     1.4                        ;; TODO
     1.5                        (let ((field-name (deref field-name-ptr)))
     1.6                          (setf type (list (funcall name-generator field-name) type))))
     1.7-                     (push (make-node :type type
     1.8-                                      :range (list (list (second start-point) (fourth start-point))
     1.9-                                                   (list (second end-point) (fourth end-point))))
    1.10+                     (push (make-node :type type :range (list start-point end-point))
    1.11                            parse-stack)))
    1.12                  (setf did-visit-children
    1.13                        (not (ts-tree-cursor-goto-first-child cursor))))))))))
     2.1--- a/lisp/ffi/uring/constants.lisp	Sun Mar 24 21:46:43 2024 -0400
     2.2+++ b/lisp/ffi/uring/constants.lisp	Sun Mar 24 23:05:46 2024 -0400
     2.3@@ -1,9 +1,10 @@
     2.4 ("sys/socket.h" "sys/stat.h" "sys/uio.h" "errno.h" "signal.h" "stdbool.h" "stdatomic.h" "linux/openat2.h"
     2.5                 "inttypes.h" "linux/time_types.h" "time.h" "fcntl.h" "sched.h" "linux/swab.h" "liburing/compat.h"
     2.6-                "linux/fs.h" "liburing/io_uring.h" "liburing/io_uring_version.h" "liburing/barrier.h"
     2.7-                "linux/types.h")
     2.8+                "linux/fs.h" "liburing/io_uring_version.h" "liburing/barrier.h"
     2.9+                "linux/types.h" "liburing/io_uring.h")
    2.10 
    2.11 ( ;; liburing/io_uring.h
    2.12+ (:integer %nr-io-uring-setup "__NR_io_uring_setup" t)
    2.13  (:structure io-uring-sqe ("struct io_uring_sqe"
    2.14                            (char opcode "__u8" "opcode")
    2.15                            (char flags "__u8" "flags")
    2.16@@ -100,7 +101,8 @@
    2.17          (ioring-op-uring-cmd "IORING_OP_URING_CMD")
    2.18          (ioring-op-send-zc "IORING_OP_SEND_ZC")
    2.19          (ioring-op-sendmsg-zc "IORING_OP_SENDMSG_ZC")
    2.20-         (ioring-op-last "IORING_OP_LAST")))
    2.21+         (ioring-op-last "IORING_OP_LAST"))
    2.22+        t)
    2.23  (:integer ioring-uring-cmd-fixed "IORING_URING_CMD_FIXED")
    2.24  (:integer ioring-fsync-datasync "IORING_FSYNC_DATASYNC")
    2.25  (:integer ioring-timeout-abs "IORING_TIMEOUT_ABS")
    2.26@@ -176,18 +178,18 @@
    2.27  (:integer ioring-enter-sq-wait "IORING_ENTER_SQ_WAIT")
    2.28  (:integer ioring-enter-ext-arg "IORING_ENTER_EXT_ARG")
    2.29  (:integer ioring-enter-registered-ring "IORING_ENTER_REGISTERED_RING")
    2.30- ;; (:structure io-uring-params ("struct io_uring_params"
    2.31- ;;                              ((unsigned-int sq-entries "__u32" "sq_entries")
    2.32- ;;                               (unsigned-int cq-entries "__u32" "cq_entries")
    2.33- ;;                               (unsigned-int flags "__u32" "flags")
    2.34- ;;                               (unsigned-int sq-thread-cpu "__u32" "sq_thread_cpu")
    2.35- ;;                               (unsigned-int sq-thread-idle "__u32" "sq_thread_idle")
    2.36- ;;                               (unsigned-int features "__u32" "features")
    2.37- ;;                               (unsigned-int wq-fd "__u32" "wq_fd")
    2.38- ;;                               ((array unsigned-int 3) "__u32" "resv[3]")
    2.39- ;;                               ;; (io-sqring-offsets "struct io_sqring_offsets" "sq_off")
    2.40- ;;                               ;; (io-cqring-offsets "struct io_cqring_offsets" "cq_off")
    2.41- ;;                               )))
    2.42+ (:structure io-uring-params ("struct io_uring_params"
    2.43+                              (unsigned-int sq-entries "__u32" "sq_entries")
    2.44+                              (unsigned-int cq-entries "__u32" "cq_entries")
    2.45+                              (unsigned-int flags "__u32" "flags")
    2.46+                              (unsigned-int sq-thread-cpu "__u32" "sq_thread_cpu")
    2.47+                              (unsigned-int sq-thread-idle "__u32" "sq_thread_idle")
    2.48+                              (unsigned-int features "__u32" "features")
    2.49+                              (unsigned-int wq-fd "__u32" "wq_fd")
    2.50+                              ((array unsigned-int) resv "__u32" "resv[3]")
    2.51+                              ((struct io-sqring-offsets) sq-off "struct io_sqring_offsets" "sq_off" :distrust-length t)
    2.52+                              ((struct io-cqring-offsets) cq-off "struct io_cqring_offsets" "cq_off" :distrust-length t)
    2.53+                              ))
    2.54  (:integer ioring-feat-single-mmap "IORING_FEAT_SINGLE_MMAP")
    2.55  (:integer ioring-feat-nodrop "IORING_FEAT_NODROP")
    2.56  (:integer ioring-feat-submit-stable "IORING_FEAT_SUBMIT_STABLE")
    2.57@@ -204,12 +206,38 @@
    2.58  (:integer ioring-feat-reg-reg-ring "IORING_FEAT_REG_REG_RING")
    2.59 
    2.60  (:integer ioring-rsrc-register-sparse "IORING_RSRC_REGISTER_SPARSE")
    2.61-
    2.62+ (:structure io-uring-rsrc-register ("struct io_uring_rsrc_register"
    2.63+                                     (unsigned-int nr "__u32" "nr")
    2.64+                                     (unsigned-int flags "__u32" "flags")
    2.65+                                     (unsigned-int resv2 "__u32" "resv2")
    2.66+                                     (unsigned-long data "__aligned_u64" "data")
    2.67+                                     (unsigned-long tags "__aligned_u64" "tags")))
    2.68+ (:structure io-uring-rsrc-update ("struct io_uring_rsrc_update"
    2.69+                                   (unsigned-int offset "__u32" "offset")
    2.70+                                   (unsigned-int resv "__u32" "resv")
    2.71+                                   (unsigned-int data "__aligned_u64" "data")))
    2.72+ (:structure io-uring-rsrc-update2 ("struct io_uring_rsrc_update2"
    2.73+                                    (unsigned-int offset "__u32" "offset")
    2.74+                                    (unsigned-int resv "__u32" "resv")
    2.75+                                    (unsigned-int data "__aligned_u64" "data")
    2.76+                                    (unsigned-int tags "__aligned_u64" "tags")
    2.77+                                    (unsigned-int nr "__u32" "nr")
    2.78+                                    (unsigned-int resv2 "__u32" "resv2")))
    2.79  (:integer ioring-register-files-skip "IORING_REGISTER_FILES_SKIP")
    2.80-
    2.81  (:integer io-uring-op-supported "IO_URING_OP_SUPPORTED")
    2.82+ (:structure io-uring-probe-op ("struct io_uring_probe_op"
    2.83+                                (char op "__u8" "op")
    2.84+                                (char resv "__u8" "resv")
    2.85+                                (unsigned-short flags "__u16" "flags")
    2.86+                                (unsigned-int resv2 "__u32" "resv2")))
    2.87+ (:structure io-uring-probe ("struct io_uring_probe"
    2.88+                             (char last-op "__u8" "last_op")
    2.89+                             (char ops-len "__u8" "ops_len")
    2.90+                             ;; (unsigned-short resv "__u16" "resv")
    2.91+                             ;; ((array unsigned-int 3) resv2 "__u32" "resv2[3]")
    2.92+                             ((array (struct io-uring-probe-op)) ops "struct io_uring_probe_op" "ops[1]")))
    2.93  ;; TODO
    2.94  ;; io_uring_register
    2.95-                           
    2.96+ 
    2.97  ;; liburing.h -- public API
    2.98  (:integer +nr-io-uring-setup+ "__NR_io_uring_setup"))
     3.1--- a/lisp/ffi/uring/pkg.lisp	Sun Mar 24 21:46:43 2024 -0400
     3.2+++ b/lisp/ffi/uring/pkg.lisp	Sun Mar 24 23:05:46 2024 -0400
     3.3@@ -35,4 +35,4 @@
     3.4 ;; (defun io-uring-smp-mb ())
     3.5 
     3.6 ;;; io_uring.h
     3.7-;; io_uring_sqe
     3.8+