Rusty Russell
0a8a69dd77
Virtio helper routines for a descriptor ringbuffer implementation
...
These helper routines supply most of the virtqueue_ops for hypervisors
which want to use a ring for virtio. Unlike the previous lguest
implementation:
1) The rings are variable sized (2^n-1 elements).
2) They have an unfortunate limit of 65535 bytes per sg element.
3) The page numbers are always 64 bit (PAE anyone?)
4) They no longer place used[] on a separate page, just a separate
cacheline.
5) We do a modulo on a variable. We could be tricky if we cared.
6) Interrupts and notifies are suppressed using flags within the rings.
Users need only get the ring pages and provide a notify hook (KVM
wants the guest to allocate the rings, lguest does it sanely).
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Cc: Dor Laor <dor.laor@qumranet.com>
2007-10-23 15:49:55 +10:00
..
2007-07-30 16:26:27 -03:00
2007-07-17 10:23:07 -07:00
2007-10-09 19:59:16 -07:00
2007-10-17 22:51:13 +02:00
2007-10-13 14:36:18 +01:00
2007-10-18 05:12:21 -07:00
2007-10-15 12:26:29 -07:00
2007-10-15 12:26:29 -07:00
2007-10-15 12:26:29 -07:00
2007-10-15 12:26:29 -07:00
2007-10-16 09:43:10 -07:00
2007-10-17 08:43:03 -07:00
2007-07-17 10:23:09 -07:00
2007-10-16 10:13:38 -07:00
2007-10-10 16:51:36 -07:00
2007-10-15 10:47:35 -07:00
2007-10-10 16:53:11 -07:00
2007-10-15 17:56:36 -07:00
2007-10-10 00:12:41 -04:00
2007-09-11 04:22:16 -07:00
2007-10-14 12:41:51 -07:00
2007-10-18 14:37:20 -07:00
2007-10-23 15:49:47 +10:00
2007-10-10 16:51:59 -07:00
2007-07-20 08:44:19 -07:00
2007-10-12 14:55:45 -04:00
2007-10-17 08:42:47 -07:00
2007-07-16 09:05:42 -07:00
2007-10-21 02:37:45 -04:00
2007-10-17 08:43:00 -07:00
2007-10-17 08:42:45 -07:00
2007-10-11 22:24:13 +01:00
2007-10-17 08:43:07 -07:00
2007-10-16 11:03:56 +02:00
2007-10-18 14:37:29 -07:00
2007-10-19 11:53:42 -07:00
2007-10-19 11:53:42 -07:00
2007-10-16 11:05:02 +02:00
2007-10-12 12:50:07 +02:00
2007-06-01 08:18:27 -07:00
2007-07-31 10:43:05 -05:00
2007-10-16 09:42:58 -07:00
2007-07-16 09:05:51 -07:00
2007-10-22 08:13:18 -07:00
2007-10-20 03:10:57 +02:00
2007-10-19 11:53:51 -07:00
2007-10-19 11:53:36 -07:00
2007-10-19 11:53:36 -07:00
2007-10-14 22:57:45 +02:00
2007-10-18 14:37:20 -07:00
2007-07-21 17:49:14 -07:00
2007-07-21 17:49:14 -07:00
2007-05-14 12:16:01 -07:00
2007-10-17 08:42:47 -07:00
2007-10-17 08:42:47 -07:00
2007-10-18 14:37:32 -07:00
2007-10-17 08:42:47 -07:00
2007-10-18 14:37:32 -07:00
2007-07-10 17:18:59 -07:00
2007-10-16 09:43:13 -07:00
2007-10-16 09:43:20 -07:00
2007-10-18 14:37:19 -07:00
2007-10-17 08:42:52 -07:00
2007-10-19 11:53:36 -07:00
2007-10-18 14:37:28 -07:00
2007-10-04 18:40:57 -04:00
2007-10-10 00:12:41 -04:00
2007-10-19 11:53:44 -07:00
2007-10-17 08:42:53 -07:00
2007-07-17 10:23:04 -07:00
2007-10-19 23:07:36 +02:00
2007-10-18 14:37:26 -07:00
2007-10-16 09:43:09 -07:00
2007-10-21 02:37:45 -04:00
2007-10-10 16:54:36 -07:00
2007-07-20 21:42:24 +02:00
2007-10-12 14:51:03 -07:00
2007-10-19 11:53:36 -07:00
2007-10-20 02:01:26 +01:00
2007-10-12 14:51:01 -07:00
2007-07-09 08:22:54 +01:00
2007-07-09 08:22:33 +01:00
2007-07-09 08:23:17 +01:00
2007-10-20 02:00:58 +01:00
2007-10-18 14:37:21 -07:00
2007-07-13 08:06:13 -07:00
2007-10-22 08:13:19 -07:00
2007-10-09 20:22:20 -04:00
2007-07-16 09:05:42 -07:00
2007-07-19 10:04:54 -07:00
2007-10-23 15:49:47 +10:00
2007-10-10 16:53:56 -07:00
2007-10-22 08:13:19 -07:00
2007-10-22 08:13:20 -07:00
2007-07-24 09:28:11 +02:00
2007-07-20 21:42:24 +02:00
2007-10-17 08:43:00 -07:00
2007-10-17 08:42:51 -07:00
2007-07-18 08:47:40 -07:00
2007-06-01 08:18:29 -07:00
2007-10-10 16:52:52 -07:00
2007-10-10 16:48:08 -07:00
2007-06-28 11:34:53 -07:00
2007-10-22 08:13:21 -07:00
2007-10-17 08:43:02 -07:00
2007-10-22 08:13:18 -07:00
2007-10-17 08:42:48 -07:00
2007-10-18 14:37:29 -07:00
2007-10-17 18:50:03 -04:00
2007-10-17 18:49:59 -04:00
2007-10-17 18:49:59 -04:00
2007-10-17 18:50:02 -04:00
2007-10-17 18:49:58 -04:00
2007-07-17 21:42:44 -04:00
2007-10-16 09:43:22 -07:00
2007-10-17 08:43:01 -07:00
2007-10-17 08:43:04 -07:00
2007-10-17 21:21:26 -07:00
2007-10-17 00:00:08 +02:00
2007-10-18 14:37:19 -07:00
2007-10-10 16:54:03 -07:00
2007-10-22 08:13:21 -07:00
2007-07-18 18:29:37 -04:00
2007-10-21 02:37:18 -04:00
2007-10-18 14:37:31 -07:00
2007-06-18 09:48:41 -07:00
2007-07-18 15:47:52 -07:00
2007-07-30 00:27:28 -07:00
2007-10-16 09:43:00 -07:00
2007-10-10 08:55:27 +01:00
2007-09-26 00:01:17 -04:00
2007-07-10 00:35:17 -04:00
2007-07-09 18:51:58 +02:00
2007-10-14 12:41:51 -07:00
2007-10-19 11:53:42 -07:00
2007-10-15 08:12:00 -07:00
2007-07-19 10:04:41 -07:00
2007-10-18 22:54:18 +02:00
2007-10-16 09:43:02 -07:00
2007-10-09 22:56:30 -04:00
2007-10-13 23:56:32 +02:00
2007-10-16 15:58:19 +02:00
2007-10-13 23:56:33 +02:00
2007-10-16 11:21:00 +02:00
2007-10-22 00:56:52 -04:00
2007-10-22 19:35:14 -07:00
2007-07-16 09:05:34 -07:00
2007-10-10 16:52:59 -07:00
2007-10-10 16:51:59 -07:00
2007-10-15 12:26:29 -07:00
2007-10-10 16:51:16 -07:00
2007-10-10 16:52:52 -07:00
2007-10-17 08:42:52 -07:00
2007-10-10 16:49:13 -07:00
2007-07-14 18:55:06 -07:00
2007-07-10 22:15:58 -07:00
2007-08-26 18:35:42 -07:00
2007-10-10 16:52:04 -07:00
2007-10-10 16:52:52 -07:00
2007-10-10 16:51:16 -07:00
2007-10-10 16:49:10 -07:00
2007-10-14 12:41:52 -07:00
2007-06-22 17:04:27 -07:00
2007-10-19 11:53:43 -07:00
2007-10-17 08:42:56 -07:00
2007-10-21 02:37:38 -04:00
2007-10-19 11:53:42 -07:00
2007-10-17 08:43:00 -07:00
2007-07-16 09:05:50 -07:00
2007-10-16 09:43:01 -07:00
2007-07-20 10:06:38 +02:00
2007-10-19 11:53:48 -07:00
2007-10-19 23:10:43 +02:00
2007-10-18 14:37:32 -07:00
2007-10-10 16:55:55 -07:00
2007-07-21 19:07:33 -07:00
2007-07-31 15:39:41 -07:00
2007-09-16 21:13:58 -07:00
2007-10-16 09:43:10 -07:00
2007-10-09 22:07:28 -03:00
2007-10-09 22:07:23 -03:00
2007-10-17 18:49:58 -04:00
2007-10-19 11:53:35 -07:00
2007-07-11 15:03:53 +01:00
2007-10-16 09:42:49 -07:00
2007-07-17 10:23:03 -07:00
2007-10-17 08:42:52 -07:00
2007-08-22 19:52:45 -07:00
2007-10-23 15:49:54 +10:00
2007-10-17 08:42:52 -07:00
2007-07-31 15:39:40 -07:00
2007-10-18 14:37:28 -07:00
2007-10-17 08:43:01 -07:00
2007-07-17 10:23:05 -07:00
2007-10-19 11:53:49 -07:00
2007-10-17 08:42:57 -07:00
2007-10-17 08:42:57 -07:00
2007-10-19 11:53:33 -07:00
2007-05-17 05:23:04 -07:00
2007-07-18 08:47:40 -07:00
2007-10-12 14:51:12 -07:00
2007-10-16 09:43:10 -07:00
2007-10-10 16:48:12 -07:00
2007-10-13 10:18:29 +02:00
2007-07-16 01:20:23 +01:00
2007-09-11 22:24:45 +01:00
2007-07-26 11:35:17 -07:00
2007-10-23 15:49:49 +10:00
2007-10-23 15:49:54 +10:00
2007-10-18 16:21:18 -04:00
2007-07-17 10:23:03 -07:00
2007-10-22 08:13:17 -07:00
2007-07-17 10:23:13 -07:00
2007-10-19 11:53:35 -07:00
2007-10-19 11:53:38 -07:00
2007-10-17 08:42:56 -07:00
2007-07-24 12:24:59 -07:00
2007-07-16 09:05:34 -07:00
2007-10-19 11:53:36 -07:00
2007-07-18 08:47:45 -07:00
2007-09-21 15:55:55 +09:00
2007-10-19 11:53:55 -07:00
2007-10-10 16:54:03 -07:00
2007-10-16 09:43:02 -07:00
2007-10-22 08:13:17 -07:00
2007-10-19 11:53:36 -07:00
2007-05-17 14:20:29 -07:00
2007-10-17 08:43:00 -07:00
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:46 -07:00
2007-07-16 09:05:48 -07:00
2007-10-23 15:49:54 +10:00
2007-10-19 11:53:54 -07:00
2007-10-17 08:42:56 -07:00
2007-07-16 09:05:42 -07:00
2007-10-19 11:53:44 -07:00
2007-10-17 08:42:57 -07:00
2007-07-24 21:16:02 +00:00
2007-10-17 08:42:44 -07:00
2007-10-17 08:42:55 -07:00
2007-07-16 09:05:51 -07:00
2007-10-22 02:59:54 -07:00
2007-10-22 02:59:56 -07:00
2007-10-15 12:26:29 -07:00
2007-10-15 12:26:29 -07:00
2007-10-10 21:15:29 -07:00
2007-10-10 16:48:06 -07:00
2007-07-10 23:40:48 -04:00
2007-07-10 23:40:25 -04:00
2007-07-10 23:40:39 -04:00
2007-10-19 17:19:16 -04:00
2007-07-10 23:40:48 -04:00
2007-10-09 17:15:11 -04:00
2007-10-09 17:19:15 -04:00
2007-10-10 16:52:14 -07:00
2007-10-17 08:42:58 -07:00
2007-10-16 09:42:58 -07:00
2007-10-19 11:53:34 -07:00
2007-10-19 11:53:37 -07:00
2007-10-17 22:30:07 +10:00
2007-10-17 21:17:42 -07:00
2007-10-19 11:53:41 -07:00
2007-10-17 08:42:46 -07:00
2007-07-20 21:42:24 +02:00
2007-07-19 10:04:52 -07:00
2007-10-16 09:43:02 -07:00
2007-10-16 09:43:02 -07:00
2007-10-16 09:42:55 -07:00
2007-10-18 14:37:23 -07:00
2007-07-09 12:17:34 -04:00
2007-10-22 02:59:49 -07:00
2007-10-12 15:03:18 -07:00
2007-10-22 08:13:18 -07:00
2007-07-10 11:25:59 +01:00
2007-10-17 08:42:44 -07:00
2007-07-16 09:05:42 -07:00
2007-10-19 11:53:41 -07:00
2007-10-10 16:53:50 -07:00
2007-10-10 16:53:55 -07:00
2007-10-19 11:53:39 -07:00
2007-10-19 11:53:41 -07:00
2007-07-10 08:04:16 +02:00
2007-07-11 19:46:26 -07:00
2007-10-10 16:49:20 -07:00
2007-10-12 14:51:07 -07:00
2007-10-18 14:37:18 -07:00
2007-08-25 16:58:27 +10:00
2007-10-17 08:43:04 -07:00
2007-07-26 11:35:21 -07:00
2007-10-17 18:49:58 -04:00
2007-09-11 17:21:20 -07:00
2007-07-10 11:25:44 +01:00
2007-07-16 09:05:50 -07:00
2007-07-26 13:40:43 +02:00
2007-10-19 20:35:04 +02:00
2007-10-19 11:53:41 -07:00
2007-10-19 11:53:40 -07:00
2007-10-17 08:42:55 -07:00
2007-10-17 08:42:45 -07:00
2007-07-17 10:23:03 -07:00
2007-10-17 08:42:56 -07:00
2007-10-16 09:42:53 -07:00
2007-10-17 08:42:46 -07:00
2007-07-18 08:47:40 -07:00
2007-10-19 11:53:35 -07:00
2007-10-22 08:13:20 -07:00
2007-07-21 18:37:10 -07:00
2007-10-10 16:54:11 -07:00
2007-05-17 05:23:06 -07:00
2007-10-10 21:22:05 -07:00
2007-10-22 21:20:03 +02:00
2007-10-19 11:53:43 -07:00
2007-10-23 15:49:47 +10:00
2007-10-10 16:51:28 -07:00
2007-10-14 12:41:51 -07:00
2007-07-16 09:05:50 -07:00
2007-10-20 00:53:30 +02:00
2007-10-16 09:43:17 -07:00
2007-10-19 11:53:44 -07:00
2007-10-17 08:42:53 -07:00
2007-07-24 12:24:58 -07:00
2007-10-16 09:42:50 -07:00
2007-08-22 19:52:44 -07:00
2007-07-16 09:05:35 -07:00
2007-07-18 00:37:01 -04:00
2007-10-19 11:53:44 -07:00
2007-07-22 11:03:37 -07:00
2007-10-17 08:43:01 -07:00
2007-10-22 02:59:57 -07:00
2007-07-17 10:23:01 -07:00
2007-10-17 08:42:45 -07:00
2007-07-17 17:26:43 -07:00
2007-10-17 08:42:45 -07:00
2007-10-16 09:43:14 -07:00
2007-05-21 21:47:27 -07:00
2007-07-16 09:05:42 -07:00
2007-07-17 14:39:19 -07:00
2007-10-10 16:52:39 -07:00
2007-10-22 02:59:48 -07:00
2007-07-16 09:05:46 -07:00
2007-07-19 10:04:49 -07:00
2007-07-19 10:04:49 -07:00
2007-07-16 09:05:40 -07:00
2007-07-10 08:04:14 +02:00
2007-07-19 10:04:49 -07:00
2007-10-14 12:41:51 -07:00
2007-07-18 08:47:40 -07:00
2007-10-18 14:37:20 -07:00
2007-10-17 08:42:45 -07:00
2007-07-20 21:42:15 +02:00
2007-10-18 14:37:23 -07:00
2007-07-11 16:09:06 -07:00
2007-10-12 14:51:12 -07:00
2007-05-21 09:18:19 -07:00
2007-10-18 14:37:28 -07:00
2007-10-15 12:59:43 -07:00
2007-10-10 00:12:41 -04:00
2007-10-17 08:42:53 -07:00
2007-07-16 09:05:45 -07:00
2007-07-20 11:23:02 -07:00
2007-10-15 17:00:19 +02:00
2007-10-17 08:42:58 -07:00
2007-10-19 11:53:42 -07:00
2007-07-10 22:15:57 -07:00
2007-10-17 08:42:51 -07:00
2007-10-19 11:53:42 -07:00
2007-07-18 15:57:15 -07:00
2007-07-16 09:05:45 -07:00
2007-10-12 14:55:34 -07:00
2007-09-19 11:24:18 -07:00
2007-07-16 09:05:48 -07:00
2007-10-12 14:51:04 -07:00
2007-10-22 12:01:30 -02:00
2007-10-22 12:01:24 -02:00
2007-10-23 15:49:54 +10:00
2007-10-23 15:49:54 +10:00
2007-10-23 15:49:55 +10:00
2007-10-23 15:49:54 +10:00
2007-10-23 15:49:55 +10:00
2007-10-23 15:49:54 +10:00
2007-07-21 18:37:14 -07:00
2007-07-17 10:22:59 -07:00
2007-10-17 08:42:56 -07:00
2007-10-19 11:53:34 -07:00
2007-07-09 18:52:01 +02:00
2007-10-19 11:53:38 -07:00
2007-10-17 08:43:02 -07:00
2007-10-12 14:05:17 +10:00
2007-10-10 16:53:57 -07:00