Brasero can't burn DVD because of permissions issue

Bug #1764096 reported by Sergey Zolotarev
54
This bug affects 11 people
Affects Status Importance Assigned to Milestone
brasero (Ubuntu)
Invalid
Undecided
Unassigned

Bug Description

When trying to burn a data project with Brasero it exits with "unknown error". In the log file it says the following:

BraseroWodim stderr: wodim: Operation not permitted. Warning: Cannot raise RLIMIT_MEMLOCK limits.
BraseroWodim called brasero_job_get_flags
BraseroWodim stderr: wodim: Resource temporarily unavailable. Cannot get mmap for 16781312 Bytes on /dev/zero.
BraseroWodim called brasero_job_get_flags
BraseroWodim stdout: TOC Type: 1 = CD-ROM
BraseroWodim stderr: HUP
BraseroWodim stdout: HUP
BraseroWodim process finished with status 11
BraseroWodim called brasero_job_error
BraseroWodim finished with an error
BraseroWodim asked to stop because of an error
 error = 0
 message = "no message"
BraseroWodim stopping
Session error : unknown (brasero_burn_record brasero-burn.c:2859)

Current user is a member of the cdrom group.

As a workaround I set setuid bit on /usr/bin/wodim, after that Brasero was able to burn the DVD.

sudo chmod +s $(which wodim)

As far as I remember DVD burning used to work on Ubuntu 17.10.

ProblemType: Bug
DistroRelease: Ubuntu 18.04
Package: brasero 3.12.1-4ubuntu2
ProcVersionSignature: Ubuntu 4.15.0-15.16-generic 4.15.15
Uname: Linux 4.15.0-15-generic x86_64
NonfreeKernelModules: nvidia_modeset nvidia
ApportVersion: 2.20.9-0ubuntu4
Architecture: amd64
CurrentDesktop: GNOME
Date: Sun Apr 15 16:23:20 2018
InstallationDate: Installed on 2018-03-17 (28 days ago)
InstallationMedia: Ubuntu 18.04 LTS "Bionic Beaver" - Alpha amd64 (20180316)
SourcePackage: brasero
UpgradeStatus: No upgrade log present (probably fresh install)

Revision history for this message
Sergey Zolotarev (szx) wrote :
Revision history for this message
Thomas Schmitt (scdbackup) wrote :

Hi,

the first message about lack of permissions is common and should be
harmless. The failure happens possibly with the attempt to get 16 MiB
of memory via call mmap(2). But it is not obvious why this only succeeds
if you are superuser.
So this might too be a red herring and the actual reason for wodim to
abort is something that is not reported.

The last messages about "HUP" probably say that wodim closed the pipes
by which it was connected to Brasero. Not necessarily the reason but
rather a consequence of the problem.

------------------------------------------------------------------------

The reason for the mmap error message is probably

  addr = mmap(0, mmap_sizeparm(size),
                        PROT_READ|PROT_WRITE, MAP_SHARED, f, 0);

where "f" points to /dev/zero.
(https://sources.debian.org/src/cdrkit/9:1.1.11-3/wodim/fifo.c/#L272)

The man page of mmap says about the error EAGAIN ("Resource temporarily
unavailable"):
  EAGAIN The file has been locked, or too much memory has been locked
         (see setrlimit(2)).

man 2 setrlimit points to prlimit(1). But running it shows no mmap specific
limiting parameter other than "MEMLOCK", which would only matter if flag
"MAP_LOCKED" was used with the mmap() call.

What do you get from this command:

  cat /proc/sys/kernel/shmmax

(Mine says 18446744073692774399. I.e. no real limit.)

What permission do you see with

  ls -ld /dev/shm

------------------------------------------------------------------------

As a workaround for non-superusers you could switch in Brasero from
the wodim plugin to the libburn plugin. It is supposed to use a slightly
different mmap() call when allocating its fifo buffer.

Have a nice day :)

Thomas

Revision history for this message
Sergey Zolotarev (szx) wrote :

cat /proc/sys/kernel/shmmax:

18446744073692774399

ls -ld /dev/shm:

drwxrwxrwt 2 root root 80 Apr 20 22:23 /dev/shm

It seems that Brasero is working now even if remove the s bit for /usr/bin/wodim, not sure why, so I guess there is nothing to fix.

Thanks.

Sergey Zolotarev (szx)
Changed in brasero (Ubuntu):
status: New → Invalid
Revision history for this message
Bruce Arnold (mrspock) wrote :

I'm experiencing the same problem with Ubuntu 18.04 release.
I tried to disable the wodim plugin but the check box is checked and gray.
I tried setting the USID bit in
/usr/share/bash-completion/conpletions/wodin but the brasero crash still occurred.
Tested on two different computers. Same symptoms.

Revision history for this message
Raul Rojas (raulrrojas) wrote :

Having the same problem today. Also tried in a second computer wich runs Fedora and the same error is showing. Looks like it is not only affecting Ubuntu.. In my case, I was trying to record an audio CD. As soon as it started it stopped with the same error (finished w/ status 11)

Revision history for this message
Raul Rojas (raulrrojas) wrote :

Forgot to inform I was using a fresh Ubuntu 18.04-

Revision history for this message
Paul (vonnahme) wrote :

FYI I ran across this in January 2019 on 18.04. In my case setting permissions on wodim (as outlined in the original bug description) fixed it for me.

Revision history for this message
jdaviescoates (josef-uniteddiversity) wrote :

I had this issue too. Installed Brasero but it wouldn't burn anything, but doing:

sudo chmod +s $(which wodim)

Fixed it for me too.

Revision history for this message
Nick Desaulniers (ndesaulniers) wrote :

Thanks!

> sudo chmod +s $(which wodim)

Worked for me, too!

Revision history for this message
Jost Schulte (jost-s) wrote :

I got this error with brasero 3.12.3-3 on Debian 12 when trying to burn an Audio CD project. Running brasero as superuser didn't work as the CD drive couldn't be found.

> sudo chmod +s $(which wodim)

resolved the issue.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.