Wind River Support Network

HomeDefectsLIN6-9870
Fixed

LIN6-9870 : wrlinux6, inetutils's rcp tool fails for the filesize 2GB+

Created: May 7, 2015    Updated: Dec 3, 2018
Resolved Date: Jun 17, 2015
Found In Version: 6.0.0.18
Fix Version: 6.0.0.22
Severity: Standard
Applicable for: Wind River Linux 6
Component/s: Userspace

Description

Customer found that when they use the inetutils rcp tool with file larger than 2G, it will failed with lose connection. Here is the customer's log:
-----------------
root@shining:/tmp # rcp -JU __juniper_private5__ file1.img 192.168.1.2:/tmp/ root@shining:/tmp # dd if=/dev/zero of=file2.img bs=4M count=512
512+0 records in
512+0 records out
2147483648 bytes transferred in 2.716057 secs (790662198 bytes/sec) root@shining:/tmp # rcp -JU __juniper_private5__ file2.img 192.168.1.2:/tmp/
rcp: lost connection

So, it looks like 2G is indeed the threshold. Lower sizes seems to work.
-------------- 

Customer found that in the netkit-rsh-0.17, redhat fixed a bug when dealing with file larger than 2G.
Here is the link for the fix:
https://bugzilla.redhat.com/show_bug.cgi?id=67362 

I checked the latest RCPL 18 inetutils source, I found that the large file support is not enabled by the package configure process.
In the build/inetutils/inetutils-1.9.1/config.h, I can see the _FILE_OFFSET_BITS and _LARGEFILE_SOURCE are not defined.

It seems that wrlinux6's inetutils can't support large file, so the rcp failed when dealing with file size 2G+.
From the config.log in the build/inetutils/inetutils-1.9.1/config.log:
---------------------------------------------------------------------------------
configure:7735: checking for _LARGEFILE_SOURCE value needed for large files
configure:7754: x86_64-wrs-linux-gcc  -m64  --sysroot=/wrlinux6_x86-64-ovp/bitbake_build/tmp/sysroots/intel-x86-64 -o conftest -O2 -pipe -g -feliminate-unused-debug-types  -Wl,-O1 -Wl,--hash-style=gnu conftest.c  >&5
configure:7754: $? = 0
configure:7782: result: no
configure:7810: checking for special C compiler options needed for large files
configure:7855: result: no
configure:7861: checking for _FILE_OFFSET_BITS value needed for large files
configure:7886: x86_64-wrs-linux-gcc  -m64  --sysroot=/wrlinux6_x86-64-ovp/bitbake_build/tmp/sysroots/intel-x86-64 -c -O2 -pipe -g -feliminate-unused-debug-types  conftest.c >&5
configure:7886: $? = 0
configure:7918: result: no
----------------------------------------------------------------------------------

Would you please check with this issue, to see if this should be fixed in WRlinux6?

Steps to Reproduce

1. customer's project configure options:
/opt/WRLX6/wrlinux-6/wrlinux/configure --enable-board=intel-x86-64 --enable-kernel=preempt-rt --enable-rootfs=ovp-kvm --enable-addons=wr-ovp --enable-sdkimage-staticlibs=yes --with-template=feature/kvm,feature/benchmark,feature/debug,feature/gdb,feature/kdump,feature/kexec,feature/kernel-debug,feature/kernel-tune,feature/build_libc --enable-parallel-pkgbuilds=4 --enable-jobs=4 --enable-checkout-all-layers=yes --with-package=wrs-kvm-helper,qemu,libvirt,libvirt-libvirtd,libvirt-virsh,kernel-module-kvm,kernel-module-kvm-intel,kernel-module-kvm-amd,bridge-utils --enable-rm-oldimgs=yes --enable-internet-download=yes --enable-reconfig --with-init=systemd --with-rcpl-version=0018

I think it's no related with the OVP, so configure a base wrlinux6 project should be the same.

2. rcp with file less than 2G size:
root@shining:/tmp # rcp -JU __juniper_private5__ file1.img 192.168.1.2:/tmp/ root@shining:/tmp # dd if=/dev/zero of=file2.img bs=4M count=512
512+0 records in
512+0 records out
2147483648 bytes transferred in 2.716057 secs (790662198 bytes/sec) 

rcp with file more than 2G size:
root@shining:/tmp # rcp -JU __juniper_private5__ file2.img 192.168.1.2:/tmp/
rcp: lost connection

Other Downloads


Live chat
Online