From owner-svn-src-all@freebsd.org Fri Aug 5 06:21:33 2016 Return-Path: Delivered-To: svn-src-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id E5407BAF020; Fri, 5 Aug 2016 06:21:33 +0000 (UTC) (envelope-from jordanhubbard@me.com) Received: from pv33p03im-asmtp002.me.com (pv33p03im-asmtp002.me.com [17.143.180.11]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id C629F1744; Fri, 5 Aug 2016 06:21:33 +0000 (UTC) (envelope-from jordanhubbard@me.com) Received: from process-dkim-sign-daemon.pv33p03im-asmtp002.me.com by pv33p03im-asmtp002.me.com (Oracle Communications Messaging Server 7.0.5.38.0 64bit (built Feb 26 2016)) id <0OBF00C0081HFW00@pv33p03im-asmtp002.me.com>; Fri, 05 Aug 2016 05:21:26 +0000 (GMT) Received: from [172.20.100.193] (207-118-88-69.dyn.centurytel.net [207.118.88.69]) by pv33p03im-asmtp002.me.com (Oracle Communications Messaging Server 7.0.5.38.0 64bit (built Feb 26 2016)) with ESMTPSA id <0OBF00GWY87KS740@pv33p03im-asmtp002.me.com>; Fri, 05 Aug 2016 05:21:26 +0000 (GMT) X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:,, definitions=2016-08-05_03:,, signatures=0 X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 spamscore=0 clxscore=1011 suspectscore=0 malwarescore=0 phishscore=0 adultscore=0 bulkscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1510270003 definitions=main-1608050077 MIME-version: 1.0 (Mac OS X Mail 9.3 \(3124\)) Subject: Re: svn commit: r303755 - head/sys/kern From: Jordan Hubbard In-reply-to: <03c923dd-4161-43ea-6249-b7b2b61e660f@freebsd.org> Date: Thu, 04 Aug 2016 22:21:20 -0700 Cc: John Baldwin , Bryan Drewery , src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Message-id: <07795F0C-E421-4E7C-89FB-31D43BF563FB@me.com> References: <201608041914.u74JEIOR071062@repo.freebsd.org> <1631194.6AMpXoHEiR@ralph.baldwin.cx> <03c923dd-4161-43ea-6249-b7b2b61e660f@freebsd.org> To: Julian Elischer X-Mailer: Apple Mail (2.3124) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=me.com; s=4d515a; t=1470374486; bh=KJ5hTOim88h6wwUA2OD8os8eUmsrVliHuNpdpj5CHlk=; h=Content-type:MIME-version:Subject:From:Date:Message-id:To; b=BWlXrT51B2WLzNA6GNQ0ljUZ4wu+sRhZ80bvVrjcBkPUQtyNhUvFoiL+DW8qTNkH/ PhF3bQH9rWtgpvhXeF4noCtqme3R5+pHn058Ty5sZvcZ6H34+fAgmCim3U9C8Fcguz P+bMfMxCbxkO95KAtoKo/3Vw8Iy78EBoF4AVakCI4gkPZR5lPl/A95NktoaOhxSGkV ceusUys/t4FJGHAyJ3kRuKxCAMAGtjOdX5Z4/7LAbQzxauXppJhyKAToMymqYopFu1 V2r9J4Q3PfExnqCy6srgcUAz4wrKABvAs4weUygO+PKCx2YfM/tJD1L20VmLDemyvL N93ZcxnQlf1WQ== Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.22 X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 Aug 2016 06:21:34 -0000 > On Aug 4, 2016, at 10:06 PM, Julian Elischer = wrote: >=20 > personally I'd rather we drove a stake through the heart of symbol = versioning and > went back to how it was, when one could work out what was going on. > I certainly miss the ability to get the openssl package to overwrite = the base one, > which I'm told is no longer possible due to versioning. That seems unlikely to be a strategy for long-term success given all of = the opportunities for *unintentional* overwriting of symbols. In other = words, it=92s great when it works for you. It sucks when it works = against you. That said, in OS X, Solaris-style symbol versioning didn=92t really = yield a lot of dividends and turned out to be a far-too-granular way of = permuting APIs over time. What tended to happen instead was that = symbols got renamed through header hacks (=93aliasing=94) and the old = binaries simply continued to work by calling different versions of = function X (newly compiled applications talking to the new = implementation). What HAS yielded a lot of dividends in OS X is a two-level namespace for = all symbols. To quote the Apple docs: "The two-level namespace feature = of OS X v10.1 and later adds the module name as part of the symbol name = of the symbols defined within it. This approach ensures a module=92s = symbol names don=92t conflict with the names used in other modules.=94 This prevents other problems and allows you to move symbols around = en-masse in refactoring exercises rather than having to version them. = If FreeBSD is genuinely =93fed up=94 with ELF symbol versioning, I might = suggest that other alternatives be explored rather than simply going = back to the Bad Old Days because they were more predictable. - Jordan