Re: I/O in my Filesystem causing application crashes.
Re: I/O in my Filesystem causing application crashes.
- Subject: Re: I/O in my Filesystem causing application crashes.
- From: email@hidden
- Date: Mon, 21 Jul 2003 16:42:12 -0700
On Saturday, July 19, 2003, at 09:16 AM, Quinn wrote:
At 17:35 -0700 16/7/03, email@hidden wrote:
Any ideas?
My guess is that this has something to do with how your VOP_PAGEIN
entry point is implemented. I did some poking around in Preview with
GDB and it seems that it memory maps the image file (using mmap).
[NSBMPImageReader getByte] then reads the file by reading the mapped
memory.
Unfortunately I don't have a recommendation for how you might
implement VOP_PAGEIN given your current I/O design. I'd have to study
the problem in more detail than I have time for right now.
I think you're right - at least in one case, I am seeing a call to
pagein before the crash - pagein and pageout are currently
unimplemented, and return an error (damm, I guess I'm going to have to
figure out how to implement them).
I found an overview discussion of the vnode pager in "The design and
implementation of the 4.4 BSD operating system" - conceptually, it
seems like it should work with my I/O model - I would, however, like to
find some documentation for "cluster_pagein" and "cluster_pageout" - an
overview of the unified buffer cache would be nice as well...
One other oddity, is that if I simply double-click a .gif file on the
disc, Preview is launched, but then does nothing - it doesn't open the
file, doesn't memory map it, doesn't try to read it - nothing. If,
however, I launch Preview, and select "open" to open the .gif file,
then Preview crashes after my pagein call returns an error.
Thanks,
Ron Aldrich
Software Architects, Inc.
_______________________________________________
darwin-kernel mailing list | email@hidden
Help/Unsubscribe/Archives:
http://www.lists.apple.com/mailman/listinfo/darwin-kernel
Do not post admin requests to the list. They will be ignored.