X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;f=KernelLand%2FKernel%2Fvfs%2Fmmap.c;h=612886957c98019069b64098324017b567ec33b1;hb=4842e2d6740bcb81da4e94019285bfd2c45425b8;hp=9fe9282c309b4a52cc15dad8e41f5e74f3910099;hpb=51ab5f489bc356940c95cc936fd0508e8f07ea97;p=tpg%2Facess2.git diff --git a/KernelLand/Kernel/vfs/mmap.c b/KernelLand/Kernel/vfs/mmap.c index 9fe9282c..61288695 100644 --- a/KernelLand/Kernel/vfs/mmap.c +++ b/KernelLand/Kernel/vfs/mmap.c @@ -93,14 +93,13 @@ void *VFS_MMap(void *DestHint, size_t Length, int Protection, int Flags, int FD, if( !pb || pb->BaseOffset > pagenum ) { void *old_pb = pb; - pb = malloc( sizeof(tVFS_MMapPageBlock) ); + pb = calloc( 1, sizeof(tVFS_MMapPageBlock) ); if(!pb) { Mutex_Release( &h->Node->Lock ); LEAVE_RET('n', NULL); } pb->Next = old_pb; pb->BaseOffset = pagenum - pagenum % MMAP_PAGES_PER_BLOCK; - memset(pb->PhysAddrs, 0, sizeof(pb->PhysAddrs)); if(prev) prev->Next = pb; else @@ -194,7 +193,6 @@ void *VFS_MMap(void *DestHint, size_t Length, int Protection, int Flags, int FD, memset(pb->PhysAddrs, 0, sizeof(pb->PhysAddrs)); oldpb->Next = pb; } - pagenum = 0; } }