added basic support for userdata structure, currently no write-back
added userdata writeback after returning from opt_proc userland call