It's probably best to say that UVM_MAPFLAG() returns a uvm_flag_t. It's almost exclusively used for uvm_map()'s flag arg, which has that type. Of course, it's an arithmetic macro, so it doesn't actually have a return type.
ok? Index: share/man/man9/uvm.9 =================================================================== RCS file: /cvs/src/share/man/man9/uvm.9,v retrieving revision 1.61 diff -u -p -r1.61 uvm.9 --- share/man/man9/uvm.9 30 Oct 2015 04:21:42 -0000 1.61 +++ share/man/man9/uvm.9 5 Nov 2015 04:14:30 -0000 @@ -147,7 +147,7 @@ function initialises the swap subsystem. .Fn uvm_uarea_alloc "void" .Ft void .Fn uvm_uarea_free "struct proc *p" -.Ft int +.Ft uvm_flag_t .Fn UVM_MAPFLAG "vm_prot_t prot" "vm_prot_t maxprot" "vm_inherit_t inh" "int advice" "int flags" .nr nS 0 .Pp