Date: Mon, 21 Apr 2025 03:35:22 -0700 From: "Pat Maddox" <pat@patmaddox.com> To: "Cy Schubert" <Cy.Schubert@cschubert.com>, "Doug Moore" <dougm@freebsd.org> Cc: src-committers@freebsd.org, dev-commits-src-all@freebsd.org, dev-commits-src-main@freebsd.org, manu@freebsd.org Subject: Re: git: a3a88ed22cb1 - main - vm_page: drop prev and next Message-ID: <6e35f593-40d8-42f2-8fe3-c7a1afef2f73@app.fastmail.com> In-Reply-To: <20250421070908.65A1C202@slippy.cwsent.com> References: <202504181927.53IJRsoQ035803@gitrepo.freebsd.org> <20250421070908.65A1C202@slippy.cwsent.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, Apr 21, 2025, at 12:09 AM, Cy Schubert wrote: > In message <202504181927.53IJRsoQ035803@gitrepo.freebsd.org>, Doug Moore > writes > : >> The branch main has been updated by dougm: >> >> URL: https://cgit.FreeBSD.org/src/commit/?id=a3a88ed22cb111da3336f64ec3ba5815 >> a8278f88 >> >> commit a3a88ed22cb111da3336f64ec3ba5815a8278f88 >> Author: Doug Moore <dougm@FreeBSD.org> >> AuthorDate: 2025-04-18 19:26:56 +0000 >> Commit: Doug Moore <dougm@FreeBSD.org> >> CommitDate: 2025-04-18 19:26:56 +0000 >> >> vm_page: drop prev and next >> >> Functions vm_page_prev() and vm_page_next() are no longer >> invoked. Remove them. >> >> Reviewed by: kib >> Differential Revision: https://reviews.freebsd.org/D49892 >> --- >> sys/vm/vm_page.c | 40 ---------------------------------------- >> sys/vm/vm_page.h | 2 -- >> 2 files changed, 42 deletions(-) >> >> diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c >> index 65d278caf3fd..db91b7bab2ab 100644 >> --- a/sys/vm/vm_page.c >> +++ b/sys/vm/vm_page.c >> @@ -1894,46 +1894,6 @@ vm_page_find_least(vm_object_t object, vm_pindex_t pin >> dex) >> return (m); >> } >> >> -/* >> - * Returns the given page's successor (by pindex) within the object if it is >> - * resident; if none is found, NULL is returned. >> - * >> - * The object must be locked. >> - */ >> -vm_page_t >> -vm_page_next(vm_page_t m) >> -{ >> - vm_page_t next; >> - >> - VM_OBJECT_ASSERT_LOCKED(m->object); >> - if ((next = TAILQ_NEXT(m, listq)) != NULL) { >> - MPASS(next->object == m->object); >> - if (next->pindex != m->pindex + 1) >> - next = NULL; >> - } >> - return (next); >> -} >> - >> -/* >> - * Returns the given page's predecessor (by pindex) within the object if it >> is >> - * resident; if none is found, NULL is returned. >> - * >> - * The object must be locked. >> - */ >> -vm_page_t >> -vm_page_prev(vm_page_t m) >> -{ >> - vm_page_t prev; >> - >> - VM_OBJECT_ASSERT_LOCKED(m->object); >> - if ((prev = TAILQ_PREV(m, pglist, listq)) != NULL) { >> - MPASS(prev->object == m->object); >> - if (prev->pindex != m->pindex - 1) >> - prev = NULL; >> - } >> - return (prev); >> -} >> - >> /* >> * Uses the page mnew as a replacement for an existing page at index >> * pindex which must be already present in the object. >> diff --git a/sys/vm/vm_page.h b/sys/vm/vm_page.h >> index 0a40b42ffb62..bf2e850612d7 100644 >> --- a/sys/vm/vm_page.h >> +++ b/sys/vm/vm_page.h >> @@ -664,12 +664,10 @@ bool vm_page_iter_rename(struct pctrie_iter *old_pages, >> vm_page_t m, >> void vm_page_launder(vm_page_t m); >> vm_page_t vm_page_lookup(vm_object_t, vm_pindex_t); >> vm_page_t vm_page_lookup_unlocked(vm_object_t, vm_pindex_t); >> -vm_page_t vm_page_next(vm_page_t m); >> void vm_page_pqbatch_drain(void); >> void vm_page_pqbatch_submit(vm_page_t m, uint8_t queue); >> bool vm_page_pqstate_commit(vm_page_t m, vm_page_astate_t *old, >> vm_page_astate_t new); >> -vm_page_t vm_page_prev(vm_page_t m); >> bool vm_page_ps_test(vm_page_t m, int psind, int flags, vm_page_t skip_m); >> void vm_page_putfake(vm_page_t m); >> void vm_page_readahead_finish(vm_page_t m); >> > > This breaks ports/graphics/drm-*-kmod. X will no longer start due to > missing vm_page_next(). > > cc: manu > > > -- > Cheers, > Cy Schubert <Cy.Schubert@cschubert.com> > FreeBSD UNIX: <cy@FreeBSD.org> Web: https://FreeBSD.org > NTP: <cy@nwtime.org> Web: https://nwtime.org > > e^(i*pi)+1=0 Also drm-kmod cannot build: --- i915_gem_mman.o --- /wrkdirs/usr/ports/graphics/drm-61-kmod/work/drm-kmod-drm_v6.1.128_1/drivers/gpu/drm/i915/gem/i915_gem_mman.c:171:77: error: call to undeclared function 'vm_page_next'; ISO C99 and later do not support implicit function declarations [-Werror,-Wimplicit-function-declaration] 171 | for (vm_page_t page = vm_page_find_least(vmobj, 0); page != NULL; page = vm_page_next(page)) { | ^ --- intel_guc_log_debugfs.o --- --- i915_gem_mman.o --- /wrkdirs/usr/ports/graphics/drm-61-kmod/work/drm-kmod-drm_v6.1.128_1/drivers/gpu/drm/i915/gem/i915_gem_mman.c:171:75: error: incompatible integer to pointer conversion assigning to 'vm_page_t' (aka 'struct vm_page *') from 'int' [-Wint-conversion] 171 | for (vm_page_t page = vm_page_find_least(vmobj, 0); page != NULL; page = vm_page_next(page)) { | ^ ~~~~~~~~~~~~~~~~~~ --- intel_guc_log_debugfs.o ---
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?6e35f593-40d8-42f2-8fe3-c7a1afef2f73>