From owner-svn-src-head@FreeBSD.ORG Wed Nov 6 00:34:45 2013 Return-Path: Delivered-To: svn-src-head@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) (using TLSv1 with cipher ADH-AES256-SHA (256/256 bits)) (No client certificate requested) by hub.freebsd.org (Postfix) with ESMTP id F317BB4C for ; Wed, 6 Nov 2013 00:34:45 +0000 (UTC) (envelope-from peter@wemm.org) Received: from mail-pd0-x232.google.com (mail-pd0-x232.google.com [IPv6:2607:f8b0:400e:c02::232]) (using TLSv1 with cipher ECDHE-RSA-RC4-SHA (128/128 bits)) (No client certificate requested) by mx1.freebsd.org (Postfix) with ESMTPS id C3A51228A for ; Wed, 6 Nov 2013 00:34:45 +0000 (UTC) Received: by mail-pd0-f178.google.com with SMTP id x10so9288107pdj.23 for ; Tue, 05 Nov 2013 16:34:45 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=wemm.org; s=google; h=message-id:date:from:user-agent:mime-version:to:cc:subject :references:in-reply-to:content-type:content-transfer-encoding; bh=yJm5MFfqmAm6dxobdJS2gJ5kOijyr/3czLJx2LLeupg=; b=ydZxkltsL28fGFIuyinpLCrbE2l0z5tNCkF4MColllzS9raV0zji34P9cOPhNjOaTh 1S3o7Dx42bWEUy0ipfDQuC0A3NmaMUcDAw4X69+d7KqKx4wky6C8sjdcVlodCq54vZT4 6lGTyGmrrdiCVDVbd0qOvx23uBVDCeBG7QC34= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:message-id:date:from:user-agent:mime-version:to :cc:subject:references:in-reply-to:content-type :content-transfer-encoding; bh=yJm5MFfqmAm6dxobdJS2gJ5kOijyr/3czLJx2LLeupg=; b=g4Hn6nWxU81o3V0aNGU2Vh09WNzxXYZCIfrJbH18bwGSFNRtzZZXNqSNmXqDRq/qdu QJ4tg9NOIj8K2uabsGytabW/+UxWQSGzRza3NTufwozCtC7lGjVSWxwb4GhXxq0/thM2 HcBMgJAaZXAq6TSOUmQ1WMaY0MqdNVPSGufXfI58RjgvpyH/V6KiAk45EfUxmkJoFwxN y3GhFPb/V8Wr+1o5W3vFCR3FZCe4Z2dt5FUPE4efsxGeOWHmG315/Rktva5HfIy+6aGR t+q/IKNwG67IjT2H5MjnW0UHYU66sj2Jg5Vywx3W/Wc4DNqwu3oS8LOX1EPPqEIdfAjA UYKA== X-Gm-Message-State: ALoCoQn2oAovbux1s/08+kCBSNRXJzTV/w37xfpUmUK9svVnRxbznuDuMHf0wotfiVN8XywZw0sB X-Received: by 10.66.146.199 with SMTP id te7mr1097787pab.106.1383698085086; Tue, 05 Nov 2013 16:34:45 -0800 (PST) Received: from hater-dm.corp.yahoo.com (nat-dip4.cfw-a-gci.corp.yahoo.com. [209.131.62.113]) by mx.google.com with ESMTPSA id hu10sm37228121pbc.11.2013.11.05.16.34.43 for (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Tue, 05 Nov 2013 16:34:44 -0800 (PST) Message-ID: <52798EA3.2060407@wemm.org> Date: Tue, 05 Nov 2013 16:34:43 -0800 From: Peter Wemm User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.9; rv:24.0) Gecko/20100101 Thunderbird/24.1.0 MIME-Version: 1.0 To: John Baldwin , Gleb Smirnoff Subject: Re: svn commit: r257696 - in head: libexec/rbootd share/man/man9 sys/compat/svr4 sys/net sys/sys References: <201311051029.rA5ATmmM017799@svn.freebsd.org> <201311051447.52382.jhb@freebsd.org> <20131105204217.GK7577@FreeBSD.org> <201311051718.26356.jhb@freebsd.org> <52798A09.5020303@wemm.org> In-Reply-To: <52798A09.5020303@wemm.org> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 06 Nov 2013 00:34:46 -0000 On 11/5/13, 4:15 PM, Peter Wemm wrote: > On 11/5/13, 2:18 PM, John Baldwin wrote: >> On Tuesday, November 05, 2013 3:42:17 pm Gleb Smirnoff wrote: >>> John, >>> >>> On Tue, Nov 05, 2013 at 02:47:52PM -0500, John Baldwin wrote: >>> J> On Tuesday, November 05, 2013 2:29:04 pm Gleb Smirnoff wrote: >>> J> > On Tue, Nov 05, 2013 at 11:56:09AM -0500, John Baldwin wrote: >>> J> > J> On Tuesday, November 05, 2013 5:29:48 am Gleb Smirnoff wrote: >>> J> > J> > Author: glebius >>> J> > J> > Date: Tue Nov 5 10:29:47 2013 >>> J> > J> > New Revision: 257696 >>> J> > J> > URL: http://svnweb.freebsd.org/changeset/base/257696 >>> J> > J> > >>> J> > J> > Log: >>> J> > J> > Drop support for historic ioctls and also undefine them, >>> so that code >>> J> > J> > that checks their presence via ifdef, won't use them. >>> J> > J> >>> J> > J> Most of these are COMPAT_43, but one appears to be a 9.x >>> ioctl? If that's the >>> J> > J> case it's implementation should probably stick around under >>> appropriate >>> J> > J> COMPAT_FREEBSD macros. It looks like it goes all the way >>> back to 4.4BSD, >>> J> > J> so at least COMPAT_FREEBSD4 and later should define the >>> implementation to >>> J> > J> preserve ABI compat for old binaries. >>> J> > >>> J> > Why should we support such broken configurations as running new >>> kernel and >>> J> > ancient core base system utilities? The efforts to keep this >>> are much more >>> J> > expensive, then yields. >>> J> >>> J> Is this ioctl only ever used by ifconfig and not suitable for >>> public consumption? >>> J> If so, then I think removing it is fine. However, it's not clear >>> that this is >>> J> the case from the commit, and it's good to make sure it is really >>> the case. >>> J> >>> J> It might be nice to hide ioctls we think are internal under some >>> #ifdef that tools >>> J> like ifconfig #define to expose them so we are more explicit >>> about which ioctls >>> J> are purely internal, etc. >>> >>> Well, it isn't hidden and actually some applications as zebra/quagga >>> can use it. >>> >>> On previous hacking session at this area, 2 years ago, I noticed >>> that zebra/quagga >>> do use SIOCAIFADDR and it actually does better at filling sockaddrs >>> than our >>> ifconfig :) >>> >>> I am pretty sure that no closed source, but available to wide >>> public, application >>> that configures addresses in FreeBSD kernel exist. >>> >>> In case of open source applications, like zebra/quagga, supporting >>> one major >>> release behind should be enough. >> Mmmm, people run older versions of binaries (even open source ones) >> on newer OS's >> perhaps more often than you think. The COMPAT_43 stuff can be >> dropped certainly, >> but people will almost certainly do rolling upgrades where they >> upgrade the OS >> on their machines before they upgrade their packages. >> > This change is actually even worse than it appears. One of the key > features that was removed was the workaround for code that doesn't > know about sockaddr.sa_len. > > eg: /usr/sbin/traceroute after the change: > # traceroute www.freebsd.org > traceroute: ifaddrlist: SIOCGIFADDR: bge0: Can't assign requested address > > Hint: linux doesn't have a sa_len, so code that originates on Linux > will no longer work. The code glebius removed used to work around this. > > This is not old binaries, this is binaries compiled *today*. > I may have to take this back. I mis-read the removed code for SIOCSIFADDR etc that had the sa_len emulation in it. I might be hitting a bug in r257692 ("rewrite in_control"). I will check and report back. My apologies for potentially jumping the gun on this. -Peter