On 02/13/2016 12:32 PM, Alex McWhirter wrote:
> On 02/13/2016 06:25 AM, Mike Frysinger wrote:
>> On 13 Feb 2016 04:26, Alex McWhirter wrote:
>>> Well, time for more fun
>>>
>>> Copying over the 3.4.14 kernel from the install cd will make rsync work.
>>>
>>> Kernel 4.1.12 rsync is dead
>>> Kernel 4.1.15 rsync is dead
>>>
>>> Since all sparc profiles use a 64bit kernel i would be heavily
>>> interested in what kernel / options you are running.
>> Linux bender 3.17.2 #2 SMP Tue Nov 11 18:56:20 UTC 2014 sparc64 sun4v UltraSparc T1 (Niagara) GNU/Linux
>>
>> [ 0.000000] Linux version 3.17.2 (root@bender) (gcc version 4.7.3 (Gentoo 4.7.3-r1 p1.5, pie-0.5.5) ) #2 SMP Tue Nov 11 18:56:20 UTC 2014
>>
>> config is attached
>>
>>> Using the kernel config from the CD on a newer kernel still results in a
>>> broken rsync. So the kernel is either broken somehow or there's an
>>> option somewhere that genkernel, the cd config, and myself are missing.
>> or the toolchain is unhappy
>> -mike
> It's fairly likely that you will break rsync as well if you upgrade to a
> 4.X kernel as i have experienced this with an official install on
> another box. I'm working on building a 3.14 kernel with a newer
> toolchain to see what happens. 4.4.1 still has this issue, i may try
> vanilla sources as well after 3.14.
>
> I suppose its also likely that this could be a bug in rsync as well that
> may have been relying on a bug in older kernels which was later fixed.
> But this is all speculation at this point.
>
3.14.58 works fine when built with the latest toolchain. I had to use
the CD config, as genkernel doesn't have correct sparc settings and i
didn't feel like manually configuring it just to see if rsync worked
afterwards. The fun part will be finding which exact kernel introduced
the breakage, or perhaps it could be an rsync bug as the rest of the
system works fine on newer kernels. Even if it is an issue with rsync,
finding the kernel the breaks this functionality might help narrow down
the issue.
It looks like were dying on a select syscall. My only thought is that
maybe rsync is opening what it thinks is the correct file descriptor,
but it's actually getting a different file descriptor. It could be
requesting the wrong file descriptor entirely. Again, more speculation
at this point. My experience with strace / gdb is somewhat limited as i
come from a Solaris / BSD background.
Attached is the strace log from doing "rsync -a /usr/portage/*
/root/portage"
> On 02/13/2016 06:25 AM, Mike Frysinger wrote:
>> On 13 Feb 2016 04:26, Alex McWhirter wrote:
>>> Well, time for more fun
>>>
>>> Copying over the 3.4.14 kernel from the install cd will make rsync work.
>>>
>>> Kernel 4.1.12 rsync is dead
>>> Kernel 4.1.15 rsync is dead
>>>
>>> Since all sparc profiles use a 64bit kernel i would be heavily
>>> interested in what kernel / options you are running.
>> Linux bender 3.17.2 #2 SMP Tue Nov 11 18:56:20 UTC 2014 sparc64 sun4v UltraSparc T1 (Niagara) GNU/Linux
>>
>> [ 0.000000] Linux version 3.17.2 (root@bender) (gcc version 4.7.3 (Gentoo 4.7.3-r1 p1.5, pie-0.5.5) ) #2 SMP Tue Nov 11 18:56:20 UTC 2014
>>
>> config is attached
>>
>>> Using the kernel config from the CD on a newer kernel still results in a
>>> broken rsync. So the kernel is either broken somehow or there's an
>>> option somewhere that genkernel, the cd config, and myself are missing.
>> or the toolchain is unhappy
>> -mike
> It's fairly likely that you will break rsync as well if you upgrade to a
> 4.X kernel as i have experienced this with an official install on
> another box. I'm working on building a 3.14 kernel with a newer
> toolchain to see what happens. 4.4.1 still has this issue, i may try
> vanilla sources as well after 3.14.
>
> I suppose its also likely that this could be a bug in rsync as well that
> may have been relying on a bug in older kernels which was later fixed.
> But this is all speculation at this point.
>
3.14.58 works fine when built with the latest toolchain. I had to use
the CD config, as genkernel doesn't have correct sparc settings and i
didn't feel like manually configuring it just to see if rsync worked
afterwards. The fun part will be finding which exact kernel introduced
the breakage, or perhaps it could be an rsync bug as the rest of the
system works fine on newer kernels. Even if it is an issue with rsync,
finding the kernel the breaks this functionality might help narrow down
the issue.
It looks like were dying on a select syscall. My only thought is that
maybe rsync is opening what it thinks is the correct file descriptor,
but it's actually getting a different file descriptor. It could be
requesting the wrong file descriptor entirely. Again, more speculation
at this point. My experience with strace / gdb is somewhat limited as i
come from a Solaris / BSD background.
Attached is the strace log from doing "rsync -a /usr/portage/*
/root/portage"