return NULL on error
rename cg_subsystem