Uma pergunta interessante que me fez coçar a cabeça por um tempo.
Primeiro, por que você não tem a linha Swap: embora em teoria isso tenha sido adicionado no kernel 2.6.16, ele não apareceu no RHEL até 5.3 ou mais (kernel 2.6.18-99.el5). Aqui está o commit (infelizmente não acessível no RH Bugzilla; se você tiver uma conta com privilégios apropriados, o ID do Bugzilla é 443749). link
Segundo, isso implica que os dados principais não são confiáveis, pois não estão lendo os smaps (isto é, virt-res):
case P_SWP:
MKCOL(scale_num(PAGES_TO_KB(p->size - p->resident), w, s));
Em terceiro lugar, lamento dizer que o kernel é o One True Oracle em quanto swap é usado e, até onde eu sei, os vários patches para disponibilizar as informações em smaps e status são a única maneira de expor isso em formação. Infelizmente, vejo a atualização do seu kernel como a única maneira de obter informações precisas; seja remendando a fonte ( patch de amostra, sem garantia ) ou atualizando para o kernel 2.6.18-99.el5.
Eu gostaria que houvesse uma resposta mais fácil; culpa Linus.