Bug 174776 - app-text/dos2unix-3.1-r1: rename() fails with errno = EXDEV
Bug#: 174776 Product:  Gentoo Linux Version: unspecified Platform: All
OS/Version: Linux Status: RESOLVED Severity: minor Priority: P2
Resolution: FIXED Assigned To: shell-tools@gentoo.org Reported By: toralf.foerster@gmx.de
Component: Applications
URL: 
Summary: app-text/dos2unix-3.1-r1: rename() fails with errno = EXDEV
Keywords:  
Status Whiteboard: 
Opened: 2007-04-16 09:42 0000
Description:   Opened: 2007-04-16 09:42 0000
Today I got:

tfoerste@n22 ~/tmp $ dos2unix /mnt/D/tlm/BlueBaseAll.csv
dos2unix: converting file /mnt/D/tlm/BlueBaseAll.csv to UNIX format ...
dos2unix: problems renaming './u2dtmp7YQkeu' to '/mnt/D/tlm/BlueBaseAll.csv'
          output file remains in './u2dtmp7YQkeu'
dos2unix: problems converting file /mnt/D/tlm/BlueBaseAll.csv


The filesystem . is of type ext3 whereas /mnt/D/ is a mounted FAT file system.


Reproducible: Always




tfoerste@n22 ~/tmp $ emerge --info
Portage 2.1.2.2 (default-linux/x86/2006.1, gcc-3.4.6, glibc-2.5-r0,
2.6.19-gentoo-r5 i686)
=================================================================
System uname: 2.6.19-gentoo-r5 i686 Intel(R) Pentium(R) M processor 1700MHz
Gentoo Base System release 1.12.9
Timestamp of tree: Mon, 16 Apr 2007 06:20:01 +0000
ccache version 2.4 [enabled]
dev-java/java-config: 1.3.7, 2.0.31-r5
dev-lang/python:     2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
sys-apps/sandbox:    1.2.17
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.16.1-r3
sys-devel/gcc-config: 1.3.15-r1
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.17-r2
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-O2 -march=pentium-m -fomit-frame-pointer -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config
/usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf
/etc/java-config/vms/ /etc/php/apache1-php5/ext-active/
/etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/
/etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-O2 -march=pentium-m -fomit-frame-pointer -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks metadata-transfer parallel-fetch sandbox sfperms
strict"
GENTOO_MIRRORS="http://85.25.128.62 http://gentoo.mneisen.org/
http://gentoo.prz.rzeszow.pl http://194.117.143.72/"
LINGUAS="de en"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress
--force --whole-file --delete --delete-after --stats --timeout=180
--exclude=/distfiles --exclude=/local --exclude=/packages
--filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.de.gentoo.org/gentoo-portage"
USE="X aac acpi alsa apache2 arts asf berkdb bitmap-fonts bluetooth bzip2 cairo
cddb clamav cli cracklib crypt css cups dri dvd dvdr dvdread dynamicplugin exif
fam fastbuild fortran gd gdbm gif gpm gtk gtk2 hdaps i8x0 iconv ipv6 isdnlog
jai java javascript jimi jpeg libg++ logrotate madwifi mbox midi mikmod mmx
mmxext mp3 mp4 mysql ncurses nls no-seamonkey nptl nptlonly nsplugin opengl pam
pcre pdf perl png ppds pppd python rdesktop readline real reflection rtc samba
session spl sse sse2 ssl subversion svg tcpd tiff truetype truetype-fonts
type1-fonts unicode userlocales win32codecs x86 xml xorg xpm zlib"
ALSA_CARDS="intel8x0 intel8x0m" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix
dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter
mulaw multi null plug rate route share shm softvol" CAMERAS="sonydscw50 ptp2"
ELIBC="glibc" INPUT_DEVICES="keyboard mouse joystick evdev" KERNEL="linux"
LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses
text" LINGUAS="de en" USERLAND="GNU" VIDEO_CARDS="vga radeon"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS,
PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

------- Comment #1 From Peter Volkov 2007-04-16 20:09:08 0000 -------
Although it's possible to write patch (I've already did that ;) ) for the
problem which will handle case of errno == EXDEV and copy contents of
./u2dtmp7YQkeu into /mnt/D/tlm/BlueBaseAll.csv is that actually necessary? cd
/mnt/D/tlm/ && dos2unix BlueBaseAll.csv will better fix the problem... vapier,
what do you think about this?

------- Comment #2 From Peter Volkov 2007-04-17 18:33:13 0000 -------
Created an attachment (id=116540) [details]
Patch to fix the problem.

I decided on simpler solution. This patch just mkstem file based on initial
file name and thus it resides in the same device and hence rename works.
Toralf, try this patch.

If there will be no objections from shell-tools, I'll commit patch this
weekend.

------- Comment #3 From Toralf Förster 2007-04-18 09:07:49 0000 -------
works fine :-)

------- Comment #4 From Peter Volkov 2007-05-01 17:01:19 0000 -------
fixed in dos2unix-3.1-r2.