Transferencias isocrónicas través del bus IEEE 1394 no pueden finalizar correctamente cuando el controlador de dispositivo se desasocia y asocia de nuevo el búfer en Windows 7 y Windows Server 2008 R2

Se aplica a: Windows 7Windows 7 Service Pack 1Windows Server 2008 R2

Síntomas


En un equipo que ejecuta Windows 7 o Windows Server 2008 R2, conecta un dispositivo que utiliza el bus IEEE 1394 para transferir datos. El dispositivo utiliza un controlador que está controlado por el controlador de la controladora de Host OHCI Windows 7 1394. Cuando se inicia la transferencia isócrona desde el dispositivo al equipo, transferencia de datos no se terminen correctamente.Nota: Este problema puede producirse si el controlador para el dispositivo IEEE 1394 sólo conecta suficientes búferes para un solo fotograma de datos isocrónicas y el controlador de dispositivo se desasocia y asocia de nuevo este búfer entre cada fotograma.

Causa


Este problema sólo se produce cuando se ejecuta la transferencia isócrona al final del búfer pasado que se adjunta al contexto de transferencia isócrona y dicho búfer se desasocia del contexto de transferencia isócrona antes de búferes adicionales están conectados. Este problema puede producirse porque el controlador de la controladora de Host de Windows 7 1394 OHCI no correctamente limpiar un Isochronous transfiere contexto cuando el búfer pasado se procesa y se separa el contexto transferencia isócrona. Cuando los búferes adicionales se adjuntan al contexto isocrónico y se reinicia la transferencia isócrona, el búfer pasado en la transferencia anterior se procesa de nuevo, en lugar de comenzar con el primer búfer en la transferencia nuevo.

Solución


Información de la revisión

Existe un hotfix disponible desde Microsoft. Sin embargo, esta revisión se diseñó para corregir el problema descrito en este artículo. Aplique esta revisión solamente a sistemas que experimenten el problema descripto en este artículo. Esta revisión podría ser sometida a comprobaciones adicionales. Por lo tanto, si no se ve muy afectado por este problema, recomendamos que espere a la próxima actualización de software que contenga este hotfix. Si la revisión está disponible para su descarga, hay una sección de "Descarga de revisión disponible" en la parte superior de este artículo de Knowledge Base. Si esta sección no aparece, póngase en contacto con el servicio al cliente de Microsoft y soporte técnico para obtener la revisión. Nota: Si se producen problemas adicionales o si se requiere cualquier otra solución, será necesario crear una solicitud de revisión independiente. Los costos habituales de soporte se aplicarán a las preguntas de soporte técnico adicionales y problemas que no califican para esta revisión específica. Para obtener una lista completa de los números de teléfono de servicio al cliente de Microsoft o para crear una solicitud de servicio independiente, visite el siguiente sitio Web de Microsoft: Nota: El formulario de "Descarga de Hotfix disponible" muestra los idiomas para los que el Hotfix está disponible. Si no ve su idioma, es porque no hay una revisión para ese idioma.

Requisitos previos

Para aplicar esta revisión, debe estar ejecutando uno de los siguientes sistemas operativos:
  • Windows 7
  • Service Pack 1 (SP1) de Windows 7
  • Windows Server 2008 R2
  • Windows Server 2008 R2 Service Pack 1 (SP1)

Información de Registro

Para utilizar la revisión de este paquete, no es necesario realizar ningún cambio en el registro.

Información de reinicio

Tendrá que reiniciar el equipo después de aplicar este hotfix.

Información de la sustitución de revisión

Esta revisión no sustituye a ninguna revisión publicada previamente.

Información de archivo

La versión global de esta revisión instala archivos que tienen los atributos que se enumeran en las siguientes tablas. Las fechas y horas de estos archivos se muestran según la Hora universal coordinada (UTC). Las fechas y horas de estos archivos se muestran en el equipo local en horario local con la configuración actual del horario de verano (DST). Además, las fechas y horas pueden cambiar cuando realiza determinadas operaciones en los archivos.
Notas de información sobre archivos de Windows 7 y Windows Server 2008 R2
Importante Las revisiones de Windows 7 y Windows Server 2008 R2 se incluyen en los mismos paquetes. Sin embargo, las revisiones de la página Solicitud de revisión figuran para ambos sistemas operativos. Para solicitar la revisión que se aplica a uno o a ambos sistemas operativos, seleccione la revisión que aparece enumerada bajo "Windows 7/Windows Server 2008 R2" en la página. Consulte siempre la sección "La información de este artículo se refiere a" en los artículos para determinar el sistema operativo al que se aplica cada revisión.
  • Los archivos que se aplican a un producto específico, SR_Level (RTM, SPn) y servicio (LDR, GDR) se pueden identificar examinando los números de versión de archivo como se muestra en la siguiente tabla.
    VersiónProductoSR_LevelTipo de servicio
    6.1.760 0. 20xxxWindows 7 y Windows Server 2008 R2RTMLDR
    6.1.760 1. 21xxxWindows 7 y Windows Server 2008 R2SP1LDR
  • Los archivos MANIFEST (.manifest) y los MUM archivos (.mum) que se instalan para cada entorno están enumerados por separado en la sección "Información para Windows Server 2008 R2 y Windows 7 de archivo adicional". MUM y los archivos de manifiesto y los archivos de catálogo (.cat) de seguridad asociados, son extremadamente importantes para mantener el estado de los componentes actualizados. Los archivos del catálogo de seguridad, cuyos atributos no se indican, cuentan con la firma digital de Microsoft.
Para todas las versiones compatibles de Windows 7 basadas en x86
Nombre del archivoVersión del archivoTamaño del archivoFechaHoraPlataforma
1394ohci.sys6.1.7600.20861164,86418-Dec-201003:58x86
1394ohci.sys6.1.7601.21624164,86418-Dec-201006:29x86
Para todas las versiones basadas en x64 de Windows 7 y Windows Server 2008 R2
Nombre del archivoVersión del archivoTamaño del archivoFechaHoraPlataforma
1394ohci.sys6.1.7600.20861230,40018-Dec-201004:22x64
1394ohci.sys6.1.7601.21624229,88818-Dec-201007:05x64
Para todas las versiones basadas en IA-64 compatibles de Windows Server 2008 R2
Nombre del archivoVersión del archivoTamaño del archivoFechaHoraPlataforma
1394ohci.sys6.1.7600.20861514,56018-Dec-201003:49IA-64
1394ohci.sys6.1.7601.21624515,58418-Dec-201008:01IA-64

Solución alternativa


Para evitar este problema, cambie el comportamiento del controlador de dispositivo IEEE 1394 para proporcionar suficientes búferes para que la transferencia isócrona nunca se ejecuta hasta el final del búfer pasado. Esto sería una implementación típica para proporcionar un flujo continuo de datos isocrónicos.

Estado


Microsoft ha confirmado que se trata de un problema de los productos de Microsoft enumerados en la sección "Se aplica a".

Más información


Este problema se produce si el controlador de dispositivo IEEE 1394 implementa la siguiente secuencia de operaciones:
  1. Configure la transferencia isócrona. Esto incluye la asignación de recursos y asociar los búferes. Para obtener más información acerca de cómo configurar la transferencia isócrona, visite los siguientes sitios Web de Microsoft Developer Network (MSDN):
  2. Iniciar la escucha isócronos o charla transferencia [transferencia #1]. Para obtener más información acerca de cómo iniciar la transferencia isócrona escuchar o hablar, visite los siguientes sitios Web de Microsoft Developer Network (MSDN):
  3. Se transfieren datos isocrónicos.
  4. Se invoca la rutina de isócronos de devolución de llamada del controlador de dispositivo IEEE 1394. Para obtener más información acerca de cómo invocar la rutina isócronos de devolución de llamada, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
  5. Detener a la transferencia isócrona. Para obtener más información acerca de cómo detener a la transferencia isócrona, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
  6. Separar los búferes. Para obtener más información acerca de cómo separar los búferes, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
  7. Datos del búfer de proceso.
    • Para escuchar isocrónica operaciones, el controlador de dispositivo IEEE 1394 procesaría los datos que se reciben en los búferes isócronos.
    • Para operaciones de hablar isócronos, el controlador de dispositivo IEEE 1394 preparar los búferes isocrónicos con los datos que se transmiten.
  8. Adjuntar búferes. Para obtener más información acerca de cómo adjuntar los búferes, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
  9. Iniciar la escucha isócronos o charla transferencia [transferencia #2]. Para obtener más información acerca de cómo iniciar la transferencia isócrona escuchar o hablar, visite los siguientes sitios Web de Microsoft Developer Network (MSDN):
En esta secuencia de operaciones, cuando se inicia el segundo escuchar isócrona, se establece el valor escrito en el registro de puntero de comandos del controlador de host para señalar al último comando Descriptor de la transferencia isócrona anterior (completada), en lugar de a la PRIMER Descriptor del comando en la transferencia isócrona nuevo. Este problema se produce si el controlador de dispositivo IEEE 1394 implementa la siguiente secuencia de operaciones:
  1. Configure la transferencia isócrona. Esto incluye la asignación de recursos y asociar los búferes. Para obtener más información acerca de cómo configurar la transferencia isócrona, visite los siguientes sitios Web de Microsoft Developer Network (MSDN):Nota: Asegúrese de que adjunte suficientes búferes para que permanezcan conectados búferes adicionales una vez completada la transferencia del marco actual y se invoca la rutina isócronos de devolución de llamada en el correspondiente descriptor isocrónico.
  2. Iniciar la escucha isócronos o charla transferencia [transferencia #1]. Para obtener más información acerca de cómo iniciar la transferencia isócrona escuchar o hablar, visite los siguientes sitios Web de Microsoft Developer Network (MSDN):
  3. Se transfieren datos isocrónicos.
  4. Se invoca la rutina de isócronos de devolución de llamada del controlador de dispositivo IEEE 1394. Para obtener más información acerca de cómo invocar la rutina isócronos de devolución de llamada, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
  5. Separar los búferes. Para obtener más información acerca de cómo separar los búferes, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
  6. Datos del búfer de proceso.
    • Para escuchar isocrónica operaciones, el controlador de dispositivo IEEE 1394 procesaría los datos que se reciben en los búferes isócronos.
    • Para operaciones de hablar isócronos, el controlador de dispositivo IEEE 1394 preparar los búferes isocrónicos con los datos que se transmiten.
  7. Adjuntar búferes. Para obtener más información acerca de cómo adjuntar los búferes, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
  8. Repita los pasos 4 a 7 para continuar con la transferencia de datos isocrónicos continuamente.
  9. Detener a la transferencia isócrona. Para obtener más información acerca de cómo detener a la transferencia isócrona, visite el siguiente sitio Web de Microsoft Developer Network (MSDN):
Para obtener más información acerca de cómo el controlador de dispositivo 1394 anIEEE realiza transferencias isocrónicas, visite los siguientes sitios Web de Microsoft Developer Network (MSDN): Para obtener una descripción de una secuencia típica para realizar transferencias de datos isocrónica a o desde un dispositivo IEEE 1394, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
970076 Se detiene repentinamente una transferencia isócrona datos a través de un dispositivo IEEE 1394 en Windows Vista o en Windows Server 2008
Para obtener más información acerca de la terminología de la actualización de software, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
824684 Descripción de la terminología estándar utilizada para describir las actualizaciones de software de Microsoft

Información de archivo adicional para Windows 7 y Windows Server 2008 R2

Archivos adicionales para todas las versiones compatibles de Windows 7 basadas en x86
Nombre del archivoUpdate.mum
Versión del archivoNot applicable
Tamaño del archivo2,331
Fecha (UTC)20-Dec-2010
Hora (UTC)21:50
PlataformaNot applicable
Nombre de archivoX86_1394.inf_31bf3856ad364e35_6.1.7600.20861_none_fba0efd5804c7eab.manifest
Versión del archivoNot applicable
Tamaño del archivo3,572
Fecha (UTC)20-Dec-2010
Hora (UTC)21:52
PlataformaNot applicable
Nombre de archivoX86_1394.inf_31bf3856ad364e35_6.1.7601.21624_none_fdb58d697d4fc6d8.manifest
Versión del archivoNot applicable
Tamaño del archivo3,572
Fecha (UTC)20-Dec-2010
Hora (UTC)21:52
PlataformaNot applicable
Archivos adicionales para todas las versiones basadas en x64 de Windows 7 y Windows Server 2008 R2
Nombre de archivoAmd64_1394.inf_31bf3856ad364e35_6.1.7600.20861_none_57bf8b5938a9efe1.manifest
Versión del archivoNot applicable
Tamaño del archivo3,576
Fecha (UTC)20-Dec-2010
Hora (UTC)21:55
PlataformaNot applicable
Nombre de archivoAmd64_1394.inf_31bf3856ad364e35_6.1.7601.21624_none_59d428ed35ad380e.manifest
Versión del archivoNot applicable
Tamaño del archivo3,576
Fecha (UTC)20-Dec-2010
Hora (UTC)21:55
PlataformaNot applicable
Nombre de archivoUpdate.mum
Versión del archivoNot applicable
Tamaño del archivo2.347
Fecha (UTC)20-Dec-2010
Hora (UTC)21:50
PlataformaNot applicable
Archivos adicionales para todas las versiones compatibles de Windows Server 2008 R2 basadas en IA-64
Nombre del archivoIa64_1394.inf_31bf3856ad364e35_6.1.7600.20861_none_fba293cb804a87a7.manifest
Versión del archivoNot applicable
Tamaño del archivo3,574
Fecha (UTC)20-Dec-2010
Hora (UTC)21:50
PlataformaNot applicable
Nombre de archivoIa64_1394.inf_31bf3856ad364e35_6.1.7601.21624_none_fdb7315f7d4dcfd4.manifest
Versión del archivoNot applicable
Tamaño del archivo3,574
Fecha (UTC)20-Dec-2010
Hora (UTC)21:50
PlataformaNot applicable
Nombre de archivoUpdate.mum
Versión del archivoNot applicable
Tamaño del archivo1,933
Fecha (UTC)20-Dec-2010
Hora (UTC)21:50
PlataformaNot applicable