On Tuesday 08 August 2006 09:44, Evgeniy Polyakov wrote:
> Network AIO, socket notifications.
>
> This patchset includes socket notifications and network asynchronous IO.
> Network AIO is based on kevent and works as usual kevent storage on top
> of inode.
diff --git a/include/net/sock.h b/include/net/sock.h
index 324b3ea..c43a153 100644
--- a/include/net/sock.h
+++ b/include/net/sock.h
Why are you moving around SOCKET_I() and SOCK_INODE() ?
diff --git a/kernel/kevent/kevent_naio.c b/kernel/kevent/kevent_naio.c
new file mode 100644
index 0000000..98c357f
--- /dev/null
+++ b/kernel/kevent/kevent_naio.c
> + if (!file->f_dentry || !file->f_dentry->d_inode)
> + goto err_out_fput;
> + if (file->f_op != &socket_file_ops)
> + goto err_out_fput;
> +
> + sk = SOCKET_I(file->f_dentry->d_inode)->sk;
> +
You dont need to acess the dentry to get the socket from the file pointer.
(cf net/socket.c , function sock_from_file())
if (file->f_op != &socket_file_ops)
goto err_out_fput;
sk = file->private_data;
(I repeat myself on this point, because I have a patch here so that only one
common dentry is allocated for all the sockets to reduce ram usage on big
servers : Everything but /proc/pid/fd is fine)
Eric
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html