The process for 24905 is an "oracle" process.
(from ps -ef: oracle 24905 1 0 Feb28 ? 00:00:01 oracleORCL oracleORCL (DESCRIPTION=(LOCAL=n

Can someone tell me whether the following could be a cause and could it be possible? (Just my theory).

There may be a client process, which has two connection open at the same time.
The first connection holds an exclusive row lock (from v$sqlarea, its an insert stmt) and the other connection is holding exclusive lock on another table and wants the lock on the former's table.
Since its within the same process, oracle may not be able to detect it as a time out/dead lock. (These processes are waiting for more than a day)

Thank you for any of your feedback.