On our SLES 10 and SLES 11 machines, the Nmon VM data was mostly invalid. This is because newer kernels have additional fields in /proc/vmstat, which no longer matches the static list of fields that read_vmstat() has. In our case, the pswpin field of the VM records in the Nmon data files actually contained the pgpgout counter, leading one to think the machines were paging in from paging space all the time while in fact they weren't.
The attached patch uses proc_read() to read /proc/vmstat and uses a slightly modified version of proc_mem_search() to find the VM fields in proc[P_VMSTAT].line.
The patch also has a modified version of args_output() which writes the same fields to UARG records as the AIX version does. Compared to Nmon for Linux 13d, it adds ppid, thcount, user and group.