uipc_syscalls.c (9322078275bcc724bd26f03a764a7ba0ab394d6d) uipc_syscalls.c (ddeb5b242e0c6d90043f2452f7cd45977359d0e7)
1/*
2 * Copyright (c) 1982, 1986, 1989, 1990, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * sendfile(2) and related extensions:
6 * Copyright (c) 1998, David Greenman. All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 1852 unchanged lines hidden (view full) ---

1861 vm_page_busy(pg);
1862 vm_page_free(pg);
1863 }
1864 vm_page_unlock_queues();
1865 VM_OBJECT_UNLOCK(obj);
1866 sbunlock(&so->so_snd);
1867 goto done;
1868 }
1/*
2 * Copyright (c) 1982, 1986, 1989, 1990, 1993
3 * The Regents of the University of California. All rights reserved.
4 *
5 * sendfile(2) and related extensions:
6 * Copyright (c) 1998, David Greenman. All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 1852 unchanged lines hidden (view full) ---

1861 vm_page_busy(pg);
1862 vm_page_free(pg);
1863 }
1864 vm_page_unlock_queues();
1865 VM_OBJECT_UNLOCK(obj);
1866 sbunlock(&so->so_snd);
1867 goto done;
1868 }
1869 mbstat.sf_iocnt++;
1869 } else
1870 VM_OBJECT_UNLOCK(obj);
1871 vm_page_unlock_queues();
1872
1873 /*
1874 * Get a sendfile buf. We usually wait as long as necessary,
1875 * but this wait can be interrupted.
1876 */
1877 if ((sf = sf_buf_alloc(pg)) == NULL) {
1870 } else
1871 VM_OBJECT_UNLOCK(obj);
1872 vm_page_unlock_queues();
1873
1874 /*
1875 * Get a sendfile buf. We usually wait as long as necessary,
1876 * but this wait can be interrupted.
1877 */
1878 if ((sf = sf_buf_alloc(pg)) == NULL) {
1879 mbstat.sf_allocfail++;
1878 vm_page_lock_queues();
1879 vm_page_unwire(pg, 0);
1880 if (pg->wire_count == 0 && pg->object == NULL)
1881 vm_page_free(pg);
1882 vm_page_unlock_queues();
1883 sbunlock(&so->so_snd);
1884 error = EINTR;
1885 goto done;

--- 124 unchanged lines hidden ---
1880 vm_page_lock_queues();
1881 vm_page_unwire(pg, 0);
1882 if (pg->wire_count == 0 && pg->object == NULL)
1883 vm_page_free(pg);
1884 vm_page_unlock_queues();
1885 sbunlock(&so->so_snd);
1886 error = EINTR;
1887 goto done;

--- 124 unchanged lines hidden ---