Re: [patch] Exported some extra symbols for modules

Alexander Viro (viro@math.psu.edu)
Fri, 4 Jun 1999 15:40:31 -0400 (EDT)


On Fri, 4 Jun 1999, Arjan van de Ven wrote:

> Hi,
>
> This patch exports the symbols (patch agains 2.2.9 at the end of the
> message)
>
> do_generic_file_read
> tcp_reset_xmit_timer
> tcp_write_xmit
>
> for modules. I need "do_generic_file_read" to build my own "sendfile from
> struct file to struct socket". The later two are for a module-version of

Put it into the main kernel and make sys_sendfile() use it - it's *MUCH*
better than expanding the export list and duplicating code.

> "TCP_CORK". Using these symbols increases the number of
> http-requests/second by over 20% (to over 1400 for 1K files, 900 for 8K
> files; this is more than the C'T guy benchmarked for a quad Xeon
> machine using NT; I use only a K6-2 350Mhz).
>
> One more question:
>
> "sendfile" holds the global kernel-lock. Is it possible to remove this
> somehow?

No. It uses a lot of code that is not SMP-safe. BTW, the same applies to
your sendfile-from-struct-file thing. Which is one of the reasons *not* to
drag it out of the main kernel - it would make analysis of SMP issues in
VFS and filesystems much harder.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/