Date: Sun, 20 Oct 2019 10:42:23 +0200 From: Gary Jennejohn <gljennjohn@gmail.com> To: Clay Daniels <clay.daniels.jr@gmail.com> Cc: Evilham <contact@evilham.com>, "freebsd-current@freebsd.org" <freebsd-current@freebsd.org> Subject: Re: r353072 > r353427 > r353709 Message-ID: <20191020104223.4ac03a5e@ernst.home> In-Reply-To: <f187f806-11fa-0dea-b97a-109350ea38ae@gmail.com> References: <CAGLDxTXwhZT-VC63d16ZGjKozezC=J5tsoKDh7BBfp0zsb8yCQ@mail.gmail.com> <4948bdbf-f79c-482b-87f5-e0f72c527b19@yggdrasil.evilham.com> <f187f806-11fa-0dea-b97a-109350ea38ae@gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, 19 Oct 2019 22:07:52 -0500 Clay Daniels <clay.daniels.jr@gmail.com> wrote: > On 10/19/19 4:54 AM, Evilham wrote: > > Have you seen the recent threads about this? > > Particularly this with some steps that worked-for-me (tm): > > https://lists.freebsd.org/pipermail/freebsd-current/2019-October074660.html > > > > -- > > Evilham > > i looked at the patch__ & made a file which says: > > diff --git a/linuxkpi/gplv2/src/linux_page.c > b/linuxkpi/gplv2/src/linux_page.c > index e2b85c45c..060ae85ed 100644 > --- a/linuxkpi/gplv2/src/linux_page.c > +++ b/linuxkpi/gplv2/src/linux_page.c > @@ -239,7 +239,7 @@ retry: > ________ ______ ______ page = vm_page_lookup(devobj, i); > ________ ______ ______ if (page == NULL) > ________ ______ ______ ______ continue; > -______ ______ ______ if (vm_page_sleep_if_busy(page, "linuxkpi")) > +______ ______ ______ if (!vm_page_busy_acquire(page, VM_ALLOC_WAITFAIL)) > ________ ______ ______ ______ goto retry; > ________ ______ ______ cdev_pager_free_page(devobj, page); > ________ ______ } > > Not knowing much about patching, I decided to locate linux_page.c and > did so on my install at: > This is a patch to a file used in the port itself, not to the kernel sources under /usr/src/sys. This should be pretty clear from this line in the referenced link to the posting in freebsd-current: # cat files/patch-linuxkpi_gplv2_src_linux__page.c In other words, the patch must be put in the files directory in the port itself. > /usr/src/sys/compat/lynuxpki/common/src/linux_page.c > > I figured if it was just a one line change, good old vi would do the > trick, but after carefully looking through my linux_page,c file, I found > what I think is the section, and this is what it says (my handwritten > transcription from the console screen of the freebsd computer to my > linux workstation) > > --- > retry: > ____ page = vm_page_alloc_contig(NULL, 0, req > __________ npages, 0, pmax, PAGE_SIZE, 0, VM_MEMATTR_DEFAULT); > ____ if (page == NULL) { > ____ ________ if (flags & M_WAITOK) { > ______ ____________ if (!vm_page_reclaim_config (req, > ______ ____________________ npages, 0, pmax, PAGE_SIZE, 0)) { > ______ ______ __________________ vm_wait(NULL); > ______ __________ } > ______ __________ FLAGS &= ~M_WAITOK; > ______ __________ go to retry; > ____________ } > ______________ return (NULL) > ________ } > } > --- > > Excuse the spacing. > > Anyway, I suspect I must have an updated version of linux_page.c but not > sure. What I might do is go ahead and go to the > /usr/ports/graphics/drm-kmod directory and make install clean, then load > xorg and see what happens. I'm going to have a bite of super first. > > Clay > > > _______________________________________________ > freebsd-current@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe@freebsd.org" -- Gary Jennejohn
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20191020104223.4ac03a5e>