This is common haldaemon problem.
To get report whether hald identifies your pendrive:
user@host--$: lshal | grep 'Kingston'
user@host--$: lshal [to get everything what your haldaemon currently handles.]
to find out what problem hald cannot handle use this command:
root@host--#: /usr/sbin/hald --daemon=no --verbose=yes
then try to use your pendrive copying whatever: hald should report to you if it is having any problem.
This thing really bugged my head before and almost got me discouraged until I understood a little about dbus.
also read hald manual:
user@host--$: man hald
user@host--$: man hal-set-property
one stupid shortcut solution i did was to make my username as a member of following groups: haldaemon (or hald), messagebus and plugdev. It solved everything soon, but it made a big hole of security.
there are better advice we can get soon as better heads come here.
hope this helps mean time.