1837 }
1838
1839 /*
1840 * Return swap reserved by a segment backing a private mapping.
1841 */
1842 size_t
1843 seg_swresv(struct seg *seg)
1844 {
1845 struct segvn_data *svd;
1846 size_t swap = 0;
1847
1848 if (seg->s_ops == &segvn_ops) {
1849 svd = (struct segvn_data *)seg->s_data;
1850 if (svd->type == MAP_PRIVATE && svd->swresv > 0)
1851 swap = svd->swresv;
1852 }
1853 return (swap);
1854 }
1855
1856 /*
1857 * General not supported function for segop_inherit
1858 */
1859 /* ARGSUSED */
1860 int
1861 seg_inherit_notsup(struct seg *seg, caddr_t addr, size_t len, uint_t op)
1862 {
1863 return (ENOTSUP);
1864 }
1865
1866 /*
1867 * segop wrappers
1868 */
1869 int
1870 segop_dup(struct seg *seg, struct seg *new)
1871 {
1872 VERIFY3P(seg->s_ops->dup, !=, NULL);
1873
1874 return (seg->s_ops->dup(seg, new));
1875 }
1876
1877 int
1878 segop_unmap(struct seg *seg, caddr_t addr, size_t len)
1879 {
1880 VERIFY3P(seg->s_ops->unmap, !=, NULL);
1881
1882 return (seg->s_ops->unmap(seg, addr, len));
1883 }
1884
1885 void
1886 segop_free(struct seg *seg)
|
1837 }
1838
1839 /*
1840 * Return swap reserved by a segment backing a private mapping.
1841 */
1842 size_t
1843 seg_swresv(struct seg *seg)
1844 {
1845 struct segvn_data *svd;
1846 size_t swap = 0;
1847
1848 if (seg->s_ops == &segvn_ops) {
1849 svd = (struct segvn_data *)seg->s_data;
1850 if (svd->type == MAP_PRIVATE && svd->swresv > 0)
1851 swap = svd->swresv;
1852 }
1853 return (swap);
1854 }
1855
1856 /*
1857 * segop wrappers
1858 */
1859 int
1860 segop_dup(struct seg *seg, struct seg *new)
1861 {
1862 VERIFY3P(seg->s_ops->dup, !=, NULL);
1863
1864 return (seg->s_ops->dup(seg, new));
1865 }
1866
1867 int
1868 segop_unmap(struct seg *seg, caddr_t addr, size_t len)
1869 {
1870 VERIFY3P(seg->s_ops->unmap, !=, NULL);
1871
1872 return (seg->s_ops->unmap(seg, addr, len));
1873 }
1874
1875 void
1876 segop_free(struct seg *seg)
|