|
Patch 2487 : IMPACT Video 6.2 bug fixes : [IRIX 6.2]
INDEX
RELATIONS
RELEASE NOTES
1. Patch SG0002487 Release Note
This release note describes patch SG0002487 to IRIX 6.2 with
IMPACT 10000. It replaces patches SG0001480 and SG0002030
for IRIX 6.2 with IMPACT 10000.
1.1 Supported Hardware Platforms
This patch contains bug fixes for Indigo2 IMPACT Video on
Indigo2 IMPACT and Indigo2 IMPACT 10000. The software cannot
be installed on other configurations.
1.2 Supported Software Platforms
This patch contains bug fixes for Indigo2 IMPACT Video
(version 1233007736) on a system running IRIX 6.2 with
IMPACT 10000. The software cannot be installed on other
configurations.
1.3 Bugs Fixed by Patch SG0002487
This patch contains fixes for the following bugs in Indigo2
IMPACT Video on systems running IRIX 6.2 with IMPACT 10000.
Bug numbers from Silicon Graphics bug tracking system are
included for reference.
o 403686 - Stacked fields capture type.
This capture type is device-specific and may not be
available in future IMPACT Video releases. It is
provided as an interim solution for real-time I/O in
applications requiring field captures (i.e. non-
interleaved). Developers are encouraged to use the
readv/writev interface with direct I/O.
The stacked-fields capture type is available as capture
type 99, used with the VL_CAP_TYPE control.
The stacked-fields capture type places two fields in
one buffer. The effect is as if the two buffers for
VL_CAPTURE_NONINTERLEAVED were concatenated.
o The dominant field is always first in the buffer.
o As with VL_CAPTURE_NONINTERLEAVED, field pairs are
always treated as a unit. Consequently, in the
event of a dropped field the software will
resynchronize on the dominant field. Under no
circunstances will capture or playback of a buffer
start on a non-dominant field. In addition, in the
capture case two two fields are guaranteed to have
been consecutive fields in the video stream.
o The value of VL_SIZE returned is the field size
o The value of VL_MGV_BUFFER_QUANTUM must be 1 or a
multiple of 8 (this guarantees double-word
alignment of the second field). Other values will
be rejected when the stacked fields capture type
is used.
o Each *field* is expanded to a multiple of the
buffer quantum. This allows easy access to field
units if the buffers are written to disk in their
entirety, particularly if the quantum is a
multiple of miniosz.
o The value returned by vlGetTransferSize is,
consequently: (field size rounded up to next
quantum) * 2
o Software colorspace conversion or scaling is not
supported with this capture type.
vlSetControl(VL_PACKING) will accept only
hardware-supported packings when stacked fields is
used.
o The MSC increments by one for each pair of fields.
The reference point for UST is the F-bit
transition for the first field in the buffer.
o 406689 - Change VGI1 arbitration policy to round robin.
This change affects the usage of IMPACT Video with
other slot-shared devices such as IMPACT Compression
and Ciprico's GIO Ultrascsi adapter. In some cases, the
external device may want to transfer sufficient data
that IMPACT Video will be starved.
o 409654 - Patch 1447 and subsequent patches for IMPACT
graphics causes the system to panic when video is used
on IMPACT 10000.
o 409971 - The VL_SIZE and VL_OFFSET values could not be
extended to accomodate parts of vertical blanking. In
addition, it was possible to extend VL_SIZE to a width
that caused the DMA engine to stall. The maximum
capture sizes are 856x524 (interleaved), 856x262 (F1
only), or 856x261 (F2 only)
o 434350 - The flicker reduction filter can now be
enabled / disabled via vcp (videopanel). NOTE THAT IN
PRIOR RELEASES THE FILTER WOULD AUTOMATICALLY BE
ENABLED WHEN A SCREEN SOURCE WAS USED. THIS IS NO
LONGER THE CASE.
o 448403 - vlGetFrontierMSC would sometimes not increment
properly after a new video field was placed in the
buffer. This made it impossible to use MSC/UST to do
media stream synchronization calculations. This fix
produces the correct behavior, which is that, as long
as there is no underflow/overflow, the frontier msc
increments by 1 if and only if a new field is placed in
the buffer.
o 455546 - vlGetFrontierMSC does not increment properly
for type VL_CAPTURE_NONINTERLEAVED. The symptom is the
same as 448403 above, but is caused by a different bug,
so that this problem remains even with the fix to
448403 in place.
o 464001 - Override gfx attach in vlCreatePath via
environment variable. For iris GL windows used with
screen drain nodes, graphics must be attached in the
application process so that video can be
enabled/disabled. For OpenGL applications or
applications not using screen drain nodes, this attach
is not necessary and may in very rare cases cause
problems, or the message "_mgvManagedBy:: gfx attach
failed" in SYSLOG. Setting the environment variable
MGV_NO_GFX_ATTACH to a non-zero value will prevent
graphics from being attached in the application space.
Note that this feature should be used with care and any
abnormal program operation fixed by it should be
reported as a bug.
o 470197 - Exiting videod can cause a kernel panic in
gfxclose / GfxDetach/ RRM_EXIT. Reference counting of
the gfx file descriptor is not properly handled on a
sproc() call, which videod uses to manage video
transfers. Sprocing with shared file descriptors works
around the problem.
o 474386, 488812 - Certain configurations exposed a
memory allocation bug in the IMPACT Video device
driver, leading to a system panic during bootup.
Reported configurations had 256 MB, a kernel rollup
patch, an XFS rollup patch, and IMPACT Video installed.
o 474442 - Repeated invocations of
vlBeginTransfer/vlEndTransfer on a path failed to reset
the frontier msc as obtained by vlGetFrontierMSC, but
did reset the jack msc obtained by vlGetUSTMSCPair.
Thus the two msc's would no longer track each other
making msc/ust calculations meaningless. The fix resets
the frontier MSC on vlEndTransfer, restoring proper
tracking between the two msc's.
o 546445, 546446, 547279, 570284 - If a corrupt or mis-
timed video source is fed to the IMPACT Video board,
video capture to memory can panic the system or cause
the video transfer to hang (only the application
capturing will be affected in the latter case; the
system is otherwise unaffected). These problems are
addressed by having the device driver, to the extent
possible, detect timing errors leading to the panics
and hangs and report VLSyncLost events to the
application.
o 567956 - The IMPACT Video device driver did not
allocate a properly sized structure for some of it's
shadow registers. This can lead to kernel memory
corruption and subsequent panics or other anomalous
behavior.
o 568017 - The IMPACT Video device driver leaks memory
from the kernel heap.
o 569039 - Back-to-back EndTransfer / BeginTransfer calls
can result in a transfer starting with a device error
(VGI1 FIFO over/underflow.) This may manifest itself
as a series of "Unexpected Vertical" interrupts.
o 569303 - Back-to-back errors can cause the IMPACT Video
driver to not reinstate proper interrupts for the video
board. A side effect is that the driver will
continually report unexpected and/or missed verticals,
and no buffers will be delivered to the application.
1.4 Subsystems Included in Patch SG0002487
This patch release includes these subsystems:
o patchSG0002487.impactvideo_sw.eoe
patchSG0002487.impactvideo_sw32.eoe
patchSG0002487.impactdm_sw.common
patchSG0002487.impactdm_sw32.common
1.5 Installation Instructions
Because you want to install only the patches for problems
you have encountered, patch software is not installed by
default. After reading the descriptions of the bugs fixed
in this patch (see Section 1.3), determine the patches that
meet your specific needs.
If, after reading Sections 1.1 and 1.2 of these release
notes, you are unsure whether your hardware and software
meet the requirements for installing a particular patch, run
inst. The inst program does not allow you to install
patches that are incompatible with your hardware or
software.
Patch software is installed like any other Silicon Graphics
software product. Follow the instructions in your Software
Installation Administrator's Guide to bring up the miniroot
form of the software installation tools.
Follow these steps to select a patch for installation:
1. At the Inst> prompt, type
install patchSGxxxxxxx
where xxxxxxx is the patch number.
2. Initiate the installation sequence. Type
Inst> go
3. You may find that two patches have been marked as
incompatible. (The installation tools reject an
installation request if an incompatibility is
detected.) If this occurs, you must deselect one of
the patches.
Inst> keep patchSGxxxxxxx
where xxxxxxx is the patch number.
4. After completing the installation process, exit the
inst program by typing
Inst> quit
1.6 Patch Removal Instructions
To remove a patch, use the versions remove command as you
would for any other software subsystem. The removal process
reinstates the original version of software unless you have
specifically removed the patch history from your system.
versions remove patchSGxxxxxxx
where xxxxxxx is the patch number.
To keep a patch but increase your disk space, use the
versions removehist command to remove the patch history.
versions removehist patchSGxxxxxxx
where xxxxxxx is the patch number.
1.7 Known Problems
None
INST SUBSYSTEM REQUIREMENTS No Requirements Information Available. INST SUBSYSTEM CHECKSUMS These checksums help to provide a 'signature' for the patch inst image which can be used to authenticate other inst images. You can obtain this kind of output by running sum -r on the image (from the command line): 13072 6 patchSG0002487 13403 5 patchSG0002487.idb 38484 134 patchSG0002487.impactdm_sw 47193 144 patchSG0002487.impactdm_sw32 22137 994 patchSG0002487.impactvideo_sw 15571 503 patchSG0002487.impactvideo_sw32 INST SUBSYSTEM FILE LISTINGS The following lists the files which get installed from each subsystem in the patch:
DOWNLOAD PATCH
|
||||||||||||||||||||||||||||||||||||
Document Id: 20021117070319-IRIXPatch-1145
|
||||||||||||||||||||||||||||||||||||