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>

index | next in thread | previous in thread | raw e-mail

On Friday, November 13, 2015 04:47:53 PM Randall Stewart wrote:
> 
> On Nov 13, 2015, at 4:43 PM, Bryan Drewery <bdrewery@FreeBSD.org> wrote:
> 
> > On 11/13/2015 1:24 PM, Randall Stewart wrote:
> >> Looking at the patch, we need a define of your
> >> 
> >> _callout_stop_safe
> >> 
> >> and we need to switch
> >> 
> >> callout_stop()’s define to use the new _callout_stop_safe()
> > 
> > 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.
> > 
> > I think the historical consensus is to not commit my patch though as
> > people should recompile their modules when the kernel is updated, before
> > rebooting into the new kernel even.
> 
> I did (as Han’s suggested) bump the FreeBSD version number..
> 
> 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).

-- 
John Baldwin


help

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