search for: lguest_max_dma

Displaying 14 results from an estimated 14 matches for "lguest_max_dma".

2007 Apr 18
0
[RFC/PATCH LGUEST X86_64 08/13] lguest64 user header.
...============================== --- /dev/null +++ work-pv/include/asm-x86_64/lguest_user.h @@ -0,0 +1,88 @@ +#ifndef _ASM_LGUEST_USER +#define _ASM_LGUEST_USER + +/* Everything the "lguest" userspace program needs to know. */ +/* They can register up to 32 arrays of lguest_dma. */ +#define LGUEST_MAX_DMA 32 + +/* How many devices? Assume each one wants up to two dma arrays per device. */ +#define LGUEST_MAX_DEVICES (LGUEST_MAX_DMA/2) + +/* At most we can dma 16 lguest_dma in one op. */ +#define LGUEST_MAX_DMA_SECTIONS 16 + +struct lguest_dma +{ + /* 0 if free to be used, filled by hypervisor. */...
2007 Apr 18
0
[RFC/PATCH LGUEST X86_64 08/13] lguest64 user header.
...============================== --- /dev/null +++ work-pv/include/asm-x86_64/lguest_user.h @@ -0,0 +1,88 @@ +#ifndef _ASM_LGUEST_USER +#define _ASM_LGUEST_USER + +/* Everything the "lguest" userspace program needs to know. */ +/* They can register up to 32 arrays of lguest_dma. */ +#define LGUEST_MAX_DMA 32 + +/* How many devices? Assume each one wants up to two dma arrays per device. */ +#define LGUEST_MAX_DEVICES (LGUEST_MAX_DMA/2) + +/* At most we can dma 16 lguest_dma in one op. */ +#define LGUEST_MAX_DMA_SECTIONS 16 + +struct lguest_dma +{ + /* 0 if free to be used, filled by hypervisor. */...
2007 Apr 18
0
[RFC/PATCH LGUEST X86_64 09/13] lguest64 devices
...uest.h> +#include <asm/lguest_user.h> +#include "lguest.h" + +static struct list_head dma_hash[64]; + +/* FIXME: allow multi-page lengths. */ +static int check_dma_list(struct lguest_guest_info *linfo, + const struct lguest_dma *dma) +{ + unsigned int i; + + for (i = 0; i < LGUEST_MAX_DMA_SECTIONS; i++) { + if (!dma->len[i]) + return 1; + if (!lguest_address_ok(linfo, dma->addr[i])) + goto kill; + if (dma->len[i] > PAGE_SIZE) + goto kill; + /* We could do over a page, but is it worth it? */ + if ((dma->addr[i] % PAGE_SIZE) + dma->len[i] > PAGE_SIZE) +...
2007 Apr 18
0
[RFC/PATCH LGUEST X86_64 09/13] lguest64 devices
...uest.h> +#include <asm/lguest_user.h> +#include "lguest.h" + +static struct list_head dma_hash[64]; + +/* FIXME: allow multi-page lengths. */ +static int check_dma_list(struct lguest_guest_info *linfo, + const struct lguest_dma *dma) +{ + unsigned int i; + + for (i = 0; i < LGUEST_MAX_DMA_SECTIONS; i++) { + if (!dma->len[i]) + return 1; + if (!lguest_address_ok(linfo, dma->addr[i])) + goto kill; + if (dma->len[i] > PAGE_SIZE) + goto kill; + /* We could do over a page, but is it worth it? */ + if ((dma->addr[i] % PAGE_SIZE) + dma->len[i] > PAGE_SIZE) +...
2007 May 09
1
[patch 3/9] lguest: the host code
...+void lguest_io_init(void) +{ + unsigned int i; + + for (i = 0; i < ARRAY_SIZE(dma_hash); i++) + INIT_LIST_HEAD(&dma_hash[i]); +} + +/* FIXME: allow multi-page lengths. */ +static int check_dma_list(struct lguest *lg, const struct lguest_dma *dma) +{ + unsigned int i; + + for (i = 0; i < LGUEST_MAX_DMA_SECTIONS; i++) { + if (!dma->len[i]) + return 1; + if (!lguest_address_ok(lg, dma->addr[i], dma->len[i])) + goto kill; + if (dma->len[i] > PAGE_SIZE) + goto kill; + /* We could do over a page, but is it worth it? */ + if ((dma->addr[i] % PAGE_SIZE) + dma->len[i] >...
2007 May 09
1
[patch 3/9] lguest: the host code
...+void lguest_io_init(void) +{ + unsigned int i; + + for (i = 0; i < ARRAY_SIZE(dma_hash); i++) + INIT_LIST_HEAD(&dma_hash[i]); +} + +/* FIXME: allow multi-page lengths. */ +static int check_dma_list(struct lguest *lg, const struct lguest_dma *dma) +{ + unsigned int i; + + for (i = 0; i < LGUEST_MAX_DMA_SECTIONS; i++) { + if (!dma->len[i]) + return 1; + if (!lguest_address_ok(lg, dma->addr[i], dma->len[i])) + goto kill; + if (dma->len[i] > PAGE_SIZE) + goto kill; + /* We could do over a page, but is it worth it? */ + if ((dma->addr[i] % PAGE_SIZE) + dma->len[i] >...
2007 Sep 25
50
[patch 00/43] lguest: Patches for 2.6.24 (and patchbomb test)
Hi all, These are the patches I'm planning to submit for 2.6.24. Comments gratefully accepted. Along with the usual cleanups and improvements are Jes' de-i386-ification patches, and a new "virtio" mechanism designed to be shared with KVM (and hopefully other hypervisors). Cheers, Rusty. Documentation/lguest/Makefile | 30 Documentation/lguest/lguest.c
2007 Sep 25
50
[patch 00/43] lguest: Patches for 2.6.24 (and patchbomb test)
Hi all, These are the patches I'm planning to submit for 2.6.24. Comments gratefully accepted. Along with the usual cleanups and improvements are Jes' de-i386-ification patches, and a new "virtio" mechanism designed to be shared with KVM (and hopefully other hypervisors). Cheers, Rusty. Documentation/lguest/Makefile | 30 Documentation/lguest/lguest.c
2007 Apr 18
1
[RFC/PATCH LGUEST X86_64 03/13] lguest64 core
...t_head pud_hash[PUD_HASH_SIZE]; + struct list_head pmd_hash[PMD_HASH_SIZE]; + struct list_head pte_hash[PTE_HASH_SIZE]; + struct mutex page_lock; + + int timer_on; + int last_timer; + + /* Cached wakeup: we hold a reference to this task. */ + struct task_struct *wake; + + struct lguest_dma_info dma[LGUEST_MAX_DMA]; + + struct lguest_vcpu *vcpu[LGUEST_MAX_VCPUS]; +}; + +/* copied from old lguest code. Not sure if it's the best layout for us */ +struct lguest_regs +{ + u64 cr3; /* 0 ( 0x0) */ + /* Manually saved part. */ + u64 rbx, rcx, rdx; /* 8 ( 0x8) */ + u64 rsi, rdi, rbp;...
2007 Apr 18
1
[RFC/PATCH LGUEST X86_64 03/13] lguest64 core
...t_head pud_hash[PUD_HASH_SIZE]; + struct list_head pmd_hash[PMD_HASH_SIZE]; + struct list_head pte_hash[PTE_HASH_SIZE]; + struct mutex page_lock; + + int timer_on; + int last_timer; + + /* Cached wakeup: we hold a reference to this task. */ + struct task_struct *wake; + + struct lguest_dma_info dma[LGUEST_MAX_DMA]; + + struct lguest_vcpu *vcpu[LGUEST_MAX_VCPUS]; +}; + +/* copied from old lguest code. Not sure if it's the best layout for us */ +struct lguest_regs +{ + u64 cr3; /* 0 ( 0x0) */ + /* Manually saved part. */ + u64 rbx, rcx, rdx; /* 8 ( 0x8) */ + u64 rsi, rdi, rbp;...
2007 Aug 08
13
[PATCH 0/7] Modify lguest32 to make room for lguest64
Hi all, I've been working on lguest64 and in order to do this, I had to move a lot of the i386 specific out of the way. Well, the lguest64 port is still not ready to display, but before Rusty makes too many changes I would like this in upstream so I don't have to keep repeating my changes :-) So this patch series moves lguest32 out of the way for other archs. -- Steve
2007 Aug 08
13
[PATCH 0/7] Modify lguest32 to make room for lguest64
Hi all, I've been working on lguest64 and in order to do this, I had to move a lot of the i386 specific out of the way. Well, the lguest64 port is still not ready to display, but before Rusty makes too many changes I would like this in upstream so I don't have to keep repeating my changes :-) So this patch series moves lguest32 out of the way for other archs. -- Steve
2007 Aug 08
7
[PATCH 0/5 -v2] Modify lguest32 to make room for lguest64 (version 2)
[ Changes since last version. - Move lg.h to include/asm instead (suggested by Rusty Russel) - All steps of the series compiles (suggested by Stephen Rothwell) - Better ifdef header naming (suggested by Stephen Rothwell) - Added Andi Kleen to CC (forgot to on V1) ] Hi all, I've been working on lguest64 and in order to do this, I had to move a lot of the i386 specific out of the
2007 Aug 08
7
[PATCH 0/5 -v2] Modify lguest32 to make room for lguest64 (version 2)
[ Changes since last version. - Move lg.h to include/asm instead (suggested by Rusty Russel) - All steps of the series compiles (suggested by Stephen Rothwell) - Better ifdef header naming (suggested by Stephen Rothwell) - Added Andi Kleen to CC (forgot to on V1) ] Hi all, I've been working on lguest64 and in order to do this, I had to move a lot of the i386 specific out of the