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