sosend() and mbuf

Maslan maslanbsd at gmail.com
Tue Aug 4 22:37:00 UTC 2009


> When you did kern_open() without creating kernel thread, it worked,
> because kern_open() used file descriptor table from your current
> (userland) process. In FreeBSD 7.x kthread_create() creates a process
> without file descriptor table, so you can't use kern_open() and actually
> you shouldn't do this either.
I understood now. Thanks

> Take a look at sys/cddl/compat/opensolaris/kern/opensolaris_kobj.c,
> where you can find functions to do what you want.
>
> I guess you already considered doing all this in userland?:)

I'm not deploying this http server for any production, i just want to
study its performance compared to a userland http server.
And to experience FreeBSD kernel hacking.

I'm still trying to figure out, how to play with soreceive() now.
But Thanks a lot, It's now clearer for me.


More information about the freebsd-hackers mailing list