Index: /trunk/include/VBox/vmm/pdmaudioifs.h
===================================================================
--- /trunk/include/VBox/vmm/pdmaudioifs.h	(revision 82462)
+++ /trunk/include/VBox/vmm/pdmaudioifs.h	(revision 82463)
@@ -627,9 +627,10 @@
 
 /**
- * Structure for mapping a single (mono) channel or dual (stereo) channels onto
- * an audio stream (aka stream profile).
- *
- * An audio stream consists of one or multiple channels (e.g. 1 for mono, 2 for
- * stereo), depending on the configuration.
+ * Mappings channels onto an audio stream.
+ *
+ * The mappings are either for a single (mono) or dual (stereo) channels onto an
+ * audio stream (aka stream profile).  An audio stream consists of one or
+ * multiple channels (e.g. 1 for mono, 2 for stereo), depending on the
+ * configuration.
  */
 typedef struct PDMAUDIOSTREAMMAP
@@ -637,5 +638,5 @@
     /** Array of channel IDs being handled.
      * @note The first (zero-based) index specifies the leftmost channel. */
-    PDMAUDIOSTREAMCHANNELID     aID[2];
+    PDMAUDIOSTREAMCHANNELID     aenmIDs[2];
     /** Step size (in bytes) to the channel's next frame. */
     uint32_t                    cbStep;
@@ -701,5 +702,5 @@
 
 /**
- * Structure for keeping an audio stream configuration.
+ * An audio stream configuration.
  */
 typedef struct PDMAUDIOSTREAMCFG
@@ -751,8 +752,9 @@
         uint32_t            cFramesPreBuffering;
     } Backend;
+    uint32_t                u32Padding;
     /** Friendly name of the stream. */
     char                    szName[64];
 } PDMAUDIOSTREAMCFG;
-AssertCompileSizeAlignment(PDMAUDIOPCMPROPS, 8);
+AssertCompileSizeAlignment(PDMAUDIOSTREAMCFG, 8);
 /** Pointer to audio stream configuration keeper. */
 typedef PDMAUDIOSTREAMCFG *PPDMAUDIOSTREAMCFG;
@@ -1200,5 +1202,5 @@
 
 /**
- * Structure for maintaining an input/output audio stream.
+ * An input or output audio stream.
  */
 typedef struct PDMAUDIOSTREAM
@@ -1249,10 +1251,10 @@
 
 /**
- * Enumeration for an audio callback source.
+ * Audio callback source.
  */
 typedef enum PDMAUDIOCBSOURCE
 {
     /** Invalid, do not use. */
-    PDMAUDIOCBSOURCE_INVALID    = 0,
+    PDMAUDIOCBSOURCE_INVALID = 0,
     /** Device emulation. */
     PDMAUDIOCBSOURCE_DEVICE,
Index: /trunk/src/VBox/Devices/Audio/DevIchAc97.cpp
===================================================================
--- /trunk/src/VBox/Devices/Audio/DevIchAc97.cpp	(revision 82462)
+++ /trunk/src/VBox/Devices/Audio/DevIchAc97.cpp	(revision 82463)
@@ -360,6 +360,5 @@
 #endif
     /** The stream's current configuration. */
-    PDMAUDIOSTREAMCFG       Cfg; //+104
-    uint32_t                Padding2;
+    PDMAUDIOSTREAMCFG       Cfg; //+108
 #ifdef VBOX_WITH_AUDIO_AC97_ASYNC_IO
     /** Asynchronous I/O state members. */
Index: /trunk/src/VBox/Devices/Audio/DrvAudioCommon.cpp
===================================================================
--- /trunk/src/VBox/Devices/Audio/DrvAudioCommon.cpp	(revision 82462)
+++ /trunk/src/VBox/Devices/Audio/DrvAudioCommon.cpp	(revision 82463)
@@ -951,5 +951,5 @@
     AssertPtrReturnVoid(pCfg);
 
-    RT_BZERO(pCfg, sizeof(PDMAUDIOSTREAMCFG));
+    RT_ZERO(*pCfg);
 
     pCfg->Backend.cFramesPreBuffering = UINT32_MAX; /* Explicitly set to "undefined". */
Index: /trunk/src/VBox/Devices/Audio/DrvHostDSound.cpp
===================================================================
--- /trunk/src/VBox/Devices/Audio/DrvHostDSound.cpp	(revision 82462)
+++ /trunk/src/VBox/Devices/Audio/DrvHostDSound.cpp	(revision 82463)
@@ -114,16 +114,17 @@
 {
     /** The stream's acquired configuration. */
-    PDMAUDIOSTREAMCFG  Cfg;
+    PDMAUDIOSTREAMCFG   Cfg;
     /** Buffer alignment. */
-    uint8_t            uAlign;
+    uint8_t             uAlign;
     /** Whether this stream is in an enable state on the DirectSound side. */
-    bool               fEnabled;
+    bool                fEnabled;
+    bool                afPadding[2];
+    /** Size (in bytes) of the DirectSound buffer.
+     *  @note This in *not* the size of the circular buffer above! */
+    DWORD               cbBufSize;
     /** The stream's critical section for synchronizing access. */
-    RTCRITSECT         CritSect;
+    RTCRITSECT          CritSect;
     /** The internal playback / capturing buffer. */
-    PRTCIRCBUF         pCircBuf;
-    /** Size (in bytes) of the DirectSound buffer.
-     *  Note: This in *not* the size of the circular buffer above! */
-    DWORD              cbBufSize;
+    PRTCIRCBUF          pCircBuf;
     union
     {
Index: /trunk/src/VBox/Devices/Audio/HDAStream.h
===================================================================
--- /trunk/src/VBox/Devices/Audio/HDAStream.h	(revision 82462)
+++ /trunk/src/VBox/Devices/Audio/HDAStream.h	(revision 82463)
@@ -166,5 +166,4 @@
      *  Should match SDFMT. */
     PDMAUDIOSTREAMCFG       Cfg;
-    uint32_t                Padding4;
     /** Timestamp (in ns) of last stream update. */
     uint64_t                tsLastUpdateNs;
Index: /trunk/src/VBox/Devices/Audio/HDAStreamMap.cpp
===================================================================
--- /trunk/src/VBox/Devices/Audio/HDAStreamMap.cpp	(revision 82462)
+++ /trunk/src/VBox/Devices/Audio/HDAStreamMap.cpp	(revision 82463)
@@ -156,10 +156,10 @@
         PPDMAUDIOSTREAMMAP pMapLR = &pMap->paMappings[0];
 
-        pMapLR->aID[0]   = PDMAUDIOSTREAMCHANNELID_FRONT_LEFT;
-        pMapLR->aID[1]   = PDMAUDIOSTREAMCHANNELID_FRONT_RIGHT;
-        pMapLR->cbFrame  = pProps->cbSample * pProps->cChannels;
-        pMapLR->cbStep   = pProps->cbSample * 2 /* Front left + Front right channels */;
-        pMapLR->offFirst = 0;
-        pMapLR->offNext  = pMapLR->offFirst;
+        pMapLR->aenmIDs[0]  = PDMAUDIOSTREAMCHANNELID_FRONT_LEFT;
+        pMapLR->aenmIDs[1]  = PDMAUDIOSTREAMCHANNELID_FRONT_RIGHT;
+        pMapLR->cbFrame     = pProps->cbSample * pProps->cChannels;
+        pMapLR->cbStep      = pProps->cbSample * 2 /* Front left + Front right channels */;
+        pMapLR->offFirst    = 0;
+        pMapLR->offNext     = pMapLR->offFirst;
 
         rc = hdaR3StreamChannelDataInit(&pMapLR->Data, PDMAUDIOSTREAMCHANNELDATA_FLAGS_NONE);
