Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Nov 2015 15:47:12 -0800
From:      John Baldwin <jhb@freebsd.org>
To:        Randall Stewart <rrs@netflix.com>
Cc:        Bryan Drewery <bdrewery@freebsd.org>, "Alexander V. Chernikov" <melifaro@freebsd.org>, "src-committers@freebsd.org" <src-committers@freebsd.org>, "svn-src-all@freebsd.org" <svn-src-all@freebsd.org>, "svn-src-head@freebsd.org" <svn-src-head@freebsd.org>, Adrian Chadd <adrian@freebsd.org>, imp@freebsd.org
Subject:   Re: svn commit: r290664 - in head: share/man/man9 sys/kern sys/sys
Message-ID:  <2705265.iiJmELE41x@ralph.baldwin.cx>
In-Reply-To: <A3B5A7C5-BF76-44D0-84A9-858EA259F9E4@netflix.com>
References:  <201511101449.tAAEnXIi065747@repo.freebsd.org> <56465991.5090906@FreeBSD.org> <A3B5A7C5-BF76-44D0-84A9-858EA259F9E4@netflix.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Friday, November 13, 2015 04:47:53 PM Randall Stewart wrote:
>=20
> On Nov 13, 2015, at 4:43 PM, Bryan Drewery <bdrewery@FreeBSD.org> wro=
te:
>=20
> > On 11/13/2015 1:24 PM, Randall Stewart wrote:
> >> Looking at the patch, we need a define of your
> >>=20
> >> _callout_stop_safe
> >>=20
> >> and we need to switch
> >>=20
> >> callout_stop()=E2=80=99s define to use the new _callout_stop_safe(=
)
> >=20
> > For both cases, there would be no reason to have new code call my
> > wrapper. The defines in my patch are fine for new code. The "new"
> > _callout_stop_safe function is just for existing modules.
> >=20
> > I think the historical consensus is to not commit my patch though a=
s
> > people should recompile their modules when the kernel is updated, b=
efore
> > rebooting into the new kernel even.
>=20
> I did (as Han=E2=80=99s suggested) bump the FreeBSD version number..
>=20
> So maybe thats good enough.

I think this will be problematic to MFC.  It would be both an API and
ABI change for existing modules, and callout(9) is a fairly common API
that you would expect modules to use (not some internal thing that
few if any modules use).

The ABI stub would need to return the old values (so map -1 to 0).

Changing the API in this way though means that code can silently be
recompiled and break (there's no compile error, etc.  The API only
changes in that the semantics of the functions change).

--=20
John Baldwin



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