[OpenAFS] why linux sysnames are different

Avinesh Kumar avinesh@gmail.com
Wed, 2 Jan 2008 17:30:12 -0500


------=_Part_44287_7655901.1199313012461
Content-Type: text/plain; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hi,

Right ! it should be based on GLIBC major version number rather than
the suggestion i386_rhel[45], being fair to other distribution as well :-)

    ~avinesh

On Jan 2, 2008 5:21 PM, Derrick Brashear <shadow@gmail.com> wrote:

> Historical accident. It should be based on the GLIBC version, but it's
> not.
>
> On Jan 2, 2008 5:14 PM, Avinesh Kumar <avinesh@gmail.com> wrote:
>
> > Hi,
> >
> > I want to know why the sysnames for Linux platform are named diffrently
> > than it is done for other platforms. On Linux we have sysnames,
> > i386_linux24,
> > i386_linux26 etc which is named after kernel version whereas the same is
> >
> > done after OS version like rs_aix52, rs_aix53, sun4x_59, sun4x_510 etc
> > for
> > other platforms.
> >
> > According to the AFS semantics, the binaries under a sysname should be
> > able to run on all systems with the same sysname, if I am right.
> >
> > However, considering Linux here, OS versions can get significant changes
> > over time and we may not be advanced to 2.8.x kernel. So in this case,
> > sysname would still be same 'i386_linux26' but the binaries may not run
> > across.
> >
> > Considering the changes done in ELF format replacing SHT_HASH section
> > by SHT_GNU_HASH, the binaries built (with default options) on RHEL-5
> > would not
> > work on RHEL-4, both happen to have 2.6.x kernel.
> >
> >
> > So If a user builds his program "bigtest" on RHEL5 and puts it under
> > @sys area
> > and tries to run the same from RHEL4, which would point to the same
> > binary, and
> > this would not work.
> >
> > As of now, the RHEL-5 user should make use of linker option
> > "-Wl,--hash-style=sysv"
> > if he plans to put under @sys directory.
> >
> > Please correct me if I am wrong.
> >
> > Thanks.
> >
> >
> >    ~avinesh
> >
>
>

------=_Part_44287_7655901.1199313012461
Content-Type: text/html; charset=ISO-8859-1
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hi,<br><br>Right ! it should be based on GLIBC major version number rather than<br>the suggestion i386_rhel[45], being fair to other distribution as well :-)<br><br>&nbsp;&nbsp;&nbsp; ~avinesh<br><br><div class="gmail_quote">On Jan 2, 2008 5:21 PM, Derrick Brashear &lt;
<a href="mailto:shadow@gmail.com">shadow@gmail.com</a>&gt; wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div class="Ih2E3d">Historical accident. It should be based on the GLIBC version, but it&#39;s not.
<br><br></div><div class="gmail_quote"><div class="Ih2E3d">On Jan 2, 2008 5:14 PM, Avinesh Kumar &lt;<a href="mailto:avinesh@gmail.com" target="_blank">avinesh@gmail.com</a>&gt; wrote:<br>
</div><div><div></div><div class="Wj3C7c"><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">Hi,<br><br>I want to know why the sysnames for Linux platform are named diffrently
<br>than it is done for other platforms. On Linux we have sysnames, i386_linux24,
<br>i386_linux26 etc which is named after kernel version whereas the same is 
<br>done after OS version like rs_aix52, rs_aix53, sun4x_59, sun4x_510 etc for<br>other platforms.<br><br>According to the AFS semantics, the binaries under a sysname should be<br>able to run on all systems with the same sysname, if I am right.
<br><br>However, considering Linux here, OS versions can get significant changes<br>over time and we may not be advanced to 2.8.x kernel. So in this case, <br>sysname would still be same &#39;i386_linux26&#39; but the binaries may not run across.
<br><br>Considering the changes done in ELF format replacing SHT_HASH section<br>by SHT_GNU_HASH, the binaries built (with default options) on RHEL-5 would not<br>work on RHEL-4, both happen to have 2.6.x kernel. <br><br>


<br>So If a user builds his program &quot;bigtest&quot; on RHEL5 and puts it under @sys area<br>and tries to run the same from RHEL4, which would point to the same binary, and<br>this would not work.<br><br>As of now, the RHEL-5 user should make use of linker option &quot;-Wl,--hash-style=sysv&quot;
<br>if he plans to put under @sys directory.<br><br>Please correct me if I am wrong.<br><br>Thanks.<br><font color="#888888"><br><br>&nbsp;&nbsp; ~avinesh<br>
</font></blockquote></div></div></div><br>
</blockquote></div><br>

------=_Part_44287_7655901.1199313012461--