Thus spake James Gritton <[EMAIL PROTECTED]>: > The object's ref_count hasn't changed, which is what I meant about seeing > reference counts in the kernel that were apparently not counting what I'm > looking for. I did see a ref_count increase on the first object > (presumably the text image), but nothing on the allocated memory. > > It seems the object level isn't fine enough, but the deeper I go into the > VM code, the more confused I become. In this forked process example, what > happens when I alter a few COW pages in the currently-shared object? > Apparently a shadow object is created, but it claims to be the same size as > the original object. True, but I know it's not actually using that many > pages, since most of them are still validly shared. System usage numbers > tell me this is true, but I can't find what in the process or object data > structures reflect this fact.
No, you don't have enough information. Even if you knew which objects shadowed which, I still don't think you would have enough information. You want to account for physical pages, so you should be looking at vm_page structures. AFAIK, there isn't an interface to do that, but one shouldn't be too hard to implement. To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-hackers" in the body of the message