I have made a patch for /usr/share/hal/fdi/20-storage-methods.fdi to force async file transfer for vfat filesystems by commenting out flush and sync as valid options from the list.
I checked the thing, now I'm getting the old high speed USB transfer.
Do take a look at it, and comment.

--
Regards,
Nilesh Govindarajan
Facebook: http://www.facebook.com/nilesh.gr
Twitter: http://twitter.com/nileshgr
Website: http://www.itech7.com
Cheap and Reliable VPS Hosting: http://j.mp/arHk5e

--- 20-storage-methods.fdi      2010-06-11 03:17:49.000000000 +0530
+++ /usr/share/hal/fdi/policy/10osvendor/20-storage-methods.fdi 2010-06-28 
16:49:52.303623736 +0530
@@ -52,14 +52,14 @@
         <!-- allow these mount options for all file systems -->
        <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" 
string="Linux">
           <append key="volume.mount.valid_options" type="strlist">ro</append>
-          <append key="volume.mount.valid_options" type="strlist">sync</append>
+          <!--append key="volume.mount.valid_options" 
type="strlist">sync</append>
           <append key="volume.mount.valid_options" 
type="strlist">dirsync</append>
+          <append key="volume.mount.valid_options" 
type="strlist">quiet</append-->
+          <append key="volume.mount.valid_options" 
type="strlist">remount</append>
+          <append key="volume.mount.valid_options" 
type="strlist">noexec</append>
           <append key="volume.mount.valid_options" 
type="strlist">noatime</append>
           <append key="volume.mount.valid_options" 
type="strlist">nodiratime</append>
           <append key="volume.mount.valid_options" 
type="strlist">relatime</append>
-          <append key="volume.mount.valid_options" 
type="strlist">noexec</append>
-          <append key="volume.mount.valid_options" 
type="strlist">quiet</append>
-          <append key="volume.mount.valid_options" 
type="strlist">remount</append>
          <append key="volume.mount.valid_options" type="strlist">exec</append>
           <!-- As this is removable media give some leeway -->
          <append key="volume.mount.valid_options" type="strlist">utf8</append>
@@ -68,6 +68,7 @@
          <append key="volume.mount.valid_options" 
type="strlist">iocharset=</append>
          <append key="volume.mount.valid_options" 
type="strlist">umask=</append>
          <append key="volume.mount.valid_options" type="strlist">uid=</append>
+         <append key="volume.mount.valid_options" type="strlist">async</append>
        </match>
        <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" 
string="FreeBSD">
          <append key="volume.mount.valid_options" type="strlist">ro</append>
@@ -190,15 +191,15 @@
       <!-- allow these mount options for all file systems -->
       <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" 
string="Linux">
         <append key="volume.mount.valid_options" type="strlist">ro</append>
-        <append key="volume.mount.valid_options" type="strlist">sync</append>
+        <!--append key="volume.mount.valid_options" 
type="strlist">sync</append>
         <append key="volume.mount.valid_options" 
type="strlist">dirsync</append>
+        <append key="volume.mount.valid_options" 
type="strlist">quiet</append-->
+        <append key="volume.mount.valid_options" 
type="strlist">remount</append>
+        <append key="volume.mount.valid_options" type="strlist">exec</append>
         <append key="volume.mount.valid_options" 
type="strlist">noatime</append>
         <append key="volume.mount.valid_options" 
type="strlist">nodiratime</append>
         <append key="volume.mount.valid_options" 
type="strlist">relatime</append>
         <append key="volume.mount.valid_options" type="strlist">noexec</append>
-        <append key="volume.mount.valid_options" type="strlist">quiet</append>
-        <append key="volume.mount.valid_options" 
type="strlist">remount</append>
-        <append key="volume.mount.valid_options" type="strlist">exec</append>
       </match>
       <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" 
string="FreeBSD">
         <append key="volume.mount.valid_options" type="strlist">ro</append>
@@ -217,7 +218,8 @@
          <append key="volume.mount.valid_options" 
type="strlist">dmask=</append>
          <append key="volume.mount.valid_options" 
type="strlist">fmask=</append>
          <append key="volume.mount.valid_options" type="strlist">uid=</append>
-         <append key="volume.mount.valid_options" type="strlist">flush</append>
+         <!--append key="volume.mount.valid_options" 
type="strlist">flush</append-->
+         <append key="volume.mount.valid_options" type="strlist">async</append>
        </match>
        <match key="/org/freedesktop/Hal/devices/computer:system.kernel.name" 
string="FreeBSD">
          <append key="volume.mount.valid_options" 
type="strlist">longnames</append>
@@ -229,7 +231,7 @@
          <append key="volume.mount.valid_options" type="strlist">-M=</append>
          <append key="volume.mount.valid_options" type="strlist">-L=</append>
          <append key="volume.mount.valid_options" type="strlist">-D=</append>
-         <append key="volume.mount.valid_options" type="strlist">large</append>
+         <append key="volume.mount.valid_options" 
type="strlist">large</append>          
        </match>
       </match>
 

Reply via email to