Re: VM problem...

2003-07-21 Thread Pawel Jakub Dawidek
On Mon, Jul 21, 2003 at 01:57:59AM +0200, Pawel Jakub Dawidek wrote: + So as you can see I'm listing every entry that isn't writable. + This function is called when process is killed by kernel with SIGBUS. + It shows me that only this region isn't writable: + + ENTRY:PID: 0-0xbfc0 (0:0)

Re: VM problem...

2003-07-21 Thread Matthew Dillon
Hmm. Is the VM object properly sized? Any attempt to fault-in data beyond a VM object's EOF, regardless of how you set the map_entry permissions, will seg fault or bus fault. -Matt Matthew Dillon

Re: VM problem...

2003-07-21 Thread Pawel Jakub Dawidek
On Mon, Jul 21, 2003 at 12:03:59PM -0700, Matthew Dillon wrote: + Hmm. Is the VM object properly sized? Any attempt to fault-in data + beyond a VM object's EOF, regardless of how you set the map_entry + permissions, will seg fault or bus fault. I'm allocationg memory with obreak()

Re: VM problem...

2003-07-21 Thread Matthew Dillon
: end =3D vm-vm_daddr + ctob(vm-vm_dsize); : obreak(vm, end + size); : vm_map_protect(vm-vm_map, end, end + size, VM_PROT_READ); : :And vm_map_protect() will create new map entry (it should, right?) :with entry-start =3D end and entry-end =3D end + size. : :But what happend with

Re: VM problem...

2003-07-21 Thread Bruce M Simpson
Hi Pawel, On Mon, Jul 21, 2003 at 09:16:22PM +0200, Pawel Jakub Dawidek wrote: I'm allocationg memory with obreak() function (so vm_map_find() function is used to find space). But if I try to allocate size (and size is small), obreak() will allocate more memory. You may find the vm_map and

Re: VM problem...

2003-07-21 Thread Pawel Jakub Dawidek
On Mon, Jul 21, 2003 at 12:32:19PM -0700, Matthew Dillon wrote: + Hmm. Well, when a process forks the vm_map_entry's fork along with + it. The underlying VM objects remain shared but become copy-on-write. Yes, but I mean while execve(), not fork(). Before execve() is called map got for

Re: VM problem...

2003-07-21 Thread Pawel Jakub Dawidek
On Mon, Jul 21, 2003 at 08:51:19PM +0100, Bruce M Simpson wrote: Matt, Bruce, thanks! I've track it down. Yes, those read-only pages was reused. So now I'm putting them on list before syscall is called, and after syscall is executed I free memory for non-execve syscalls and mark entries from

VM problem...

2003-07-20 Thread Pawel Jakub Dawidek
Hello hackers... I'll try to describe my problem carefully, maybe there will be someone who will be able to help me with this. Problem: Strage 'Bus errors'. What I'm doing? I allocate memory in process' vmspace with my version of obreak function. It is quite simlar to those from