I've got Scientific Linux 6.4 Installed (RHEL6.4) and am having trouble transferring to and from USB flash drives...

Transfer seems to hang multiple times during transfer to the device, and transfer from the device is slower than it should be (500kb/s), I think this is due to multiple hangs during this transfer too.

After quite a bit of googling I'm suspicious of this Memory Management Problem. I'm a bit dubious of the patch suggested as it may be worse than the original problem (see linked article in memory management problem).

Also, It seems this problem has been solved in a later kernel as show here. My current kernel version is 2.6.32-358.23.2.el6.x86_64. I'm not sure whether I should manually upgrade the kernel, having never done this before and I guess that a lot of the dependencies would also need upgrading from source too.

I didn't have this problem in version RHEL5 and rather than perform a fresh install, would like to fix this in 6.4. Let me know if you need more info.

  • 1
    What kind of filesystem is on the USB flash drive? This behaviour is well-known for NTFS… Try, whether the same happens, if you use another FS like ext4 on the USB flash drive. – Elias Probst Nov 30 '13 at 15:06
  • I've tried axt4 NTFS and FAT32, none of which seem to solve the problem. It's cutrrently formated to FAT32 and copying to the same drive on MacOS and Windows7 works perfectly. – mogthesprog Nov 30 '13 at 18:34
  • updated kernel using the epelrepo-kernel repository to the kernel-lt, and i still have the same problem. the current kernel-lt is 3.10.20-1.el6.elrepo.x86_64, not sure if it's worth trying the kernel-ml package... It's probably worth noting that after completely fresh install of RHEL6.4 the problem remains the same. – mogthesprog Dec 1 '13 at 13:42
  • Try to unload the USB 1.0 and USB 2.0 modules and only keep the USB 3.0 modules loaded. If you only have USB 2.0, unload the 1.0 modules and keep the 2.0. – Elias Probst Dec 1 '13 at 14:21
  • @EliasProbst I'm not entirley sure how to unload the modules. lsmod | grep <usbmodule> where usb module is either ehci-hcd or uhci-hcd just returns nothing. It seems that the modules are compiled into the kernel. As seen in /boot/config($uname -r) | grep <usbmodule>. The structure of the config file in boot is that if <config>=y then compile into kernel or if <config>=m then plugin as module. I understand the output of this file, what i'm not sure about is whether i can just change these lines of code to an "m" and then they will be loaded as modules so i can manipulate then with modprobe. – mogthesprog Dec 4 '13 at 13:36

Okay, just in case someone else seems to stumble upon this question with the same problem...

The culprit is both the 'flush' and 'sync' options on the mount command for FAT32 disks. removing these and using mount <device> <mnt-point> -o (options),async instead fixes the problem. I'm not sure whether this is a bug in the FAT module mounting module.

The memory-managment issues are not a problem in RHEL6.4...

Also, if anyone knows how i can give credit for reaching this response to @EliasProbst, that'd be great.

Marking this answered for posterity.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.