Index: /trunk/src/VBox/Main/include/AudioDriver.h
===================================================================
--- /trunk/src/VBox/Main/include/AudioDriver.h	(revision 70543)
+++ /trunk/src/VBox/Main/include/AudioDriver.h	(revision 70544)
@@ -25,19 +25,22 @@
 
 /**
- * Audio driver configuration for audio drivers implemented 
- * in Main. 
+ * Audio driver configuration for audio drivers implemented
+ * in Main.
  */
 struct AudioDriverCfg
 {
-    AudioDriverCfg(Utf8Str a_strDev = "", unsigned a_uInst = 0, unsigned a_uLUN = 0)
+    AudioDriverCfg(Utf8Str a_strDev = "", unsigned a_uInst = 0, unsigned a_uLUN = 0,
+                   Utf8Str a_strName = "")
         : strDev(a_strDev)
         , uInst(a_uInst)
-        , uLUN(a_uLUN) { }
+        , uLUN(a_uLUN)
+        , strName(a_strName) { }
 
     AudioDriverCfg& operator=(AudioDriverCfg that)
     {
-        this->strDev = that.strDev;
-        this->uInst  = that.uInst;
-        this->uLUN   = that.uLUN;
+        this->strDev  = that.strDev;
+        this->uInst   = that.uInst;
+        this->uLUN    = that.uLUN;
+        this->strName = that.strName;
 
         return *this;
@@ -51,4 +54,6 @@
      *  Set the UINT8_MAX if not attached. */
     unsigned             uLUN;
+    /** The driver name. */
+    Utf8Str              strName;
 };
 
@@ -69,5 +74,5 @@
     AudioDriverCfg *GetConfig(void) { return &mCfg; }
 
-    Console *GetParent(void) { return mpConsole; }    
+    Console *GetParent(void) { return mpConsole; }
 
     bool IsAttached(void) { return mfAttached; }
@@ -82,9 +87,9 @@
 
     /**
-     * Optional (virtual) function to give the derived audio driver 
-     * class the ability to add more driver configuration entries when 
+     * Optional (virtual) function to give the derived audio driver
+     * class the ability to add more driver configuration entries when
      * setting up.
-     * 
-     * @param pLunCfg           CFGM configuration node of the driver.    
+     *
+     * @param pLunCfg           CFGM configuration node of the driver.
      */
     virtual void configureDriver(PCFGMNODE pLunCfg) { RT_NOREF(pLunCfg); }
Index: /trunk/src/VBox/Main/src-client/AudioDriver.cpp
===================================================================
--- /trunk/src/VBox/Main/src-client/AudioDriver.cpp	(revision 70543)
+++ /trunk/src/VBox/Main/src-client/AudioDriver.cpp	(revision 70544)
@@ -94,5 +94,6 @@
         pCfg->uLUN = pThis->getFreeLUN();
 
-    LogFunc(("strDevice=%s, uInst=%u, uLUN=%u\n", pCfg->strDev.c_str(), pCfg->uInst, pCfg->uLUN));
+    LogFunc(("strName=%s, strDevice=%s, uInst=%u, uLUN=%u\n",
+             pCfg->strName.c_str(), pCfg->strDev.c_str(), pCfg->uInst, pCfg->uLUN));
 
     vrc = pThis->Configure(pCfg, true /* Attach */);
@@ -105,5 +106,5 @@
     }
     else
-        LogRel(("VRDE: Failed to attach audio driver, rc=%Rrc\n", vrc));
+        LogRel(("%s: Failed to attach audio driver, rc=%Rrc\n", pCfg->strName.c_str(), vrc));
 
     return vrc;
@@ -131,5 +132,6 @@
     AudioDriverCfg *pCfg = &pThis->mCfg;
 
-    LogFunc(("strDevice=%s, uInst=%u, uLUN=%u\n", pCfg->strDev.c_str(), pCfg->uInst, pCfg->uLUN));
+    LogFunc(("strName=%s, strDevice=%s, uInst=%u, uLUN=%u\n",
+             pCfg->strName.c_str(), pCfg->strDev.c_str(), pCfg->uInst, pCfg->uLUN));
 
     vrc = PDMR3DriverDetach(ptrVM.rawUVM(), pCfg->strDev.c_str(), pCfg->uInst, pCfg->uLUN, "AUDIO",
@@ -145,5 +147,5 @@
     }
     else
-        LogRel(("VRDE: Failed to detach audio driver, rc=%Rrc\n", vrc));
+        LogRel(("%s: Failed to detach audio driver, rc=%Rrc\n", pCfg->strName.c_str(), vrc));
 
     return vrc;
@@ -186,5 +188,5 @@
         if (!pDevLun)
         {
-            LogRel2(("VRDE: Configuring audio driver\n"));
+            LogRel2(("%s: Configuring audio driver\n", mCfg.strName.c_str()));
 
             PCFGMNODE pLunL0;
@@ -194,5 +196,5 @@
             PCFGMNODE pLunCfg;
             CFGMR3InsertNode(pLunL0,   "Config", &pLunCfg);
-                CFGMR3InsertString (pLunCfg, "DriverName",    "AudioVRDE");
+                CFGMR3InsertStringF(pLunCfg, "DriverName",    "%s", mCfg.strName.c_str());
                 CFGMR3InsertInteger(pLunCfg, "InputEnabled",  0); /* Play safe by default. */
                 CFGMR3InsertInteger(pLunCfg, "OutputEnabled", 1);
@@ -200,5 +202,5 @@
             PCFGMNODE pLunL1;
             CFGMR3InsertNode(pLunL0, "AttachedDriver", &pLunL1);
-                CFGMR3InsertString(pLunL1, "Driver", "AudioVRDE");
+                CFGMR3InsertStringF(pLunL1, "Driver", "%s", mCfg.strName.c_str());
 
                 CFGMR3InsertNode(pLunL1, "Config", &pLunCfg);
@@ -212,5 +214,5 @@
         if (pDevLun)
         {
-            LogRel2(("VRDE: Unconfiguring audio driver\n"));
+            LogRel2(("%s: Unconfiguring audio driver\n", mCfg.strName.c_str()));
             CFGMR3RemoveNode(pDevLun);
         }
Index: /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp
===================================================================
--- /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp	(revision 70543)
+++ /trunk/src/VBox/Main/src-client/ConsoleImpl2.cpp	(revision 70544)
@@ -2975,5 +2975,5 @@
             }
 
-            AudioDriverCfg Cfg(strAudioDevice, 0 /* Instance */, uAudioLUN);
+            AudioDriverCfg Cfg(strAudioDevice, 0 /* Instance */, uAudioLUN, "AudioVRDE");
             rc = mAudioVRDE->Configure(&Cfg, RT_BOOL(fVRDEEnabled) /* Attach */);
             if (   RT_SUCCESS(rc)
