Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 17 Feb 2008 21:41:31 -0800
From:      "Kip Macy" <kip.macy@gmail.com>
To:        "Bjoern A. Zeeb" <bzeeb-lists@lists.zabbadoz.net>
Cc:        arch@freebsd.org, Robert Watson <rwatson@freebsd.org>, kmacy@freebsd.org, net@freebsd.org
Subject:   Re: Network device driver KPI/ABI and TOE
Message-ID:  <b1fa29170802172141v91f7453l483d59e677c1a416@mail.gmail.com>
In-Reply-To: <20080217210205.A49429@maildrop.int.zabbadoz.net>
References:  <20080106124517.G105@fledge.watson.org> <20080217210205.A49429@maildrop.int.zabbadoz.net>

next in thread | previous in thread | raw e-mail | index | archive | help
You might want to check out sys/modules/cxgb/tom/Makefile.

 -Kip

On Feb 17, 2008 1:24 PM, Bjoern A. Zeeb <bzeeb-lists@lists.zabbadoz.net> wrote:
> On Sun, 6 Jan 2008, Robert Watson wrote:
>
> Hi,
>
> [cutting a long mail short and randomly replying;-)]
>
> I came across dev/cxgb/ulp/tom/cxgb_tcp_subr.c vs. netinet/tcp_subr.c
> and I am a bit worried with the way things are done atm. For those
> functions copied over there are only changes like:
>
> -                       tp = cxgb_tcp_drop(tp, ECONNABORTED);
> +                       tp = tcp_drop(tp, ECONNABORTED);
>
> -               notify = cxgb_tcp_drop_syn_sent;
> +               notify = tcp_drop_syn_sent;
>
> -               tcp_gen_listen_close(tp);
> +               tcp_offload_listen_close(tp);
>
> -               (void) tcp_gen_reset(tp);
> +               (void) tcp_output_reset(tp);
>
> and SYSCTL stuff.
>
>
> This is a "problem" for following reasons:
> - code duplication
> - if one changes netinet/tcp_subr.c one has to change foo4_tcp_subr.c
>    as well
> - if more drivers are going to implement things that way it'll be
>    even more code duplication.
> - developers will have to check lots of different places they might
>    not expect in first place.
> - those things might interfere with our locking as well.
>
> I assume (without looking) the other files in the tom directory expose
> similar behavior. So this is a more general problem:
>
> we need to seriously think about abstracting our tcp_subr.c (and
> other) functions to avoid this duplication or at least integrate
> things better by other ways.
>
> This is mostly asking networking people to think about this so we can
> iteratively improve things. cxgb has done a good first step in that
> direction, now is the time to further hone things.
>
>
> /bz
>
> --
> Bjoern A. Zeeb                                 bzeeb at Zabbadoz dot NeT
> Software is harder than hardware  so better get it right the first time.
>
> _______________________________________________
> freebsd-arch@freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-arch
> To unsubscribe, send any mail to "freebsd-arch-unsubscribe@freebsd.org"
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?b1fa29170802172141v91f7453l483d59e677c1a416>