Re: Slow USB storage device?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Thu, Jan 14, 2010 at 04:28:11PM -0800, Linus Torvalds wrote:
>  - maybe blkid could be improved to not be such a pig. Even if you don't 
>    have a really slow device like mine, I bet people could see some of the 
>    same issues with a USB floppy drive.

 Fixed. Changes:
 
 ("small device" = 1024*1440 bytes)

  - don't ignore size in blkid_probe_set_device()  (-S option)
  - ignore extremely small devices (<= 1024 bytes, e.g. extended partitions)
  - don't use safe probing for small devices
  - don't probe for RAIDs on small devices
  - don't read the begin (69kB) of the device by one large read()
  - fill in the SB buffer dynamically
  - use extra buffer for FATs root dir entries (FAT FS label)
    on small devices to avoid large reads
    
 You needn't any extra option or spacial udev rule. Everything works
 by default.

 For example FAT12 on a small device:
    
  Old version:
    
  $ strace -e read blkid -p floppy.img 2>&1 | \
    awk -F ' = ' 'BEGIN {x=0} /read/ && !/.*ELF/ {x += $2} END { print x }'
  73292
    
  New version:

  $ strace -e read blkid -p floppy.img 2>&1 | \
    awk -F ' = ' 'BEGIN {x=0} /read/ && !/.*ELF/ {x += $2} END { print x }'
  8192


 I think 8192 bytes is not so bad.


 Linus, if you want to test it:

   git clone git://git.kernel.org/pub/scm/utils/util-linux-ng/util-linux-ng.git
   cd util-linux-ng
   ./autogen.sh
   ./configure
   make -C shlibs/blkid/src/
   make -C misc-utils/ blkid

   misc-utils/blkid -p /dev/sdc1   
    
 ... or I can add a test rpm package to Fedora testing repository.
 What version of Fedora are you running on the machine?

    Karel

-- 
 Karel Zak  <kzak@xxxxxxxxxx>
--
To unsubscribe from this list: send the line "unsubscribe util-linux-ng" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux Admin]     [Samba]

  Powered by Linux