Burning CDs in linux

Charles Steinkuehler charles at steinkuehler.net
Tue Jun 29 18:27:49 CDT 2004


HELP!!

I've burned CD's in linux before with great success, but I've upgraded 
my hardware and am beginning to have speed problems.  Previously, the 
fastest burner I had was 16x, which worked fine at full speed as long as 
DMA was enabled.

I've recently purchased a Plextor 712A, which will burn CDs at up to 48X 
(along with DVDs at up to 12X, but one thing at a time!).  When running 
cdrecord, I now have to enable 'burnproof' to prevent making coasters, 
and I never seem to be able to write at more than about 25-28x.

Dma *IS* enabled:
naibed:~# cat /proc/ide/hda/settings
name                value           min             max             mode
----                -----           ---             ---             ----
breada_readahead    4               0               127             rw
current_speed       66              0               70              rw
dsc_overlap         0               0               1               rw
file_readahead      0               0               2097151         rw
init_speed          12              0               70              rw
io_32bit            1               0               3               rw
keepsettings        0               0               1               rw
max_kb_per_request  64              1               127             rw
nice1               1               0               1               rw
number              0               0               3               rw
pio_mode            write-only      0               255             w
slow                0               0               1               rw
unmaskirq           1               0               1               rw
using_dma           1               0               1               rw

The data is coming off a SATA drive (mounted as /tmp...no other system 
activity to this drive) which should have more than enough bandwidth 
(53M/s reads):

#  bonnie++ -u root -d /tmp
Version 1.03 ------Sequential Output------ --Sequential Input- --Random-
              -Per Chr- --Block-- -Rewrite- -Per Chr- --Block-- --Seeks--
Machine Size K/sec %CP K/sec %CP K/sec %CP K/sec %CP K/sec %CP  /sec %CP
naibed    1G 12878  67 41023   8 22196   4 19980  70 53342   8 238.4   0
              ------Sequential Create------ --------Random Create--------
              -Create-- --Read--- -Delete-- -Create-- --Read--- -Delete--
        files  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP  /sec %CP
           16 11134  19 +++++ +++  5433  11  4758  26 +++++ +++  1942   8

The system is a 2.4G Athlon on an Asus A7N8X (NForce2) motherboard, with 
the burner hooked up as the primary PATA master, and 4 SATA 160G drives 
hooked to a promise TX4 controller (on-board SATA controller is diabled 
via jumper).  I'm running debian-testing (sarge) with the stock debian 
kernel: 2.4.26-1-386.

The only kind of odd thing I'm doing is using the ATA support in 
cdrecord to talk to the burner rather than SCSI emulation (I was having 
problems getting that going...apparently I don't yet fully understand 
the interaction of the new libata and the "hda=scsi" kernel command line 
parameter).  The actual cdrecord command I'm using:

cdrecord dev=ATAPI:0,0,0 driveropts=burnfree speed=48 -dao -v image.iso

..after which I get a report typically listing ~30 predicted buffer 
underruns that were prevented.

It seems like this system ought to be fast enough to burn at 48x without 
any buffer underruns...any suggestions for settings I can tweak or other 
tests I can run?

-- 
Charles Steinkuehler
charles at steinkuehler.net




More information about the Kclug mailing list