dropdown menu



An interim fix, or ifix (previously called an emergency fix or efix) is a code update to resolve a specific known problem, or APAR, while an official PTF is undergoing the formal development process.

An APAR is an Authorized Problem Analysis Report. IBM acknowledges that there is some sort of defect in a software program. This report sums up the problem and instructs the software lab to fix it. (IXnnnnn or IYnnnnn number - and not long ago IZnnnnn)

A PTF is a Program Temporary Fix and provides a solution for a problem. (Unnnnnn number for AIX) I guess the U is for UNIX).

Most people use PTF and APAR interchangably. PTF's have the word temporary in them but really are not temporary, they are just a patch.
A temporary patch would be an efix (ifix) that you would get directly from IBM. Ifixes need to be uninstalled before a TL update (as these ifixes should be contained in the new TL level). The terminology is confusing but just think of both PTF's and APAR's as patches. There could be some sort of technical difference between the two but it doesn't really matter.

Starting in AIX 5.3 TL 10 and AIX 6.1 TL 3, the installp command will automatically remove an ifix from the system if you are installing the Technology Level, Service Pack, or PTF that provides the official fix for the problem.

more info: http://www-304.ibm.com/support/docview.wss?uid=isg3T1012104

emgr -de /mnt/IZ12345.epkg.Z    displays some info about an ifix package (-e: e(i)fix package name; emgr -dv3 -e <ifix>: verbose output)
emgr -pe /mnt/IZ12345.epkg.Z    preview of the install of given ifix package
emgr -e /mnt/IZ12345.epkg.Z     installs the specified ifix (the ifix package should be in compressed state)

emgr -l                         lists interim fixes (emgr -lv3: verbose mode listing)
emgr -l -L IZ12345              you can list information about a specific installed ifix by running the command (v3 (verbose) can be used)
emgr -c -L ifix_label           an ifix can be verified by running the command (if -L <ifix> is omitted all installed ifixes are checked)

emgr -r -L iy77276              removes the given interim fix
emgr -r -n 1                    removes the specified interim fix with the given ID (ID can be obtained: emgr -lv3)
emgr -r -u VUID                 removes the specified interim fix with the given VUID (VUID can be obtained: emgr -lv3)

You can also specify different levels of verbosity by using the -v flag. Level 1 is the default and level 3 is the maximum.
(I usually use v3.)


Concurrent ifix

A concurrent ifix is initially installed to memory, then is optionally committed to disk, either at the time of installation, or at a later time. A concurrent ifix that is installed only in memory will not be loaded when the system reboots. Concurrent ifixes may also be installed in the traditional manner.

A concurrent ifix:
-a feature introduced in AIX 6.1, may be available for ifixes which fix a problem in the kernel, or certain kernel extensions.
-it can update the kernel or kernel extension in memory, without requiring a reboot.
-it is initially installed to memory, then is optionally committed to disk, either at the time of installation, or at a later time.
-if it is installed only in memory will not be loaded when the system reboots.

emgr -i IZ12345.epkg.Z          installs a concurrent ifix in memory only (the ifix will not be loaded when the system reboots)
emgr -C -L IZ12345              commits a fix that is only installed in memory to disk, allowing it to be loaded when the system reboots
emgr -Ci IZ12345.epkg.Z         installs an ifix in memory and commit it to disk in a single operation


ifix states

S = Stable                      ifix was successfully installed in the traditional way (using the -e flag)
Q = Reboot Required             ifix was installed successfully, but a reboot is required. After reboot it will be moved to the S state
P = Patched
                    concurrent ifix has been installed only to memory. A reboot will clear the ifix from memory.
N = Not Patched                 concurrent ifix is not loaded in memory (conc. ifix is installed only in memory, then system was rebooted)
SP = Stable + Patched           concurrent ifix has been installed in memory and committed to disk
QP = Reboot Required + Patched  concurrent ifix was installed to memory and committed to disk, but the system has not been rebooted
B = Broken                      something has gone wrong with the installation or removal of the ifix and should be corrected


Unable to set up Trusted Execution environment for Installation to proceed.

I wanted to install an ifix (emgre -e ...) and received the above error.
IBM says we need to cleanup old/failed installation. lppchk and installp -C did not show any error, then I found a hanging "fuser" process since weeks (ps -ef), and I saw this emgr also does some checks, and uses fuser ...  and now I had another hanging "fuser" process. I tried to kill both processes without success, so I did a reboot after that ifix install was successful.


Anonymous said...

Hi admin,

Is ifix and APAR both are same ?
when i saw APAR....it has multiple files/packages please explain

Anonymous said...

i mean.....is APAR kind of ifix ?

aix said...

As I wrote above, APAR is a report about a problem and if you need emergency fix ,you will get an ifix for that APAR. (As these are related together you can use both of them interchangeably.

Anonymous said...


Great article.
Can I install multiple ifixes/efixes that require reboot at once, and reboot AIX just once in the end?

aix said...

Hi, if they are not dependent on each other, in my opinion you can...

Unknown said...

How remove all installed ifix using emgr command

Anonymous said...

for i in `emgr -l | grep "/" | awk '{print $3}'`; do emgr -r -L $i ; done

Anonymous said...

Hi, I have a question related to uninstalling ifixes.
what if the customer is removing an ifix to go through upgrading his OS, however, the emgr -r -l stayed for around 30 mins?

Anonymous said...

Just a comment regarding APARs and PTFs. Currently an APAR
is a recognized problem that might affect multiple levels
of the product. A PTF is the fix that applies to some or
all of the affected levels. One APAR generally maps to
multiple PTFs. A PTF is temporary in the sense that the
fix should be built into the next release of the product.
With AIX at least, a PTF may contain the fixes for multiple
APARs if they were all fixed in the same release cycle.

aix said...

Wow...thanks a lot for this clarification between APAR vs PTF :-)