select is fine, I'll try that. -- p
On Jan 24, 2:38 pm, Amit Singh <[EMAIL PROTECTED]> wrote: > Do you need *poll* specifically (and not select)? > > On Mac OS X, poll(2) is implemented through kqueue(2) in the kernel. > Devices don't support poll on OS X--the device file switch doesn't > also have a poll function. It does have select though. > > In theory, I could plumb the whole thing so that you could, in fact, > either use kqueue() yourself or go through poll(), but that's not what > I had in mind. It's just not worth it to do it in MacFUSE. (MacFUSE > does, however, support kqueue for file systems--I'm just talking about > the user-kernel device layer here.) > > I could probably give you a select() implementation to try though--if > you're interested. Let me know. > > Amit > > On Jan 24, 1:36 pm, paul mineiro <[EMAIL PROTECTED]> wrote: > > > I'm working on Erlang bindings for FUSE. (http://code.google.com/p/ > > fuserl/) The ultimate goal is to make a distributed filesystem by > > leveraging Mnesia. > > > My first version of the fuse bindings used threads but the Erlang > > aesthetic is extreme concurrency so I thought reimplementing with poll > > was desirable. It works under Linux but fails under Mac. If you > > implement this, I could definitely test it. > > > Production here is Linux but I have a Mac desktop so I like to have > > things work on it. I would love to see you work on this, but I can > > just spawn one extra thread (on the mac only), read the raw request > > off the kernel file descriptor and then socketpair-it over to the > > other thread and then just plug into my poll based architecture over > > there. Not super efficient but oh well. > > > -- p > > > On Jan 23, 8:20 pm, Amit Singh <[EMAIL PROTECTED]> wrote: > > > > Tell me something: > > > > Why do you need this? Can you give an example of code where you > > > (justifiably) need to do a poll or select on fuse_chan_fd()? > > > > As is the case with countless other things, Apple didn't foresee > > > anybody (except themselves) ever needing to do this. One structure I > > > need in the kernel is not exported by Apple, so this would be kludgy > > > even if I did it. > > > > Do you have the rest of your code working? That is, if I gave you a > > > version of MacFUSE where this is supposed to work, will you be able to > > > test it? > > > > Amit > > > > On Jan 23, 7:30 pm, paul mineiro <[EMAIL PROTECTED]> wrote: > > > > > cool. well at least i'm not crazy. > > > > > thanks for the prompt reply. i look forward to poll support. > > > > > -- p > > > > > On Jan 23, 5:51 pm, Amit Singh <[EMAIL PROTECTED]> wrote: > > > > > > It won't work. > > > > > > I haven't implemented support for poll/select in the user-kernel > > > > > MacFUSE device layer. I haven't needed it so far, and nobody has asked > > > > > for it yet. It should be reasonably straightforward to get this > > > > > going-- > > > > > I'll try to find time to do it in the near future (but no promises). > > > > > > Amit > > > > > > On Jan 23, 5:26 pm, paul mineiro <[EMAIL PROTECTED]> wrote: > > > > > > > hi. > > > > > > > i'm trying to port my code from linux and ran into a problem. > > > > > > > i'm getting POLLNVAL in revents from poll after calling poll with > > > > > > events = POLLIN and fd being the return value of fuse_chan_fd(). > > > > > > > should i expect this to work? > > > > > > > thanks, > > > > > > > -- p --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "macfuse-devel" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/macfuse-devel?hl=en -~----------~----~----~----~------~----~------~--~---
