Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 30 Mar 2019 05:11:07 +0000 (UTC)
From:      Paul Pathiakis <pathiaki2@yahoo.com>
To:        freebsd-questions@freebsd.org, Mayuresh Kathe <mayuresh@kathe.in>
Subject:   Re: Why very little documentation on "ifunc"?
Message-ID:  <1393052012.13903125.1553922667456@mail.yahoo.com>
In-Reply-To: <dd8f36db22c27bfd2cbdf1d406099bfa@kathe.in>
References:  <dd8f36db22c27bfd2cbdf1d406099bfa@kathe.in>

next in thread | previous in thread | raw e-mail | index | archive | help
 Hi,
Simply put, it's part of the GNU tool chain.=C2=A0 Most (if not all) of Fre=
eBSD's user space is POSIX compliant and a lot of things that are no longer=
 'optimal' have been rewritten to be more efficient.=C2=A0 As time went on,=
 it seemed to me that most everything GNU was getting well, slower and larg=
er.... and 'extended' beyond POSIX.=C2=A0 Added functionality is nice at ti=
mes, but when you expect something to work in a certain way and someone has=
 added features or written something in BASH and made use of those extensio=
ns, well, it will only run under BASH.=C2=A0 However, anything written to c=
omply with a 'standard' such as 'sh' scripting, will run on anything with s=
h as well as bash.
Extending functionality makes things non-compliant with the standard.=C2=A0=
 Examples of this in the past was Microsoft adding their extensions to JAVA=
 which made it incompatible with all other standards compliant versions of =
Java.
Another example would be the Oracle Database SQL and/or MS SQL versus the P=
OSIX compliant DB known as PostGreSQL.=C2=A0 Anything that runs on PostGreS=
QL will run under the others (well, pretty much) but the reverse is not tru=
e especially if the are proprietary extensions.

More examples would be gawk vs awk, gsed vs sed, etc.=C2=A0 The ability to =
move in both directions is no longer true.=20

 With the advent of putting in LLVM CLANG compiler, most of the GNU toolcha=
in has been put in the GCC port.=C2=A0 Now, since it is a port, a lot of 'p=
orts' and their pkg counterparts are just templated to fit into the the /us=
r/local/ hierarchy along with modifying some simple files for start/stop ma=
nipulation.=C2=A0 This includes all of the man pages that are not written b=
y FreeBSD but by the people who created the software.... for example a lot =
of the GNU utilities have man pages that just aren't as well-written as the=
 constantly reviewed man pages on FreeBSD.
Although people can be enthusiastic about writing something that they want =
the world to see, the FreeBSD project seems to be excited about churning ou=
t a good product that in all aspects exceeds most peoples expectations.=C2=
=A0 No one is scared to run a x.0 release from FreeBSD.=C2=A0 It's due to a=
n ongoing QA and Release process and the simple ability to not push out cra=
p code to meet some artificial deadline.=C2=A0 However, other OS or even ju=
st kernels from other projects scare the heck out of people on release.=C2=
=A0 The amount of bugs, exploits, etc.... are an order of magnitude or more=
.... and no, it's not because no one uses it.... If you look at who is basi=
ng their products on FreeBSD, it's pretty obvious that they are 'The Unknow=
n Giant' of operating systems.
P.

    On Friday, March 29, 2019, 11:00:55 PM EDT, Mayuresh Kathe <mayuresh@ka=
the.in> wrote: =20
=20
 Ever since I stumbled upon "ifunc" I have been unable to find good=20
enough documentation regarding it under FreeBSD, that was till "Ed=20
Maste" pointed out;=20
https://jasoncc.github.io/gnu_gcc_glibc/gnu-ifunc.html

"ifunc" seems to be a really good tool, wonder why it isn't as well=20
documented as rest of the stuff under FreeBSD.

~Mayuresh
_______________________________________________
freebsd-questions@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/freebsd-questions
To unsubscribe, send any mail to "freebsd-questions-unsubscribe@freebsd.org=
"
 =20
From owner-freebsd-questions@freebsd.org  Sat Mar 30 03:29:44 2019
Return-Path: <owner-freebsd-questions@freebsd.org>
Delivered-To: freebsd-questions@mailman.ysv.freebsd.org
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1])
 by mailman.ysv.freebsd.org (Postfix) with ESMTP id D3FEC155FF0A
 for <freebsd-questions@mailman.ysv.freebsd.org>;
 Sat, 30 Mar 2019 03:29:43 +0000 (UTC)
 (envelope-from freebsd@edvax.de)
Received: from mout.kundenserver.de (mout.kundenserver.de [212.227.126.131])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (Client CN "mout.kundenserver.de",
 Issuer "TeleSec ServerPass DE-2" (verified OK))
 by mx1.freebsd.org (Postfix) with ESMTPS id 941FC6AC68
 for <freebsd-questions@freebsd.org>; Sat, 30 Mar 2019 03:29:42 +0000 (UTC)
 (envelope-from freebsd@edvax.de)
Received: from r56.edvax.de ([92.193.229.77]) by mrelayeu.kundenserver.de
 (mreue010 [212.227.15.167]) with ESMTPA (Nemesis) id
 1N6bPS-1gsoRu0NAs-017zg0; Sat, 30 Mar 2019 04:29:40 +0100
Date: Sat, 30 Mar 2019 04:29:40 +0100
From: Polytropon <freebsd@edvax.de>
To: mayuresh@kathe.in
Cc: freebsd-questions@freebsd.org
Subject: Re: Why very little documentation on "ifunc"?
Message-Id: <20190330042940.ed91d5f6.freebsd@edvax.de>
In-Reply-To: <dd8f36db22c27bfd2cbdf1d406099bfa@kathe.in>
References: <dd8f36db22c27bfd2cbdf1d406099bfa@kathe.in>
Reply-To: Polytropon <freebsd@edvax.de>
Organization: EDVAX
X-Mailer: Sylpheed 3.1.1 (GTK+ 2.24.5; i386-portbld-freebsd8.2)
Mime-Version: 1.0
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
X-Provags-ID: V03:K1:mJiTaQMBq262PCj9z7kJ0Ph7ehxeq90mitAZyWK9XkAIXzi+Ewj
 6vQhynnIBg+2Oyc+qgdhlMHkRpqKPrjMZt8rlNZNsoJvvdKsI1i2JHuuVNvzaPP8H6WT3yU
 6nmw4dkRmQr3rxTIDYv8Wfk5HlT74G8ldhnyu6Dj74/kmtVvW/I1T/vFg38TmcQd4KQ7lZK
 VoTa/+sJeyDDnwSDmi+7g==
X-Spam-Flag: NO
X-UI-Out-Filterresults: notjunk:1;V03:K0:O3J7RupfxLM=:/8E4oMqgExlG7sEvQHFSE8
 aMgZpMInhn8S8tjBEruEjlTN6uHzyF07nj7/hcShLqZzRbiUI5etElGz42LlTSlPcNz9eccel
 N7moOHY91AHzNrExQ0epV7g84yES1+ZXS2BHIlBeghpO1hVWeEzNAytYkJouMA8x3Py/Fe2jU
 C5z0AQl6+vWnLLeaezUry4orhPQ+6JVpKfqfiHuxm3tKwt5KaxJu+ogY2TS8SjnJSxFyAGZYB
 47+HELgQlksC1PR85+OpDkH1TlAyWhCDZb/U3ESkbwvZ3BwZYogNdjhEHnWTZhO6Gk70J0s+7
 okTS7dQ6yPBfQX3y691PjMMvtJK+ybZscZ/+6rfRk4bkPPhLoQxw4yUVdtbAL8JJhHual5r8M
 TAyxkFd1bs79k6XDobDbXJN8J+qWizyQJx7jgYSr39tDqWrta8rvelOAZnOjvu/09h5aLbZz/
 wFVl5+SQeVrBULmQsJPPXFtp6yBy0TJ++lXq/Fo+VZDrj3VOwxRDebzK8g+HzUD6yVbn7Dt9h
 ORI+uB26fFKYVxEibmJQuIj2dLaJir2J/ag7rRfnLT7HGrKfJaMeAG1H6duqSjeFHwKt7iA7h
 HuKoiowrdKHv/6Oc+MNocbj3eJvQAQYcRbUXPQLqUFO/ZH0kb5OgkPvZnxZ1OWe1oFoW+afu8
 BUt7EWqeIz4km58qZsUJxEgJE4TBx7VJoVMPHA+g/9Y8p/yvJJyINtQdEiaRVP1tIVQakwsEc
 7LbpmHAV6KJ8mRG9vyNvfjw9RBqiTA2fnyAjDOTxCt3s7+Ejj0dQMsOOrgE=
X-Rspamd-Queue-Id: 941FC6AC68
X-Spamd-Bar: ++++++
Authentication-Results: mx1.freebsd.org
X-Spamd-Result: default: False [6.36 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[];
 HAS_REPLYTO(0.00)[freebsd@edvax.de]; MV_CASE(0.50)[];
 IP_SCORE(0.51)[ip: (2.29), ipnet: 212.227.0.0/16(-1.30), asn: 8560(1.59),
 country: DE(-0.01)]; TO_DN_NONE(0.00)[];
 HAS_ORG_HEADER(0.00)[];
 MX_GOOD(-0.01)[cached: mx00.schlund.de];
 RCPT_COUNT_TWO(0.00)[2];
 RECEIVED_SPAMHAUS_PBL(0.00)[77.229.193.92.zen.spamhaus.org : 127.0.0.10];
 R_DKIM_NA(0.00)[]; SUBJECT_ENDS_QUESTION(1.00)[];
 ASN(0.00)[asn:8560, ipnet:212.227.0.0/16, country:DE];
 MIME_TRACE(0.00)[0:+]; FROM_EQ_ENVFROM(0.00)[]; ARC_NA(0.00)[];
 REPLYTO_EQ_FROM(0.00)[]; FROM_HAS_DN(0.00)[];
 NEURAL_SPAM_SHORT(0.86)[0.861,0]; MIME_GOOD(-0.10)[text/plain];
 DMARC_NA(0.00)[edvax.de]; AUTH_NA(1.00)[];
 NEURAL_SPAM_MEDIUM(0.59)[0.591,0];
 TO_MATCH_ENVRCPT_SOME(0.00)[]; NEURAL_SPAM_LONG(1.00)[1.000,0];
 RCVD_IN_DNSWL_NONE(0.00)[131.126.227.212.list.dnswl.org : 127.0.5.0];
 MID_CONTAINS_FROM(1.00)[]; R_SPF_NA(0.00)[];
 RCVD_COUNT_TWO(0.00)[2]; RCVD_TLS_LAST(0.00)[]
X-Spam: Yes
X-BeenThere: freebsd-questions@freebsd.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: User questions <freebsd-questions.freebsd.org>
List-Unsubscribe: <https://lists.freebsd.org/mailman/options/freebsd-questions>, 
 <mailto:freebsd-questions-request@freebsd.org?subject=unsubscribe>
List-Archive: <http://lists.freebsd.org/pipermail/freebsd-questions/>;
List-Post: <mailto:freebsd-questions@freebsd.org>
List-Help: <mailto:freebsd-questions-request@freebsd.org?subject=help>
List-Subscribe: <https://lists.freebsd.org/mailman/listinfo/freebsd-questions>, 
 <mailto:freebsd-questions-request@freebsd.org?subject=subscribe>
X-List-Received-Date: Sat, 30 Mar 2019 03:29:44 -0000

On Sat, 30 Mar 2019 07:28:23 +0530, Mayuresh Kathe wrote:
> Ever since I stumbled upon "ifunc" I have been unable to find good 
> enough documentation regarding it under FreeBSD, that was till "Ed 
> Maste" pointed out; 
> https://jasoncc.github.io/gnu_gcc_glibc/gnu-ifunc.html
> 
> "ifunc" seems to be a really good tool, wonder why it isn't as well 
> documented as rest of the stuff under FreeBSD.

>From what I see, ifunc is part of GCC, and FreeBSD does no longer
use GCC as the system compiler (after switching to Clang/LLVM).
The case for ifunc documentation therefore has to be discussed
primarily in the context of GNU development tools.

	https://sourceware.org/glibc/wiki/GNU_IFUNC

Of course, Clang/LLVM also has (limited) support for it:

	https://clang.llvm.org/docs/AttributeReference.html#ifunc

So this is nothing FreeBSD-specific which should be covered by
OS documentation in the first place. But it could maybe find a
place in the FreeBSD Porter's Handbook.



-- 
Polytropon
Magdeburg, Germany
Happy FreeBSD user since 4.0
Andra moi ennepe, Mousa, ...



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