Hello, I'm trying to understand how the bytes I get from recv(2) comes through the nic to the sockets interface. I tried following it from sys_recv (net/socket.c) to the driver functions being used. But I got stuck on: err = security_socket_recvmsg(sock, msg, size, flags); and return sock->ops->recvmsg(iocb, sock, msg, size, flags); both lines in the function __sock_recvmsg (net/socket.c). Then, I tried to figure the path from the driver to the socket interface. This time I got stuck on the function ``generic_mii_ioctl'' (drivers/net/mii.c); I don't know what comes before that. I'm assuming that generic_mii_ioctl is really the top function in the nic driver interface that gets requests for reading new bytes from the card. So now I'm trying to fill this gap, but I'm having some trouble browsing through a bunch of macros and pointer to functions. Is there some manual about this organization? Where may I find it? I'm interested in learning about the organization of other subsystems in the kernel as well. Any help will be appreciated. []'s Rafael -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ