Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 31 Jul 2003 21:30:00 +0200
From:      Melvyn Sopacua <freebsd-stable@webteckies.org>
To:        stable@freebsd.org
Subject:   dvd+rw-format -force problem
Message-ID:  <200307312130.00997.freebsd-stable@webteckies.org>

next in thread | raw e-mail | index | archive | help
Hi,

I haven't felt the need to fully blank a DVD+RW for a while untill today. In 
between the last time and now, I both did a cvsup of STABLE and the port of 
sysutils/dvd+rw-tools was upgraded. Hence - I'm not sure which could be 
contributed to the cause.

The problem is the following:
When issuing:
dvd+rw-format -force /dev/cd0c

it fails, with 'unable to unmount' error.
A little tracing in the source, shows that the following patch, will work - 
but is a not-so-pretty work-around:
--- transport.hxx.orig  Fri Jul 11 12:57:00 2003
+++ transport.hxx       Thu Jul 31 21:05:07 2003
@@ -483,8 +483,15 @@
       struct statfs *mntbuf;
       int            ret=0,mntsize,i;

-       if (f==-1) f=fd;
-
+       if (f==-1)
+       {
+               f=fd;
+               if (f==-1)
+               {
+                       f = open(filename, O_RDONLY|O_NONBLOCK);
+                       fd = f;
+               }
+       }
        if (fstat (f,&fsb) < 0)                         return -1;
        if ((mntsize=getmntinfo(&mntbuf,MNT_NOWAIT))==0)return -1;

The real problem here, is that the author expects, that whenever cmd.umount() 
is called without argument, fd is available.

Looking at the associate method, it only opens fd if a struct stat is given, 
which the code in dvd+rw-format.cpp:main does not do. As far as I can tell, 
the other methods called before the call to umount, also do not open fd.

Can anybody tell wether the author's expectation is wrong, or whether there's 
some other bug, since I'm not too farmiliar with both hardware programming as 
c++?

-- 
Melvyn
=======================================================
FreeBSD ghost.lan.webteckies.org 4.8-STABLE FreeBSD 4.8-STABLE #1: Tue Jul 22 
23:53:48 CEST 2003     
root@ghost.lan.webteckies.org:/usr/obj/usr/src/sys/GHOST  i386
=======================================================



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200307312130.00997.freebsd-stable>