Lines Matching refs:hp

560 	helper_t *hp, *hpend;  in dump_update_clevel()  local
575 for (hp = old->helper; hp != hpend; hp++) { in dump_update_clevel()
576 if (hp->lzbuf != NULL) in dump_update_clevel()
577 kmem_free(hp->lzbuf, PAGESIZE); in dump_update_clevel()
578 if (hp->page != NULL) in dump_update_clevel()
579 kmem_free(hp->page, PAGESIZE); in dump_update_clevel()
652 for (hp = new->helper; hp != hpend; hp++) { in dump_update_clevel()
653 hp->tag = tag++; in dump_update_clevel()
654 if (hp < &new->helper[MINHELPERS]) { in dump_update_clevel()
655 hp->lzbuf = kmem_alloc(PAGESIZE, KM_SLEEP); in dump_update_clevel()
656 hp->page = kmem_alloc(PAGESIZE, KM_SLEEP); in dump_update_clevel()
907 helper_t *hp, *ohp; in dumpsys_get_maxmem() local
1035 for (hp = cfg->helper; hp < endhp; hp++) { in dumpsys_get_maxmem()
1038 if (hp->page == NULL) { in dumpsys_get_maxmem()
1043 hp->page = cfg->maxvm + sz; in dumpsys_get_maxmem()
1045 hp->lzbuf = cfg->maxvm + sz; in dumpsys_get_maxmem()
1050 hp->page = ohp->lzbuf; in dumpsys_get_maxmem()
1058 hp->page = cfg->maxvm + sz; in dumpsys_get_maxmem()
1084 hp->page = NULL; in dumpsys_get_maxmem()
1087 hp->bzstream.opaque = &sz; in dumpsys_get_maxmem()
1088 hp->bzstream.bzalloc = dumpbzalloc; in dumpsys_get_maxmem()
1089 hp->bzstream.bzfree = dumpbzfree; in dumpsys_get_maxmem()
1090 (void) BZ2_bzCompressInit(&hp->bzstream, in dumpsys_get_maxmem()
1092 hp->bzstream.opaque = NULL; in dumpsys_get_maxmem()
1762 dumpsys_errmsg(helper_t *hp, const char *fmt, ...) in dumpsys_errmsg() argument
1764 dumpsync_t *ds = hp->ds; in dumpsys_errmsg()
1765 cbuf_t *cp = hp->cperr; in dumpsys_errmsg()
1768 if (hp->helper == MAINHELPER) { in dumpsys_errmsg()
1781 hp->cperr = NULL; in dumpsys_errmsg()
1784 if (hp->cperr == NULL) { in dumpsys_errmsg()
1786 hp->cperr = cp; in dumpsys_errmsg()
1795 hp->cperr = NULL; in dumpsys_errmsg()
1806 dumpsys_swrite(helper_t *hp, cbuf_t *cp, size_t used) in dumpsys_swrite() argument
1808 dumpsync_t *ds = hp->ds; in dumpsys_swrite()
1810 if (hp->helper == MAINHELPER) { in dumpsys_swrite()
1829 dumpsys_copy_page(helper_t *hp, int offset) in dumpsys_copy_page() argument
1831 cbuf_t *cp = hp->cpin; in dumpsys_copy_page()
1837 ueoff = dump_pagecopy(cp->buf + cp->off + offset, hp->page); in dumpsys_copy_page()
1843 dumpsys_errmsg(hp, "cpu %d: memory error at PA 0x%08x.%08x\n", in dumpsys_copy_page()
1868 dumpsys_sread(helper_t *hp) in dumpsys_sread() argument
1870 dumpsync_t *ds = hp->ds; in dumpsys_sread()
1876 if (hp->cpin == NULL) { in dumpsys_sread()
1877 HRSTART(hp->perpage, inwait); in dumpsys_sread()
1881 hp->cpin = CQ_GET(helperq); in dumpsys_sread()
1888 if (hp->cpin == NULL) in dumpsys_sread()
1901 hp->cpin->used = 0; in dumpsys_sread()
1902 CQ_PUT(mainq, hp->cpin, CBUF_USEDMAP); in dumpsys_sread()
1904 HRSTOP(hp->perpage, inwait); in dumpsys_sread()
1907 if (hp->cpin == NULL) in dumpsys_sread()
1911 hp->in = 0; in dumpsys_sread()
1914 hp->used = 0; in dumpsys_sread()
1918 if (hp->used < hp->cpin->used) { in dumpsys_sread()
1924 ASSERT(hp->in != -1); in dumpsys_sread()
1925 HRSTART(hp->perpage, copy); in dumpsys_sread()
1926 hp->in = dumpsys_copy_page(hp, hp->in); in dumpsys_sread()
1927 hp->used += PAGESIZE; in dumpsys_sread()
1928 HRSTOP(hp->perpage, copy); in dumpsys_sread()
1937 if (panicstr && hp->helper != MAINHELPER) in dumpsys_sread()
1939 hp->cpin->buf, hp->cpin->size); in dumpsys_sread()
1940 dumpsys_errmsg(hp, NULL); in dumpsys_sread()
1941 CQ_PUT(mainq, hp->cpin, CBUF_USEDMAP); in dumpsys_sread()
1942 hp->cpin = NULL; in dumpsys_sread()
1946 return (hp->cpin != NULL); in dumpsys_sread()
1956 dumpsys_bzrun(helper_t *hp, void *buf, size_t size, int mode) in dumpsys_bzrun() argument
1958 dumpsync_t *ds = hp->ds; in dumpsys_bzrun()
1960 bz_stream *ps = &hp->bzstream; in dumpsys_bzrun()
1979 if (hp->cpout == NULL) { in dumpsys_bzrun()
1980 HRSTART(hp->perpage, outwait); in dumpsys_bzrun()
1981 hp->cpout = CQ_GET(freebufq); in dumpsys_bzrun()
1982 HRSTOP(hp->perpage, outwait); in dumpsys_bzrun()
1983 ps->avail_out = hp->cpout->size - CSIZE; in dumpsys_bzrun()
1984 ps->next_out = hp->cpout->buf + CSIZE; in dumpsys_bzrun()
1988 HRSTART(hp->perpage, compress); in dumpsys_bzrun()
1990 HRSTOP(hp->perpage, compress); in dumpsys_bzrun()
1994 dumpsys_errmsg(hp, "%d: BZ_RUN error %s at page %lx\n", in dumpsys_bzrun()
1995 hp->helper, BZ2_bzErrorString(rc), in dumpsys_bzrun()
1996 hp->cpin->pagenum); in dumpsys_bzrun()
2002 csize = hp->cpout->size - CSIZE - ps->avail_out; in dumpsys_bzrun()
2003 cs = DUMP_SET_TAG(csize, hp->tag); in dumpsys_bzrun()
2005 (void) memcpy(hp->cpout->buf, &cs, CSIZE); in dumpsys_bzrun()
2006 dumpsys_swrite(hp, hp->cpout, csize + CSIZE); in dumpsys_bzrun()
2007 hp->cpout = NULL; in dumpsys_bzrun()
2016 dumpsys_errmsg(hp, "%d: BZ_FINISH error %s\n", in dumpsys_bzrun()
2017 hp->helper, BZ2_bzErrorString(rc)); in dumpsys_bzrun()
2027 (void) BZ2_bzCompressReset(&hp->bzstream); in dumpsys_bzrun()
2030 if (hp->cpout != NULL) { in dumpsys_bzrun()
2031 hp->cpout->used = 0; in dumpsys_bzrun()
2032 CQ_PUT(mainq, hp->cpout, CBUF_ERRMSG); in dumpsys_bzrun()
2033 hp->cpout = NULL; in dumpsys_bzrun()
2039 dumpsys_bz2compress(helper_t *hp) in dumpsys_bz2compress() argument
2041 dumpsync_t *ds = hp->ds; in dumpsys_bz2compress()
2047 hp->cpin = NULL; in dumpsys_bz2compress()
2048 hp->cpout = NULL; in dumpsys_bz2compress()
2049 hp->cperr = NULL; in dumpsys_bz2compress()
2050 hp->in = 0; in dumpsys_bz2compress()
2051 hp->out = 0; in dumpsys_bz2compress()
2052 hp->bzstream.avail_in = 0; in dumpsys_bz2compress()
2058 while (dumpsys_sread(hp)) { in dumpsys_bz2compress()
2059 if (sh.stream_pagenum != hp->cpin->pagenum) { in dumpsys_bz2compress()
2060 sh.stream_pagenum = hp->cpin->pagenum; in dumpsys_bz2compress()
2061 sh.stream_npages = btop(hp->cpin->used); in dumpsys_bz2compress()
2062 dumpsys_bzrun(hp, &sh, sizeof (sh), BZ_RUN); in dumpsys_bz2compress()
2064 dumpsys_bzrun(hp, hp->page, PAGESIZE, 0); in dumpsys_bz2compress()
2069 dumpsys_bzrun(hp, NULL, 0, BZ_FINISH); in dumpsys_bz2compress()
2070 dumpsys_errmsg(hp, NULL); in dumpsys_bz2compress()
2073 ASSERT(hp->cpin == NULL && hp->cpout == NULL && hp->cperr == NULL); in dumpsys_bz2compress()
2089 dumpsys_lzjbrun(helper_t *hp, size_t csize, void *buf, size_t size) in dumpsys_lzjbrun() argument
2091 dumpsync_t *ds = hp->ds; in dumpsys_lzjbrun()
2097 if (size == 0 && hp->cpout == NULL) in dumpsys_lzjbrun()
2102 hp->cpout != NULL && hp->out + osize > hp->cpout->size) { in dumpsys_lzjbrun()
2105 cs = DUMP_SET_TAG(hp->out - CSIZE, hp->tag); in dumpsys_lzjbrun()
2106 (void) memcpy(hp->cpout->buf, &cs, CSIZE); in dumpsys_lzjbrun()
2109 dumpsys_swrite(hp, hp->cpout, hp->out); in dumpsys_lzjbrun()
2112 hp->cpout = NULL; in dumpsys_lzjbrun()
2120 if (hp->cpout == NULL) { in dumpsys_lzjbrun()
2121 HRSTART(hp->perpage, outwait); in dumpsys_lzjbrun()
2122 hp->cpout = CQ_GET(freebufq); in dumpsys_lzjbrun()
2123 HRSTOP(hp->perpage, outwait); in dumpsys_lzjbrun()
2124 hp->out = CSIZE; in dumpsys_lzjbrun()
2130 (void) memcpy(hp->cpout->buf + hp->out, &cs, CSIZE); in dumpsys_lzjbrun()
2131 hp->out += CSIZE; in dumpsys_lzjbrun()
2135 (void) memcpy(hp->cpout->buf + hp->out, buf, size); in dumpsys_lzjbrun()
2136 hp->out += size; in dumpsys_lzjbrun()
2140 dumpsys_lzjbcompress(helper_t *hp) in dumpsys_lzjbcompress() argument
2142 dumpsync_t *ds = hp->ds; in dumpsys_lzjbcompress()
2149 hp->cpin = NULL; in dumpsys_lzjbcompress()
2150 hp->cpout = NULL; in dumpsys_lzjbcompress()
2151 hp->cperr = NULL; in dumpsys_lzjbcompress()
2152 hp->in = 0; in dumpsys_lzjbcompress()
2153 hp->out = 0; in dumpsys_lzjbcompress()
2159 while (dumpsys_sread(hp)) { in dumpsys_lzjbcompress()
2162 if (sh.stream_pagenum != hp->cpin->pagenum) { in dumpsys_lzjbcompress()
2163 sh.stream_pagenum = hp->cpin->pagenum; in dumpsys_lzjbcompress()
2164 sh.stream_npages = btop(hp->cpin->used); in dumpsys_lzjbcompress()
2165 dumpsys_lzjbrun(hp, 0, &sh, sizeof (sh)); in dumpsys_lzjbcompress()
2169 HRSTART(hp->perpage, compress); in dumpsys_lzjbcompress()
2170 csize = compress(hp->page, hp->lzbuf, PAGESIZE); in dumpsys_lzjbcompress()
2171 HRSTOP(hp->perpage, compress); in dumpsys_lzjbcompress()
2175 dumpsys_lzjbrun(hp, csize, hp->lzbuf, csize); in dumpsys_lzjbcompress()
2180 dumpsys_lzjbrun(hp, 0, NULL, 0); in dumpsys_lzjbcompress()
2181 dumpsys_errmsg(hp, NULL); in dumpsys_lzjbcompress()
2184 ASSERT(hp->cpin == NULL && hp->cpout == NULL && hp->cperr == NULL); in dumpsys_lzjbcompress()
2215 helper_t *hp, *hpend = &dumpcfg.helper[dumpcfg.nhelper]; in dumpsys_helper() local
2217 for (hp = dumpcfg.helper; hp != hpend; hp++) { in dumpsys_helper()
2218 if (hp->helper == FREEHELPER) { in dumpsys_helper()
2219 hp->helper = CPU->cpu_id; in dumpsys_helper()
2225 dumpsys_lzjbcompress(hp); in dumpsys_helper()
2227 dumpsys_bz2compress(hp); in dumpsys_helper()
2229 hp->helper = DONEHELPER; in dumpsys_helper()
2262 helper_t *hp = arg; in dumpsys_live_helper() local
2266 dumpsys_lzjbcompress(hp); in dumpsys_live_helper()
2268 dumpsys_bz2compress(hp); in dumpsys_live_helper()
2275 dumpsys_lzjb_page(helper_t *hp, cbuf_t *cp) in dumpsys_lzjb_page() argument
2277 dumpsync_t *ds = hp->ds; in dumpsys_lzjb_page()
2280 hp->helper = MAINHELPER; in dumpsys_lzjb_page()
2281 hp->in = 0; in dumpsys_lzjb_page()
2282 hp->used = 0; in dumpsys_lzjb_page()
2283 hp->cpin = cp; in dumpsys_lzjb_page()
2284 while (hp->used < cp->used) { in dumpsys_lzjb_page()
2285 HRSTART(hp->perpage, copy); in dumpsys_lzjb_page()
2286 hp->in = dumpsys_copy_page(hp, hp->in); in dumpsys_lzjb_page()
2287 hp->used += PAGESIZE; in dumpsys_lzjb_page()
2288 HRSTOP(hp->perpage, copy); in dumpsys_lzjb_page()
2290 HRSTART(hp->perpage, compress); in dumpsys_lzjb_page()
2291 csize = compress(hp->page, hp->lzbuf, PAGESIZE); in dumpsys_lzjb_page()
2292 HRSTOP(hp->perpage, compress); in dumpsys_lzjb_page()
2294 HRSTART(hp->perpage, write); in dumpsys_lzjb_page()
2296 dumpvp_write(hp->lzbuf, csize); in dumpsys_lzjb_page()
2297 HRSTOP(hp->perpage, write); in dumpsys_lzjb_page()
2299 CQ_PUT(mainq, hp->cpin, CBUF_USEDMAP); in dumpsys_lzjb_page()
2300 hp->cpin = NULL; in dumpsys_lzjb_page()
2566 helper_t *hp, *hpend = &cfg->helper[cfg->nhelper]; in dumpsys_metrics() local
2634 for (hp = cfg->helper; hp != hpend; hp++) { in dumpsys_metrics()
2635 #define PERPAGE(x) ds->perpage.x += hp->perpage.x; in dumpsys_metrics()
2672 helper_t *hp, *hpend = &dumpcfg.helper[dumpcfg.nhelper]; in dumpsys() local
2884 for (hp = dumpcfg.helper; hp != hpend; hp++) { in dumpsys()
2885 if (hp->page == NULL) { in dumpsys()
2886 hp->helper = DONEHELPER; in dumpsys()
2890 hp->helper = FREEHELPER; in dumpsys()
2891 hp->taskqid = 0; in dumpsys()
2892 hp->ds = ds; in dumpsys()
2893 bzero(&hp->perpage, sizeof (hp->perpage)); in dumpsys()
2895 (void) BZ2_bzCompressReset(&hp->bzstream); in dumpsys()
2922 for (hp = dumpcfg.helper; hp != hpend; hp++) { in dumpsys()
2923 if (hp->page == NULL) in dumpsys()
2925 hp->helper = hp - dumpcfg.helper; in dumpsys()
2926 hp->taskqid = taskq_dispatch(livetaskq, in dumpsys()
2927 dumpsys_live_helper, (void *)hp, TQ_NOSLEEP); in dumpsys()