Print this page
use NULL dump segop as a shorthand for no-op
Instead of forcing every segment driver to implement a dummy function that
does nothing, handle NULL dump segop function pointer as a no-op shorthand.

*** 104,114 **** static u_offset_t segspt_shmgetoffset(struct seg *seg, caddr_t addr); static int segspt_shmgettype(struct seg *seg, caddr_t addr); static int segspt_shmgetvp(struct seg *seg, caddr_t addr, struct vnode **vpp); static int segspt_shmadvise(struct seg *seg, caddr_t addr, size_t len, uint_t behav); - static void segspt_shmdump(struct seg *seg); static int segspt_shmpagelock(struct seg *, caddr_t, size_t, struct page ***, enum lock_type, enum seg_rw); static int segspt_shmgetmemid(struct seg *, caddr_t, memid_t *); static lgrp_mem_policy_info_t *segspt_shmgetpolicy(struct seg *, caddr_t); --- 104,113 ----
*** 127,137 **** .getprot = segspt_shmgetprot, .getoffset = segspt_shmgetoffset, .gettype = segspt_shmgettype, .getvp = segspt_shmgetvp, .advise = segspt_shmadvise, - .dump = segspt_shmdump, .pagelock = segspt_shmpagelock, .getmemid = segspt_shmgetmemid, .getpolicy = segspt_shmgetpolicy, }; --- 126,135 ----
*** 2947,2963 **** } return (0); } - /*ARGSUSED*/ - void - segspt_shmdump(struct seg *seg) - { - /* no-op for ISM segment */ - } - /* * get a memory ID for an addr in a given segment */ static int segspt_shmgetmemid(struct seg *seg, caddr_t addr, memid_t *memidp) --- 2945,2954 ----