diff options
author | jdike <jdike> | 2003-09-11 14:44:45 +0000 |
---|---|---|
committer | jdike <jdike> | 2003-09-11 14:44:45 +0000 |
commit | fa041c834a770c6c8dc53b4520dbb767b1164d1a (patch) | |
tree | f4fd7eec5cca62bfae83e9015202847383731eb1 | |
parent | 6c82166973ac2e671e8e204564545304e1acbe92 (diff) | |
download | uml-history-fa041c834a770c6c8dc53b4520dbb767b1164d1a.tar.gz |
Got rid of the physmem hash.
-rw-r--r-- | arch/um/kernel/physmem.c | 23 |
1 files changed, 1 insertions, 22 deletions
diff --git a/arch/um/kernel/physmem.c b/arch/um/kernel/physmem.c index 4bae24c..07d3a14 100644 --- a/arch/um/kernel/physmem.c +++ b/arch/um/kernel/physmem.c @@ -24,11 +24,9 @@ struct phys_desc; DEF_HASH_STRUCTS(virtmem, PHYS_HASHSIZE, struct phys_desc); -DEF_HASH_STRUCTS(physmem, PHYS_HASHSIZE, struct phys_desc); struct phys_desc { struct virtmem_ptrs virt_ptrs; - struct physmem_ptrs phys_ptrs; int fd; __u64 offset; void *virt; @@ -51,21 +49,6 @@ static int virt_hash(void *virt) DEF_HASH(static, virtmem, struct phys_desc, virt_ptrs, void *, virt, virt_cmp, virt_hash); -struct physmem_table physmem_hash; - -static int phys_cmp(unsigned long phys1, unsigned long phys2) -{ - return(phys1 != phys2); -} - -static int phys_hash(unsigned long phys) -{ - return((phys >> PAGE_SHIFT) % PHYS_HASHSIZE); -} - -DEF_HASH(static, physmem, struct phys_desc, phys_ptrs, unsigned long, phys, - phys_cmp, phys_hash); - int physmem_subst_mapping(void *virt, int fd, __u64 offset, int w) { struct phys_desc *desc; @@ -78,8 +61,7 @@ int physmem_subst_mapping(void *virt, int fd, __u64 offset, int w) goto out; phys = __pa(virt); - if((find_physmem_hash(&physmem_hash, phys) != NULL) || - (find_virtmem_hash(&virtmem_hash, virt) != NULL)) + if(find_virtmem_hash(&virtmem_hash, virt) != NULL) panic("Address 0x%p is already substituted\n", virt); err = -ENOMEM; @@ -88,12 +70,10 @@ int physmem_subst_mapping(void *virt, int fd, __u64 offset, int w) goto out; *desc = ((struct phys_desc) { .virt_ptrs = { NULL, NULL }, - .phys_ptrs = { NULL, NULL }, .fd = fd, .offset = offset, .virt = virt, .phys = __pa(virt) }); - insert_physmem_hash(&physmem_hash, desc); insert_virtmem_hash(&virtmem_hash, desc); err = 0; out: @@ -112,7 +92,6 @@ int physmem_remove_mapping(void *virt) if(desc == NULL) return(0); - remove_physmem_hash(&physmem_hash, desc); remove_virtmem_hash(&virtmem_hash, desc); kfree(desc); |