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

Reply via email to