40% slowdown with dynamic /bin/sh

Matthew Dillon dillon at apollo.backplane.com
Tue Nov 25 13:16:09 PST 2003

:>     is the path you've chosen to go then you have an obligation not to
:>     tear out major existing system capabilities, such as the ability to
:>     generate static binaries, in the process.
:If this is what you think has happened, you're living in some parallel
:fantasy universe.

    I am simply repeating the reasoning being used for going to a dynamic 
    root.  Forgive me if I misread it, but I believe the argument was that
    FreeBSD-5 was migrating to NSS and NSS's DLL mechanism does not work
    in a static world, therefore dynamic becomes the default.  If I am
    wrong and NSS's DLL mechanism can be used in a static world, please
    correct me!

    So exactly how far do you intend to go with NSS?  Because it seems to 
    me that FreeBSD-5's goal is to start to depend on the DLL capabilities.
    If the goal is an intention to depend on DLL then you damn well need to
    make it work with static ELF binaries.  It's that simple.

:>     There is a lot of circular reasoning going on here... it's the same sort
:>     of circular reasoning that John uses to justify some of the more esoteric
:>     scheduling mechanisms in -current.  A because of B because of A, and
:>     to hell with anyone who wanted to use C.
:Keep the ad homenim attacks to yourself, buster!  This was uncalled-for.

    Well, the scheduler arguments are more involved but I am not incorrect
    here.  E.G. the priority borrowing exists to work around problems with
    the mutex implementation.  Preemption by non-interrupts threads also
    exists to work around problems with the mutex implementation.  Preemptive
    cpu migration could be turned off fairly easily and doesn't really count.
    The priority borrowing is a mess, though.  You may think its the best
    thing since sliced bread but I think it unnecessarily complicates both
    the scheduler core and the programming model.


More information about the freebsd-current mailing list