<html>
    <head>
      <base href="https://bugs.freedesktop.org/" />
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW --- - pulseaudio won't run when home directory is mounted with CIFS"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=71649">71649</a>
          </td>
        </tr>

        <tr>
          <th>CC</th>
          <td>lennart@poettering.net
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>pulseaudio-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>pulseaudio won't run when home directory is mounted with CIFS
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>pulseaudio-bugs@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>normal
          </td>
        </tr>

        <tr>
          <th>Classification</th>
          <td>Unclassified
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>maarten256@hotmail.com
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>x86 (IA32)
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>core
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>PulseAudio
          </td>
        </tr></table>
      <p>
        <div>
        <pre>I'm fairly sure this is a duplicate of an existing bug as I'm not the first to
experience this issue... However I have not been able to find a record of this
bug on Bugzilla.

When a user's home directory is crossmounted on a linux machine from another
host using CIFS, pulseaudio will not start as pulseaudio cannot set the
necessary permissions on the .config/pulse directory (CIFS doesn't allow
permissions).

I have put together a quick fix that tests whether the filesystem is a CIFS
filesystem, and returns early from the procedure "pa_make_secure_dir" to
prevent pulseaudio to fail:

--- core-util.c    2013-11-14 23:05:47.709911713 -0500
+++ core-util.c.orig    2013-11-14 23:10:28.314384314 -0500
@@ -37,7 +37,6 @@
 #include <ctype.h>
 #include <sys/types.h>
 #include <sys/stat.h>
-#include <sys/vfs.h>
 #include <dirent.h>

 #ifdef HAVE_LANGINFO_H
@@ -224,7 +223,6 @@
  * already exist, however. */
 int pa_make_secure_dir(const char* dir, mode_t m, uid_t uid, gid_t gid, bool
update_perms) {
     struct stat st;
-    struct statfs stfs;
     int r, saved_errno;
     bool retry = true;

@@ -283,14 +281,6 @@
     if (!update_perms)
         return 0;

-    if (fstatfs(fd, &stfs) < 0) {
-        pa_assert_se(pa_close(fd) >= 0);
-        goto fail;
-    }
-
-    if (stfs.f_type == 0xFF534D42)
-        return 0;
-
 #ifdef HAVE_FCHOWN
     if (uid == (uid_t) -1)
         uid = getuid();

I have tested this on my installation (Linux Mint 14 32-bit) and it appears to
work. I don't know how to submit the fix properly so I'm hoping somebody will
see this and help guide me on this.</pre>
        </div>
      </p>
      <hr>
      <span>You are receiving this mail because:</span>
      
      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>