Is anyone else getting āInput/output errorā when transferring data between two external drives? Iāve hoped the issues regarding IO errors were fixed in kernel 5.3 for Amlogic devicesā¦ Iām on 5.3.0-rc6-aml-g12 so perhaps I should give the final version a try.
To Khadas devs: Have other with VIM3 reported Input/output error? Especially those using khadas-vims-4.9.y which you maintain on GH, @numbqq. This was one of the main reasons for why I bought a VIM3 instead of the cheaper ODROID-N2 as Hardkernel have had massive issues regarding this (https://forum.odroid.com/viewtopic.php?f=181&t=35031).
Update:
Changing /sys/class/block/?d?/queue/max_sectors_kb from the value of 1024 to 32 still trigger the error.
My setup is as follows: A VIM3 with a ORICO Mini USB 3.0 HUB 4 Port connected to a Rocketek usb 3.0 multi Smart memory card reader with a mSD card inserted and a Seagate Expansion Desktop. Both the ORICO USB HUB and Seagate HDD are powered with an external power supply.
I canāt seem to find the patch in Kernel 5.3 patch notesā¦ So I suppose it isnāt merged yet. Iāve asked balbes if he can include the patch into the next build with Armbian. I highly advice the Khadas team to look into this as it should also affect others using kernel 4.9.
If I try to copy a file from my mSD to my Seagate HDD either with the simple cp command (cp /mnt/mSD/file1 /mnt/usb/) or using mc (midnight commander), Iām facing the error. Iāve never had any issues with this on my RPi, but this is the first time Iāve been using the USB3 interface, which allows much higher speeds.
Example: Copying a 20GB file from my mSD to my HDD I hit over 70 MB/s and after 4-7 seconds, everything halt and then I get the error. The error is likely related to high speeds over USB3 interface as seen from Hardkernel forums. So in order to reproduce this, youāll need a USB3 hub and that all devices use USB3 to get high enough speeds to trigger this. If you follow some of the steps which people recommend over at Hardkernelās forum, Iām sure you should be able to reproduce this. This should also affect VIM3_Ubuntu-server-bionic_Linux-4.9_arm64_EMMC_V20190830 builds etc.
@Frank, I recommend contacting Amlogic too as they created the patch for Hardkernel and theirās ODROID-N2 to fix the IO issue for meson-g12b (he.he <he.he@amlogic.com signed the patch).
Everything has to be USB3.0. You should at least read disk A at 100 MB/s and write to disk B at 70+ MB/s simultaneously. Use rsync which shows current speed
rsync -a --info=progress2 src/ dest/
Iāve not tested dummy files created by dd, but they should as well trigger this error. So test different dummy files from 1 GB to 50 GB.
Iāll do some more testing as soon @balbes150 has included the XHCI patch into his next Armbian build
If the patch does not solve this Iāll try the USB2 port on my VIM3 to see if the USB2 interface is affected as well. Iāve not tested USB2 yet as it should be fine. Time will tell.
Update: @Frank, if you get the same error as I did, you need to try the patch dwc3/core: xHCI host not responding to stop endpoint command which solved the issue for me as Iām now able to copy/move files between two drives over USB3.0 interface simultaneously. The patch should be added to the vendor kernel Khadas use for VIMs to prevent others from facing the same issue. The patch will eventually be merged upstream into mainline if either Amlogic or Hardkernel follow it up. More info at Hardkernels forum.
@balbes150 I didnāt delete it, but I changed the content of the document. Do you think there is something wrong with the document now? If you tell me where, I donāt see any mistakes in this revised document.
@Frank, have you done any further testing over the USB3.0 interface?
At least the xHCI patch Amlogic made for Hardkernel and Odroid-N2 fixed the issue for me. More information about it in my last post. balbes150 has included the patch into his Github repository 150balbes/Amlogic_s905-kernel with his latest commit v20190918. So meson-g12 users wonāt be affected by the issue anymore
You need to remove the reference LE and Armbian from this page. The description on this page does not match the currently used system startup LE and Armbian (this misleads users).
Iāve to agree with balbes here as it is not necessary to example copy the appropriate DTB file as the script uses the DTB name in /extlinux/extlinux.conf and/or uEnv.ini which the user has to type in to boot Armbian / LE.
What I recommend is to split up and add a new section for LE and Armbian on the same page with the complete guide I posted earlier. You are free to use it and do any modifications as you want. Here is the post: Complete step-by-step guide for installing Armbian / LE
Iām not sure why you are testing a meson-gxl device (VIM1) when Iāve a meson-g12 device (VIM3) and clearly point out that Amlogic has fixed this for Hardkernel and theirs Odroid-N2ā¦ Have you read some of the posts at Hardkernels forum regarding this issue?
I can confirm that the xHCL patch provided by Amlogic devs fixed the issue for me on my VIM3 as well. However, itās not 100% perfectly fine as it seems that every first time I copy/move files from one ext. device to a new ext. device the transfer halts after some seconds before it continues (before the patch it triggered the IO error). Balbes150 has included the patch into his GH repository with the latest commit v20190918, so Armbian users with a meson-g12 wonāt be affected of this further.
I suggest that you devs do some proper testing for meson-g12 devices with the latest vendor kernel - which Iāve not tested. I would recommend contacting Amlogic to hear from them as they made this patch for Hardkernel, which is also fixing the problem for VIM3.