Print this page
use NULL capable segop as a shorthand for no-capabilities
Instead of forcing every segment driver to implement a dummy "return 0"
function, handle NULL capable segop function pointer as "no copabilities
supported" shorthand.

*** 86,96 **** static void segmap_dump(struct seg *seg); static int segmap_pagelock(struct seg *seg, caddr_t addr, size_t len, struct page ***ppp, enum lock_type type, enum seg_rw rw); static int segmap_getmemid(struct seg *seg, caddr_t addr, memid_t *memidp); - static int segmap_capable(struct seg *seg, segcapability_t capability); /* segkpm support */ static caddr_t segmap_pagecreate_kpm(struct seg *, vnode_t *, u_offset_t, struct smap *, enum seg_rw); struct smap *get_smap_kpm(caddr_t, page_t **); --- 86,95 ----
*** 106,116 **** .gettype = segmap_gettype, .getvp = segmap_getvp, .dump = segmap_dump, .pagelock = segmap_pagelock, .getmemid = segmap_getmemid, - .capable = segmap_capable, }; /* * Private segmap routines. */ --- 105,114 ----
*** 2166,2182 **** memidp->val[0] = (uintptr_t)smd->smd_sm->sm_vp; memidp->val[1] = smd->smd_sm->sm_off + (uintptr_t)(addr - seg->s_base); return (0); } - /*ARGSUSED*/ - static int - segmap_capable(struct seg *seg, segcapability_t capability) - { - return (0); - } - #ifdef SEGKPM_SUPPORT /* * segkpm support routines --- 2164,2173 ----