~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/include/linux/vmw_vmci_api.h

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /include/linux/vmw_vmci_api.h (Version linux-6.12-rc7) and /include/linux/vmw_vmci_api.h (Version linux-4.9.337)


  1 /* SPDX-License-Identifier: GPL-2.0-only */    << 
  2 /*                                                  1 /*
  3  * VMware VMCI Driver                               2  * VMware VMCI Driver
  4  *                                                  3  *
  5  * Copyright (C) 2012 VMware, Inc. All rights       4  * Copyright (C) 2012 VMware, Inc. All rights reserved.
                                                   >>   5  *
                                                   >>   6  * This program is free software; you can redistribute it and/or modify it
                                                   >>   7  * under the terms of the GNU General Public License as published by the
                                                   >>   8  * Free Software Foundation version 2 and no later version.
                                                   >>   9  *
                                                   >>  10  * This program is distributed in the hope that it will be useful, but
                                                   >>  11  * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
                                                   >>  12  * or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
                                                   >>  13  * for more details.
  6  */                                                14  */
  7                                                    15 
  8 #ifndef __VMW_VMCI_API_H__                         16 #ifndef __VMW_VMCI_API_H__
  9 #define __VMW_VMCI_API_H__                         17 #define __VMW_VMCI_API_H__
 10                                                    18 
 11 #include <linux/uidgid.h>                          19 #include <linux/uidgid.h>
 12 #include <linux/vmw_vmci_defs.h>                   20 #include <linux/vmw_vmci_defs.h>
 13                                                    21 
 14 #undef  VMCI_KERNEL_API_VERSION                    22 #undef  VMCI_KERNEL_API_VERSION
 15 #define VMCI_KERNEL_API_VERSION_1 1                23 #define VMCI_KERNEL_API_VERSION_1 1
 16 #define VMCI_KERNEL_API_VERSION_2 2                24 #define VMCI_KERNEL_API_VERSION_2 2
 17 #define VMCI_KERNEL_API_VERSION   VMCI_KERNEL_     25 #define VMCI_KERNEL_API_VERSION   VMCI_KERNEL_API_VERSION_2
 18                                                    26 
 19 struct msghdr;                                     27 struct msghdr;
 20 typedef void (vmci_device_shutdown_fn) (void *     28 typedef void (vmci_device_shutdown_fn) (void *device_registration,
 21                                         void *     29                                         void *user_data);
 22 typedef void (*vmci_vsock_cb) (bool is_host);  << 
 23                                                    30 
 24 int vmci_datagram_create_handle(u32 resource_i     31 int vmci_datagram_create_handle(u32 resource_id, u32 flags,
 25                                 vmci_datagram_     32                                 vmci_datagram_recv_cb recv_cb,
 26                                 void *client_d     33                                 void *client_data,
 27                                 struct vmci_ha     34                                 struct vmci_handle *out_handle);
 28 int vmci_datagram_create_handle_priv(u32 resou     35 int vmci_datagram_create_handle_priv(u32 resource_id, u32 flags, u32 priv_flags,
 29                                      vmci_data     36                                      vmci_datagram_recv_cb recv_cb,
 30                                      void *cli     37                                      void *client_data,
 31                                      struct vm     38                                      struct vmci_handle *out_handle);
 32 int vmci_datagram_destroy_handle(struct vmci_h     39 int vmci_datagram_destroy_handle(struct vmci_handle handle);
 33 int vmci_datagram_send(struct vmci_datagram *m     40 int vmci_datagram_send(struct vmci_datagram *msg);
 34 int vmci_doorbell_create(struct vmci_handle *h     41 int vmci_doorbell_create(struct vmci_handle *handle, u32 flags,
 35                          u32 priv_flags,           42                          u32 priv_flags,
 36                          vmci_callback notify_     43                          vmci_callback notify_cb, void *client_data);
 37 int vmci_doorbell_destroy(struct vmci_handle h     44 int vmci_doorbell_destroy(struct vmci_handle handle);
 38 int vmci_doorbell_notify(struct vmci_handle ha     45 int vmci_doorbell_notify(struct vmci_handle handle, u32 priv_flags);
 39 u32 vmci_get_context_id(void);                     46 u32 vmci_get_context_id(void);
 40 bool vmci_is_context_owner(u32 context_id, kui     47 bool vmci_is_context_owner(u32 context_id, kuid_t uid);
 41 int vmci_register_vsock_callback(vmci_vsock_cb << 
 42                                                    48 
 43 int vmci_event_subscribe(u32 event,                49 int vmci_event_subscribe(u32 event,
 44                          vmci_event_cb callbac     50                          vmci_event_cb callback, void *callback_data,
 45                          u32 *subid);              51                          u32 *subid);
 46 int vmci_event_unsubscribe(u32 subid);             52 int vmci_event_unsubscribe(u32 subid);
 47 u32 vmci_context_get_priv_flags(u32 context_id     53 u32 vmci_context_get_priv_flags(u32 context_id);
 48 int vmci_qpair_alloc(struct vmci_qp **qpair,       54 int vmci_qpair_alloc(struct vmci_qp **qpair,
 49                      struct vmci_handle *handl     55                      struct vmci_handle *handle,
 50                      u64 produce_qsize,            56                      u64 produce_qsize,
 51                      u64 consume_qsize,            57                      u64 consume_qsize,
 52                      u32 peer, u32 flags, u32      58                      u32 peer, u32 flags, u32 priv_flags);
 53 int vmci_qpair_detach(struct vmci_qp **qpair);     59 int vmci_qpair_detach(struct vmci_qp **qpair);
 54 int vmci_qpair_get_produce_indexes(const struc     60 int vmci_qpair_get_produce_indexes(const struct vmci_qp *qpair,
 55                                    u64 *produc     61                                    u64 *producer_tail,
 56                                    u64 *consum     62                                    u64 *consumer_head);
 57 int vmci_qpair_get_consume_indexes(const struc     63 int vmci_qpair_get_consume_indexes(const struct vmci_qp *qpair,
 58                                    u64 *consum     64                                    u64 *consumer_tail,
 59                                    u64 *produc     65                                    u64 *producer_head);
 60 s64 vmci_qpair_produce_free_space(const struct     66 s64 vmci_qpair_produce_free_space(const struct vmci_qp *qpair);
 61 s64 vmci_qpair_produce_buf_ready(const struct      67 s64 vmci_qpair_produce_buf_ready(const struct vmci_qp *qpair);
 62 s64 vmci_qpair_consume_free_space(const struct     68 s64 vmci_qpair_consume_free_space(const struct vmci_qp *qpair);
 63 s64 vmci_qpair_consume_buf_ready(const struct      69 s64 vmci_qpair_consume_buf_ready(const struct vmci_qp *qpair);
 64 ssize_t vmci_qpair_enqueue(struct vmci_qp *qpa     70 ssize_t vmci_qpair_enqueue(struct vmci_qp *qpair,
 65                            const void *buf, si     71                            const void *buf, size_t buf_size, int mode);
 66 ssize_t vmci_qpair_dequeue(struct vmci_qp *qpa     72 ssize_t vmci_qpair_dequeue(struct vmci_qp *qpair,
 67                            void *buf, size_t b     73                            void *buf, size_t buf_size, int mode);
 68 ssize_t vmci_qpair_peek(struct vmci_qp *qpair,     74 ssize_t vmci_qpair_peek(struct vmci_qp *qpair, void *buf, size_t buf_size,
 69                         int mode);                 75                         int mode);
 70 ssize_t vmci_qpair_enquev(struct vmci_qp *qpai     76 ssize_t vmci_qpair_enquev(struct vmci_qp *qpair,
 71                           struct msghdr *msg,      77                           struct msghdr *msg, size_t iov_size, int mode);
 72 ssize_t vmci_qpair_dequev(struct vmci_qp *qpai     78 ssize_t vmci_qpair_dequev(struct vmci_qp *qpair,
 73                           struct msghdr *msg,      79                           struct msghdr *msg, size_t iov_size, int mode);
 74 ssize_t vmci_qpair_peekv(struct vmci_qp *qpair     80 ssize_t vmci_qpair_peekv(struct vmci_qp *qpair, struct msghdr *msg, size_t iov_size,
 75                          int mode);                81                          int mode);
 76                                                    82 
 77 #endif /* !__VMW_VMCI_API_H__ */                   83 #endif /* !__VMW_VMCI_API_H__ */
 78                                                    84 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php