WARNING: exec(): 0509-036 Cannot load program /app/12.2.0.1/grid/bin/kfod.bin durin Grid 12.2 Install on AIX

The Problem

During 12.2.0.1 GI install on AIX 7.1, at OUI screen “create ASM disks”, asm disks are not discovered by kfod. It is failing with the following error in gridSetupActions.log:


INFO: [Jun 29, 2017 3:19:34 PM] Starting Output Reader Threads for process /app/12.2.0.1/grid/bin/kfod.bin
WARNING: [Jun 29, 2017 3:19:34 PM] exec(): 0509-036 Cannot load program /app/12.2.0.1/grid/bin/kfod.bin because of the following errors:
INFO: [Jun 29, 2017 3:19:34 PM] The process /app/12.2.0.1/grid/bin/kfod.bin exited with code 255
INFO: [Jun 29, 2017 3:19:34 PM] Waiting for output processor threads to exit.
WARNING: [Jun 29, 2017 3:19:34 PM] 0509-130 Symbol resolution failed for /app/12.2.0.1/grid/lib/libons.so because:
WARNING: [Jun 29, 2017 3:19:34 PM] 0509-136 Symbol CreateIoCompletionPort (number 93) is not exported from
WARNING: [Jun 29, 2017 3:19:34 PM] dependent module /unix.
WARNING: [Jun 29, 2017 3:19:34 PM] 0509-136 Symbol GetQueuedCompletionStatus (number 94) is not exported from
WARNING: [Jun 29, 2017 3:19:34 PM] dependent module /unix.
WARNING: [Jun 29, 2017 3:19:34 PM] 0509-136 Symbol ReadFile (number 95) is not exported from
WARNING: [Jun 29, 2017 3:19:34 PM] dependent module /unix.
WARNING: [Jun 29, 2017 3:19:34 PM] 0509-136 Symbol WriteFile (number 96) is not exported from
WARNING: [Jun 29, 2017 3:19:34 PM] dependent module /unix.
WARNING: [Jun 29, 2017 3:19:34 PM] 0509-026 System error: Error 0
WARNING: [Jun 29, 2017 3:19:34 PM] 0509-192 Examine .loader section symbols with the
WARNING: [Jun 29, 2017 3:19:34 PM] 'dump -Tv' command.

The Solution

I/O Completion Ports(IOCP) parameter value was set to Defined. The following sample output shows the IOCP status is set to Defined:

$ lsdev | grep iocp
iocp0 Defined I/O Completion Ports

Here you need to change the IOCP IBM AIX parameter from “defined” to “available”, this action requires root privilege.

You can use following steps to modify IOCP attribute to Available:

1. Log in as root and run the following command:

# smitty iocp
Select Change / Show Characteristics of I/O Completion Ports.
Change configured state at system restart from Defined to Available.

2. Reboot server.

3. Run the lsdev command to confirm the IOCP status is set to Available:

$ lsdev | grep iocp
iocp0 Available I/O Completion Ports

Note:By default, IOCP is set to “Defined”. On IBM AIX on POWER Systems (64-Bit) and need to set I/O completion ports (IOCP) to “available” to ensure successful database and grid infrastructure installation.