Re: CVS commit: src/sys/kern
Le 27/06/2019 à 20:56, Christos Zoulas a écrit : On Jun 27, 8:30pm, m...@m00nbsd.net (Maxime Villard) wrote: -- Subject: Re: CVS commit: src/sys/kern | Le 27/06/2019 à 19:07, Christos Zoulas a écrit : | > Module Name: src | > Committed By:christos | > Date:Thu Jun 27 17:07:51 UTC 2019 | > | > Modified Files: | > src/sys/kern: kern_exec.c | > | > Log Message: | > Return an error if the path was too long. Pointed out by maxv | > | > | > To generate a diff of this commit: | > cvs rdiff -u -r1.474 -r1.475 src/sys/kern/kern_exec.c | > | > Please note that diffs are not public domain; they are subject to the | > copyright notices on the relevant files. | | Did you just introduce an even bigger bug? I don't know, is this the most efficient way to communicate it if I did? This got to be a fucking joke.
Re: CVS commit: src/sys/kern
Le 27/06/2019 à 21:56, Maxime Villard a écrit : Module Name:src Committed By: maxv Date: Thu Jun 27 19:56:10 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: Fix this fucking shit once and for all, for fuck's sake. To generate a diff of this commit: cvs rdiff -u -r1.476 -r1.477 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. When I see this cocktail of systematic carelessness, gross incompetence and glaring lack of engineering spirit in writing software, I can only understand why modern airplanes crash. Christos' commit access should be revoked.
Re: CVS commit: src/sys/kern
In article <20190627195610.c4be7f...@cvs.netbsd.org>, Maxime Villard wrote: >-=-=-=-=-=- > >Module Name: src >Committed By: maxv >Date: Thu Jun 27 19:56:10 UTC 2019 > >Modified Files: > src/sys/kern: kern_exec.c > >Log Message: >Fix this fucking shit once and for all, for fuck's sake. This is exactly what I was referring to about poor communication in my previous replay. A better commit message would have been: Actually set the error returned. The previous commit made things worse because the function would return a 0 and free the pathbuf crashing the kernel. This would have been informative, non-insulting and probably would have taught the author to be more careful in the future. Best, christos
Re: CVS commit: src/sys/kern
On Jun 27, 9:26pm, m...@m00nbsd.net (Maxime Villard) wrote: -- Subject: Re: CVS commit: src/sys/kern | > I don't know, is this the most efficient way to communicate it if I did? | | This got to be a fucking joke. Well, you know the bug, and I think it is more valuable for me to spend time trying to get you to communicate better instead of reading the code. Reading the code and finding that one bug will not correct the issue that you choose to communicate in an oblique and hostile manner. christos
re: CVS commit: src/sys/compat/sys
> Always include the 32 bit structure and definitions on _LP64 regardless > of compat32 being on or off, because we want the headers to work when > compiling modular kernels. Of course the 32 bit structs do not make sense > on platforms that don't have 32 bit modes (alpha), but we don't have > a define for that and it does not hurt. i've been using _LP64 && !__alpha__ for this when it strikes. sub-optimal, but also easy to grep and find :-) .mrg.
CVS commit: src/sys/dev/usb
Module Name:src Committed By: mrg Date: Fri Jun 28 01:57:43 UTC 2019 Modified Files: src/sys/dev/usb: if_axen.c if_cdce.c if_ure.c Log Message: more smp cleanup for ure(4)/axen(4)/cdce(4): - convert IFF_ALLMULTI to ETHER_F_ALLMULTI, using ETHER_LOCK() - remove IFF_OACTIVE use, and simply check the ring count in start - assert/take more locks - XXX: IFF_RUNNING is not properly protected (all driver problem) - fix axen_timer setting so it actually runs - document a locking issue in stop callback: stop is called with the softc lock held, but the lock order in all other places is ifnet -> softc -> rx -> tx, so taking ifnet lock when softc lock is held would be problematic - in rxeof check for stopping/dying more often. i managed to trigger a pagefault in cdce_rxeof() when yanking an active device as it attempted to usbd_setup_xfer() on closed pipes. - add missing USBD_MPSAFE and cdce_stopping resetting for cdce(4) between this and other recent clean ups increase performance of these drivers mostly. some numbers (in mbit/sec): old:new: driver in out in+out in out in+out -- --- -- -- --- -- cdce39 32 44 38 33 54 axen44 34 45 48 37 42 ure 36 34 35 36 38 38 i'm not sure why axen drops a little with in+out. cdce is helped quite a lot, and ure a little. it is disappointing that ure does not outperform cdce -- it's the same actual hardware, and the device-specific (ure) should outperform the generic cdce driver... To generate a diff of this commit: cvs rdiff -u -r1.48 -r1.49 src/sys/dev/usb/if_axen.c cvs rdiff -u -r1.50 -r1.51 src/sys/dev/usb/if_cdce.c cvs rdiff -u -r1.12 -r1.13 src/sys/dev/usb/if_ure.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/usb/if_axen.c diff -u src/sys/dev/usb/if_axen.c:1.48 src/sys/dev/usb/if_axen.c:1.49 --- src/sys/dev/usb/if_axen.c:1.48 Sat Jun 22 10:58:39 2019 +++ src/sys/dev/usb/if_axen.c Fri Jun 28 01:57:43 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: if_axen.c,v 1.48 2019/06/22 10:58:39 mrg Exp $ */ +/* $NetBSD: if_axen.c,v 1.49 2019/06/28 01:57:43 mrg Exp $ */ /* $OpenBSD: if_axen.c,v 1.3 2013/10/21 10:10:22 yuo Exp $ */ /* @@ -23,7 +23,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_axen.c,v 1.48 2019/06/22 10:58:39 mrg Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_axen.c,v 1.49 2019/06/28 01:57:43 mrg Exp $"); #ifdef _KERNEL_OPT #include "opt_inet.h" @@ -455,12 +455,14 @@ axen_iff_locked(struct axen_softc *sc) rxmode = le16toh(wval); rxmode &= ~(AXEN_RXCTL_ACPT_ALL_MCAST | AXEN_RXCTL_PROMISC | AXEN_RXCTL_ACPT_MCAST); - ifp->if_flags &= ~IFF_ALLMULTI; if (ifp->if_flags & IFF_PROMISC) { DPRINTF(("%s: promisc\n", device_xname(sc->axen_dev))); rxmode |= AXEN_RXCTL_PROMISC; -allmulti: ifp->if_flags |= IFF_ALLMULTI; +allmulti: + ETHER_LOCK(ec); + ec->ec_flags |= ETHER_F_ALLMULTI; + ETHER_UNLOCK(ec); rxmode |= AXEN_RXCTL_ACPT_ALL_MCAST /* | AXEN_RXCTL_ACPT_PHY_MCAST */; } else { @@ -468,6 +470,8 @@ allmulti: ifp->if_flags |= IFF_ALLMULTI; DPRINTF(("%s: initializing hash table\n", device_xname(sc->axen_dev))); ETHER_LOCK(ec); + ec->ec_flags &= ~ETHER_F_ALLMULTI; + ETHER_FIRST_MULTI(step, ec, enm); while (enm != NULL) { if (memcmp(enm->enm_addrlo, enm->enm_addrhi, @@ -979,8 +983,11 @@ axen_detach(device_t self, int flags) usb_rem_task_wait(sc->axen_udev, >axen_tick_task, USB_TASKQ_DRIVER, NULL); - if (ifp->if_flags & IFF_RUNNING) + if (ifp->if_flags & IFF_RUNNING) { + IFNET_LOCK(ifp); axen_stop(ifp, 1); + IFNET_UNLOCK(ifp); + } mutex_enter(>axen_lock); sc->axen_refcnt--; @@ -1256,7 +1263,7 @@ axen_rxeof(struct usbd_xfer *xfer, void if_percpuq_enqueue((ifp)->if_percpuq, (m)); mutex_enter(>axen_rxlock); - if (sc->axen_stopping) { + if (sc->axen_dying || sc->axen_stopping) { mutex_exit(>axen_rxlock); return; } @@ -1274,6 +1281,11 @@ nextpkt: } while (pkt_count > 0); done: + if (sc->axen_dying || sc->axen_stopping) { + mutex_exit(>axen_rxlock); + return; + } + mutex_exit(>axen_rxlock); /* Setup new transfer. */ @@ -1351,7 +1363,6 @@ axen_txeof(struct usbd_xfer *xfer, void cd->axen_tx_cnt--; sc->axen_timer = 0; - ifp->if_flags &= ~IFF_OACTIVE; switch (status) { case USBD_NOT_STARTED: @@ -1489,6 +1500,7 @@ axen_encap(struct axen_softc *sc, struct /* Transmit */ err = usbd_transfer(c->axen_xfer); if (err != USBD_IN_PROGRESS) { + /* XXXSMP IFNET_LOCK */ axen_stop(ifp, 0); return EIO; } @@ -1505,11 +1517,9 @@ axen_start_locked(struct ifnet *ifp) int idx; KASSERT(mutex_owned(>axen_txlock)); + KASSERT(cd->axen_tx_cnt <= AXEN_TX_LIST_CNT); - if (sc->axen_link == 0) - return; - - if ((ifp->if_flags
CVS commit: src/sys/dev/usb
Module Name:src Committed By: mrg Date: Fri Jun 28 01:57:43 UTC 2019 Modified Files: src/sys/dev/usb: if_axen.c if_cdce.c if_ure.c Log Message: more smp cleanup for ure(4)/axen(4)/cdce(4): - convert IFF_ALLMULTI to ETHER_F_ALLMULTI, using ETHER_LOCK() - remove IFF_OACTIVE use, and simply check the ring count in start - assert/take more locks - XXX: IFF_RUNNING is not properly protected (all driver problem) - fix axen_timer setting so it actually runs - document a locking issue in stop callback: stop is called with the softc lock held, but the lock order in all other places is ifnet -> softc -> rx -> tx, so taking ifnet lock when softc lock is held would be problematic - in rxeof check for stopping/dying more often. i managed to trigger a pagefault in cdce_rxeof() when yanking an active device as it attempted to usbd_setup_xfer() on closed pipes. - add missing USBD_MPSAFE and cdce_stopping resetting for cdce(4) between this and other recent clean ups increase performance of these drivers mostly. some numbers (in mbit/sec): old:new: driver in out in+out in out in+out -- --- -- -- --- -- cdce39 32 44 38 33 54 axen44 34 45 48 37 42 ure 36 34 35 36 38 38 i'm not sure why axen drops a little with in+out. cdce is helped quite a lot, and ure a little. it is disappointing that ure does not outperform cdce -- it's the same actual hardware, and the device-specific (ure) should outperform the generic cdce driver... To generate a diff of this commit: cvs rdiff -u -r1.48 -r1.49 src/sys/dev/usb/if_axen.c cvs rdiff -u -r1.50 -r1.51 src/sys/dev/usb/if_cdce.c cvs rdiff -u -r1.12 -r1.13 src/sys/dev/usb/if_ure.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/kern
Module Name:src Committed By: maxv Date: Thu Jun 27 19:56:10 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: Fix this fucking shit once and for all, for fuck's sake. To generate a diff of this commit: cvs rdiff -u -r1.476 -r1.477 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/kern
Module Name:src Committed By: maxv Date: Thu Jun 27 19:56:10 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: Fix this fucking shit once and for all, for fuck's sake. To generate a diff of this commit: cvs rdiff -u -r1.476 -r1.477 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/kern/kern_exec.c diff -u src/sys/kern/kern_exec.c:1.476 src/sys/kern/kern_exec.c:1.477 --- src/sys/kern/kern_exec.c:1.476 Thu Jun 27 17:09:31 2019 +++ src/sys/kern/kern_exec.c Thu Jun 27 19:56:10 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_exec.c,v 1.476 2019/06/27 17:09:31 christos Exp $ */ +/* $NetBSD: kern_exec.c,v 1.477 2019/06/27 19:56:10 maxv Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -59,7 +59,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.476 2019/06/27 17:09:31 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.477 2019/06/27 19:56:10 maxv Exp $"); #include "opt_exec.h" #include "opt_execfmt.h" @@ -639,8 +639,10 @@ exec_makepathbuf(struct lwp *l, const ch } len++; - if (len + 1 >= MAXPATHLEN) + if (len + 1 >= MAXPATHLEN) { + error = ENAMETOOLONG; goto err; + } bp = path + MAXPATHLEN - len; memmove(bp, path, len); *(--bp) = '/';
Re: CVS commit: src/sys/kern
On Jun 27, 8:30pm, m...@m00nbsd.net (Maxime Villard) wrote: -- Subject: Re: CVS commit: src/sys/kern | Le 27/06/2019 à 19:07, Christos Zoulas a écrit : | > Module Name:src | > Committed By: christos | > Date: Thu Jun 27 17:07:51 UTC 2019 | > | > Modified Files: | > src/sys/kern: kern_exec.c | > | > Log Message: | > Return an error if the path was too long. Pointed out by maxv | > | > | > To generate a diff of this commit: | > cvs rdiff -u -r1.474 -r1.475 src/sys/kern/kern_exec.c | > | > Please note that diffs are not public domain; they are subject to the | > copyright notices on the relevant files. | | Did you just introduce an even bigger bug? I don't know, is this the most efficient way to communicate it if I did? christos
Re: CVS commit: src/sys/kern
Le 27/06/2019 à 19:07, Christos Zoulas a écrit : Module Name:src Committed By: christos Date: Thu Jun 27 17:07:51 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: Return an error if the path was too long. Pointed out by maxv To generate a diff of this commit: cvs rdiff -u -r1.474 -r1.475 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Did you just introduce an even bigger bug?
Re: CVS commit: src/sys/kern
Le 26/06/2019 à 23:21, Christos Zoulas a écrit : In article <20190626202859.b5ccef...@cvs.netbsd.org>, Maxime Villard wrote: -=-=-=-=-=- Module Name:src Committed By: maxv Date: Wed Jun 26 20:28:59 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: Remove useless debugging messages which achieved nothing but hiding bugs. I apologize for adding debugging code that made the code too complicated for you to understand and caused you to wrongly accuse me for forgetting to handle another error condition. Fortunately, you saw fit to remove this debugging code as you have done in the past. Eventually there will be no debugging code in the tree, because the code will be bug free and "obvious". Looks like I'm not the one who gets confused by debugging code after all. The rest of my answer will be off-list
Re: CVS commit: src/sys/kern
On Jun 27, 6:59pm, m...@m00nbsd.net (Maxime Villard) wrote: -- Subject: Re: CVS commit: src/sys/kern | Yet it seems pretty obvious to me. As you explained in the comment, the | function is supposed to return an absolute path. Here, however, it does | not return an absolute path: | | if (len + 1 >= MAXPATHLEN) | goto out; | | Nor does it initialize 'offs'. Notice, in addition, the "XXX: GCC" you put | in the caller, as if GCC was wrong in reporting that because of the | aforementioned branch, 'offs' wasn't getting initialized properly. | | So, has this become intentional, or not? Because it seems clear it wasn't | intentional when you initially committed it. No, it is not intentional and it is a bug. Thanks for pointing it out. Initially the code used to tolerate non-absolute paths (and being able to execute binaries without resolving the full path) but eventually having the full path became necessary (to support the sysctl to get the executable path for example, or for $ORIGIN). This was not enforced in exec_makepathbuf(), but it is enforced later pathexec() which makes little sense since if you can coerce exec_makepathbuf() to return a relative path you can potentially crash the kernel. Thanks for pointing it out and it would have been helpful if you communicated the specific issue in the first place. christos
Re: CVS commit: src/sys/arch/amd64/amd64
Le 27/06/2019 à 04:00, Christos Zoulas a écrit : Module Name:src Committed By: christos Date: Thu Jun 27 02:00:31 UTC 2019 Modified Files: src/sys/arch/amd64/amd64: machdep.c Log Message: Although this is correct, I will let maxv commit it. Still waiting. To generate a diff of this commit: cvs rdiff -u -r1.333 -r1.334 src/sys/arch/amd64/amd64/machdep.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. This isn't correct, with USER_LDT the 32bit LWPs may have non-default segregs, besides it is really dumb to mix 32 and 64bit code, part of the reasons why I dropped the thing
CVS commit: src/sys/kern
Module Name:src Committed By: christos Date: Thu Jun 27 17:09:31 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: remove offs initialization and XXX gcc comment. Offs should always be initialized. Pointed out by maxv. To generate a diff of this commit: cvs rdiff -u -r1.475 -r1.476 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/kern
Module Name:src Committed By: christos Date: Thu Jun 27 17:09:31 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: remove offs initialization and XXX gcc comment. Offs should always be initialized. Pointed out by maxv. To generate a diff of this commit: cvs rdiff -u -r1.475 -r1.476 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/kern/kern_exec.c diff -u src/sys/kern/kern_exec.c:1.475 src/sys/kern/kern_exec.c:1.476 --- src/sys/kern/kern_exec.c:1.475 Thu Jun 27 13:07:51 2019 +++ src/sys/kern/kern_exec.c Thu Jun 27 13:09:31 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_exec.c,v 1.475 2019/06/27 17:07:51 christos Exp $ */ +/* $NetBSD: kern_exec.c,v 1.476 2019/06/27 17:09:31 christos Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -59,7 +59,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.475 2019/06/27 17:07:51 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.476 2019/06/27 17:09:31 christos Exp $"); #include "opt_exec.h" #include "opt_execfmt.h" @@ -690,7 +690,7 @@ execve_loadvm(struct lwp *l, const char struct proc *p; char *dp; u_int modgen; - size_t offs = 0; // XXX: GCC + size_t offs; KASSERT(data != NULL);
CVS commit: src/sys/kern
Module Name:src Committed By: christos Date: Thu Jun 27 17:07:51 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: Return an error if the path was too long. Pointed out by maxv To generate a diff of this commit: cvs rdiff -u -r1.474 -r1.475 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/kern/kern_exec.c diff -u src/sys/kern/kern_exec.c:1.474 src/sys/kern/kern_exec.c:1.475 --- src/sys/kern/kern_exec.c:1.474 Wed Jun 26 16:28:59 2019 +++ src/sys/kern/kern_exec.c Thu Jun 27 13:07:51 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: kern_exec.c,v 1.474 2019/06/26 20:28:59 maxv Exp $ */ +/* $NetBSD: kern_exec.c,v 1.475 2019/06/27 17:07:51 christos Exp $ */ /*- * Copyright (c) 2008 The NetBSD Foundation, Inc. @@ -59,7 +59,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.474 2019/06/26 20:28:59 maxv Exp $"); +__KERNEL_RCSID(0, "$NetBSD: kern_exec.c,v 1.475 2019/06/27 17:07:51 christos Exp $"); #include "opt_exec.h" #include "opt_execfmt.h" @@ -640,7 +640,7 @@ exec_makepathbuf(struct lwp *l, const ch len++; if (len + 1 >= MAXPATHLEN) - goto out; + goto err; bp = path + MAXPATHLEN - len; memmove(bp, path, len); *(--bp) = '/';
CVS commit: src/sys/kern
Module Name:src Committed By: christos Date: Thu Jun 27 17:07:51 UTC 2019 Modified Files: src/sys/kern: kern_exec.c Log Message: Return an error if the path was too long. Pointed out by maxv To generate a diff of this commit: cvs rdiff -u -r1.474 -r1.475 src/sys/kern/kern_exec.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Re: CVS commit: src/sys/kern
Le 26/06/2019 à 22:33, Christos Zoulas a écrit : On Jun 26, 10:30pm, m...@m00nbsd.net (Maxime Villard) wrote: -- Subject: Re: CVS commit: src/sys/kern | Le 25/06/2019 à 23:32, Christos Zoulas a écrit : | > Module Name: src | > Committed By:christos | > Date:Tue Jun 25 21:32:58 UTC 2019 | > | > Modified Files: | > src/sys/kern: kern_exec.c | > | > Log Message: | > Fail if getcwd fails. Pointed out by maxv@ | > | > | > To generate a diff of this commit: | > cvs rdiff -u -r1.471 -r1.472 src/sys/kern/kern_exec.c | > | > Please note that diffs are not public domain; they are subject to the | > copyright notices on the relevant files. | | You still left one error condition unhandled. Is this intentional, or did | you just forget that one too? I don't see it. Yet it seems pretty obvious to me. As you explained in the comment, the function is supposed to return an absolute path. Here, however, it does not return an absolute path: if (len + 1 >= MAXPATHLEN) goto out; Nor does it initialize 'offs'. Notice, in addition, the "XXX: GCC" you put in the caller, as if GCC was wrong in reporting that because of the aforementioned branch, 'offs' wasn't getting initialized properly. So, has this become intentional, or not? Because it seems clear it wasn't intentional when you initially committed it.
CVS commit: src/distrib/sets
Module Name:src Committed By: maya Date: Thu Jun 27 15:47:10 UTC 2019 Modified Files: src/distrib/sets: comments Log Message: Fix typo in via openchrome driver description (no "s") To generate a diff of this commit: cvs rdiff -u -r1.22 -r1.23 src/distrib/sets/comments Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/distrib/sets
Module Name:src Committed By: maya Date: Thu Jun 27 15:47:10 UTC 2019 Modified Files: src/distrib/sets: comments Log Message: Fix typo in via openchrome driver description (no "s") To generate a diff of this commit: cvs rdiff -u -r1.22 -r1.23 src/distrib/sets/comments Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/distrib/sets/comments diff -u src/distrib/sets/comments:1.22 src/distrib/sets/comments:1.23 --- src/distrib/sets/comments:1.22 Thu Jun 27 11:30:21 2019 +++ src/distrib/sets/comments Thu Jun 27 15:47:10 2019 @@ -466,5 +466,5 @@ xbase-libdrm-amdgpu AMD RADEON GPU video xbase-libdrm-intel Intel integrated graphics chipsets xbase-libdrm-nouveau NVIDIA video driver xbase-libvdpau-lib Video Decode and Presentation API for Unix -xbase-openchrome-lib video driver for VIA Unichromes +xbase-openchrome-lib video driver for VIA Unichrome xbase-xvmc-lib X-Video Motion Compensation
CVS commit: src/sys/arch/arm/sunxi
Module Name:src Committed By: jmcneill Date: Thu Jun 27 14:51:33 UTC 2019 Modified Files: src/sys/arch/arm/sunxi: sun50i_a64_ccu.c Log Message: Add GPU clocks To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/sys/arch/arm/sunxi/sun50i_a64_ccu.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/arm/sunxi/sun50i_a64_ccu.c diff -u src/sys/arch/arm/sunxi/sun50i_a64_ccu.c:1.11 src/sys/arch/arm/sunxi/sun50i_a64_ccu.c:1.12 --- src/sys/arch/arm/sunxi/sun50i_a64_ccu.c:1.11 Wed Jan 30 01:24:00 2019 +++ src/sys/arch/arm/sunxi/sun50i_a64_ccu.c Thu Jun 27 14:51:33 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: sun50i_a64_ccu.c,v 1.11 2019/01/30 01:24:00 jmcneill Exp $ */ +/* $NetBSD: sun50i_a64_ccu.c,v 1.12 2019/06/27 14:51:33 jmcneill Exp $ */ /*- * Copyright (c) 2017 Jared McNeill @@ -28,7 +28,7 @@ #include -__KERNEL_RCSID(1, "$NetBSD: sun50i_a64_ccu.c,v 1.11 2019/01/30 01:24:00 jmcneill Exp $"); +__KERNEL_RCSID(1, "$NetBSD: sun50i_a64_ccu.c,v 1.12 2019/06/27 14:51:33 jmcneill Exp $"); #include #include @@ -46,6 +46,7 @@ __KERNEL_RCSID(1, "$NetBSD: sun50i_a64_c #define PLL_PERIPH0_CTRL_REG 0x028 #define PLL_PERIPH1_CTRL_REG 0x02c #define PLL_VIDEO1_CTRL_REG 0x030 +#define PLL_GPU_CTRL_REG 0x038 #define PLL_DE_CTRL_REG 0x048 #define AHB1_APB1_CFG_REG 0x054 #define APB2_CFG_REG 0x058 @@ -67,6 +68,7 @@ __KERNEL_RCSID(1, "$NetBSD: sun50i_a64_c #define AC_DIG_CLK_REG 0x140 #define HDMI_CLK_REG 0x150 #define HDMI_SLOW_CLK_REG 0x154 +#define GPU_CLK_REG 0x1a0 #define BUS_SOFT_RST_REG0 0x2c0 #define BUS_SOFT_RST_REG1 0x2c4 #define BUS_SOFT_RST_REG2 0x2c8 @@ -153,6 +155,7 @@ static const char *ths_parents[] = { "ho static const char *de_parents[] = { "pll_periph0_2x", "pll_de" }; static const char *hdmi_parents[] = { "pll_video0", "pll_video1" }; static const char *tcon1_parents[] = { "pll_video0", NULL, "pll_video1", NULL }; +static const char *gpu_parents[] = { "gpu" }; static const struct sunxi_ccu_nkmp_tbl sun50i_a64_cpux_table[] = { { 6000, 9, 0, 0, 2 }, @@ -310,6 +313,19 @@ static struct sunxi_ccu_clk sun50i_a64_c __BIT(31), /* enable */ SUNXI_CCU_FRACTIONAL_PLUSONE | SUNXI_CCU_FRACTIONAL_SET_ENABLE), + SUNXI_CCU_FRACTIONAL(A64_CLK_PLL_GPU, "pll_gpu", "hosc", + PLL_GPU_CTRL_REG, /* reg */ + __BITS(14,8), /* m */ + 1,/* m_min */ + 128, /* m_max */ + __BIT(24), /* div_en */ + __BIT(25), /* frac_sel */ + 27000, 29700, /* frac values */ + __BITS(3,0), /* prediv */ + 4,/* prediv_val */ + __BIT(31), /* enable */ + SUNXI_CCU_FRACTIONAL_PLUSONE | SUNXI_CCU_FRACTIONAL_SET_ENABLE), + SUNXI_CCU_PREDIV(A64_CLK_AHB1, "ahb1", ahb1_parents, AHB1_APB1_CFG_REG, /* reg */ __BITS(7,6), /* prediv */ @@ -398,6 +414,13 @@ static struct sunxi_ccu_clk sun50i_a64_c __BIT(31), /* enable */ 0), + SUNXI_CCU_DIV_GATE(A64_CLK_GPU, "gpu", gpu_parents, + GPU_CLK_REG, /* reg */ + __BITS(2,0), /* div */ + 0, /* sel */ + __BIT(31), /* enable */ + 0), + SUNXI_CCU_GATE(A64_CLK_BUS_MIPI_DSI, "bus-mipi-dsi", "ahb1", BUS_CLK_GATING_REG0, 1), SUNXI_CCU_GATE(A64_CLK_BUS_CE, "bus-ce", "ahb1",
CVS commit: src/sys/arch/arm/sunxi
Module Name:src Committed By: jmcneill Date: Thu Jun 27 14:51:33 UTC 2019 Modified Files: src/sys/arch/arm/sunxi: sun50i_a64_ccu.c Log Message: Add GPU clocks To generate a diff of this commit: cvs rdiff -u -r1.11 -r1.12 src/sys/arch/arm/sunxi/sun50i_a64_ccu.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-8] src/doc
Module Name:src Committed By: martin Date: Thu Jun 27 13:18:28 UTC 2019 Modified Files: src/doc [netbsd-8]: CHANGES-8.2 Log Message: Ticket #1282 To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/doc/CHANGES-8.2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: [netbsd-8] src/doc
Module Name:src Committed By: martin Date: Thu Jun 27 13:18:28 UTC 2019 Modified Files: src/doc [netbsd-8]: CHANGES-8.2 Log Message: Ticket #1282 To generate a diff of this commit: cvs rdiff -u -r1.1.2.3 -r1.1.2.4 src/doc/CHANGES-8.2 Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/doc/CHANGES-8.2 diff -u src/doc/CHANGES-8.2:1.1.2.3 src/doc/CHANGES-8.2:1.1.2.4 --- src/doc/CHANGES-8.2:1.1.2.3 Wed Jun 12 10:40:13 2019 +++ src/doc/CHANGES-8.2 Thu Jun 27 13:18:28 2019 @@ -1,4 +1,4 @@ -# $NetBSD: CHANGES-8.2,v 1.1.2.3 2019/06/12 10:40:13 martin Exp $ +# $NetBSD: CHANGES-8.2,v 1.1.2.4 2019/06/27 13:18:28 martin Exp $ A complete list of changes from the NetBSD 8.1 release to the NetBSD 8.2 release: @@ -69,3 +69,9 @@ libexec/httpd/testsuite/test-simple 1.6 Avoid an assertion failure when using cgihandler (-C option). [mrg, ticket #1281} +sys/arch/x86/include/bootinfo.h 1.30 + + Increase BOOTINFO_MAXSIZE to 16Kib. + Some systems require a larger bootinfo size for memory descriptors. + [nonaka, ticket #1282] +
CVS commit: [netbsd-8] src/sys/arch/x86/include
Module Name:src Committed By: martin Date: Thu Jun 27 13:17:17 UTC 2019 Modified Files: src/sys/arch/x86/include [netbsd-8]: bootinfo.h Log Message: Pull up following revision(s) (requested by nonaka in ticket #1282): sys/arch/x86/include/bootinfo.h: revision 1.30 PR/54147: Increase BOOTINFO_MAXSIZE to 16Kib. Some systems require a larger bootinfo size for memory descriptors. To generate a diff of this commit: cvs rdiff -u -r1.26.6.1 -r1.26.6.2 src/sys/arch/x86/include/bootinfo.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/arch/x86/include/bootinfo.h diff -u src/sys/arch/x86/include/bootinfo.h:1.26.6.1 src/sys/arch/x86/include/bootinfo.h:1.26.6.2 --- src/sys/arch/x86/include/bootinfo.h:1.26.6.1 Sat Apr 14 10:41:15 2018 +++ src/sys/arch/x86/include/bootinfo.h Thu Jun 27 13:17:16 2019 @@ -1,4 +1,4 @@ -/* $NetBSD: bootinfo.h,v 1.26.6.1 2018/04/14 10:41:15 martin Exp $ */ +/* $NetBSD: bootinfo.h,v 1.26.6.2 2019/06/27 13:17:16 martin Exp $ */ /* * Copyright (c) 1997 @@ -244,7 +244,7 @@ struct btinfo_efimemmap { #ifdef _KERNEL -#define BOOTINFO_MAXSIZE 8192 +#define BOOTINFO_MAXSIZE 16384 #ifndef _LOCORE /*
CVS commit: [netbsd-8] src/sys/arch/x86/include
Module Name:src Committed By: martin Date: Thu Jun 27 13:17:17 UTC 2019 Modified Files: src/sys/arch/x86/include [netbsd-8]: bootinfo.h Log Message: Pull up following revision(s) (requested by nonaka in ticket #1282): sys/arch/x86/include/bootinfo.h: revision 1.30 PR/54147: Increase BOOTINFO_MAXSIZE to 16Kib. Some systems require a larger bootinfo size for memory descriptors. To generate a diff of this commit: cvs rdiff -u -r1.26.6.1 -r1.26.6.2 src/sys/arch/x86/include/bootinfo.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/distrib/sets
Module Name:src Committed By: uki Date: Thu Jun 27 11:30:21 UTC 2019 Modified Files: src/distrib/sets: comments descrs Log Message: Add comment/description for new packages To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/distrib/sets/comments cvs rdiff -u -r1.23 -r1.24 src/distrib/sets/descrs Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/distrib/sets
Module Name:src Committed By: uki Date: Thu Jun 27 11:30:21 UTC 2019 Modified Files: src/distrib/sets: comments descrs Log Message: Add comment/description for new packages To generate a diff of this commit: cvs rdiff -u -r1.21 -r1.22 src/distrib/sets/comments cvs rdiff -u -r1.23 -r1.24 src/distrib/sets/descrs Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/distrib/sets/comments diff -u src/distrib/sets/comments:1.21 src/distrib/sets/comments:1.22 --- src/distrib/sets/comments:1.21 Wed Apr 24 10:26:08 2019 +++ src/distrib/sets/comments Thu Jun 27 11:30:21 2019 @@ -57,11 +57,11 @@ base-locale-es Spanish language locale s base-locale-et Estonian language locale support base-locale-fi Finnish language locale support base-locale-fr French language locale support -base-locale-gl Galician language locale support +base-locale-gl Galician language locale support base-locale-he Hebrew language locale support base-locale-hr Croatian language locale support base-locale-hu Hungarian language locale support -base-locale-id Indonesian language locale support +base-locale-id Indonesian language locale support base-locale-is Icelandic language locale support base-locale-it Italian language locale support base-locale-ja Japanese language locale support @@ -76,7 +76,7 @@ base-locale-share /usr/share file system base-locale-sk Slovak language locale support base-locale-sl Slovenian language locale support base-locale-sv Swedish language locale support -base-locale-tr Turkish language locale support +base-locale-tr Turkish language locale support base-locale-uk Ukrainian language locale support base-locale-zh Chinese language locale support base-lpr-bin utilities for printing support @@ -101,7 +101,7 @@ base-nis-bin progams and utilities for t base-nis-root root file system support for the NIS network information system base-ntfs-root root file system support for the Windows NT file system base-ntp-bin utilities for network time protocol support -base-ntp-root basic directories for network time protocol support +base-ntp-root basic directories for network time protocol support base-objc-usr /usr file system support for the Objective C programming language base-pf-bin utilities for the PF packet filter base-pf-root directories for the PF packet filter @@ -146,7 +146,7 @@ base-texinfo-share shared data files for base-texinfo_locale-cs Czech language support for the GNU texinfo software base-texinfo_locale-da Danish language support for the GNU texinfo software base-texinfo_locale-de German language support for the GNU texinfo software -base-texinfo_locale-eo Esperanto language support for the GNU texinfo software +base-texinfo_locale-eo Esperanto language support for the GNU texinfo software base-texinfo_locale-fr French language support for the GNU texinfo software base-texinfo_locale-he Hebrew language support for the GNU texinfo software base-texinfo_locale-hr Croatian language support for the GNU texinfo software @@ -159,23 +159,23 @@ base-texinfo_locale-tr Turkish language base-texinfo_locale-zh Chinese language support for the GNU texinfo software base-timed-bin utilities for the timed(8) network time daemon base-tn3270-bin utilities for connecting to IBM VM/CMS systems -base-tpm-bin utilities for the Trusted Platform Module +base-tpm-bin utilities for the Trusted Platform Module base-usd-share directory structure for the User's Supplementary Documentation base-util-bin standard utilities for use by users base-util-root root file system support for standard user utilities base-util-share shared data files for standard user utilities -base-util_locale-cs Czech language support for standard utilities +base-util_locale-cs Czech language support for standard utilities base-util_locale-de German language support for standard utilities base-util_locale-el Greek language support for standard utilities -base-util_locale-eo Esperanto language support for standard utilities +base-util_locale-eo Esperanto language support for standard utilities base-util_locale-es Spanish language support for standard utilities base-util_locale-et Estonian language support for standard utilities base-util_locale-fr French language support for standard utilities -base-util_locale-gl Galician language support for standard utilities -base-util_locale-hr Croatian language support for standard utilities -base-util_locale-id Indonesian language support for standard utilities -base-util_locale-it Italian language support for standard utilities -base-util_locale-ja Japanese language support for standard utilities +base-util_locale-gl Galician language support for standard utilities +base-util_locale-hr Croatian language support for standard utilities +base-util_locale-id Indonesian language support for standard utilities +base-util_locale-it Italian language support for standard utilities
Re: CVS commit: src/sys/dev/pci/ixgbe
On 2019/06/27 18:56, SAITOH Masanobu wrote: > Module Name: src > Committed By: msaitoh > Date: Thu Jun 27 09:56:39 UTC 2019 > > Modified Files: > src/sys/dev/pci/ixgbe: ixv.c > > Log Message: > Don't call set_vfta() if any VLAN is attached. s/is/is not/ > XXX pullup-8. > > > To generate a diff of this commit: > cvs rdiff -u -r1.115 -r1.116 src/sys/dev/pci/ixgbe/ixv.c > > Please note that diffs are not public domain; they are subject to the > copyright notices on the relevant files. > -- --- SAITOH Masanobu (msai...@execsw.org msai...@netbsd.org)
CVS commit: src/sys/dev/pci/ixgbe
Module Name:src Committed By: msaitoh Date: Thu Jun 27 09:56:39 UTC 2019 Modified Files: src/sys/dev/pci/ixgbe: ixv.c Log Message: Don't call set_vfta() if any VLAN is attached. XXX pullup-8. To generate a diff of this commit: cvs rdiff -u -r1.115 -r1.116 src/sys/dev/pci/ixgbe/ixv.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/pci/ixgbe/ixv.c diff -u src/sys/dev/pci/ixgbe/ixv.c:1.115 src/sys/dev/pci/ixgbe/ixv.c:1.116 --- src/sys/dev/pci/ixgbe/ixv.c:1.115 Wed May 29 10:07:30 2019 +++ src/sys/dev/pci/ixgbe/ixv.c Thu Jun 27 09:56:39 2019 @@ -1,4 +1,4 @@ -/*$NetBSD: ixv.c,v 1.115 2019/05/29 10:07:30 msaitoh Exp $*/ +/*$NetBSD: ixv.c,v 1.116 2019/06/27 09:56:39 msaitoh Exp $*/ /** @@ -2000,11 +2000,11 @@ ixv_setup_vlan_support(struct adapter *a rxr->vtag_strip = hwtagging ? TRUE : FALSE; } -#if 1 - /* XXX dirty hack. Enable all VIDs */ + /* XXX dirty hack. Enable all VIDs if any VLAN is attached */ for (int i = 0; i < IXGBE_VFTA_SIZE; i++) - adapter->shadow_vfta[i] = 0x; -#endif + adapter->shadow_vfta[i] + = VLAN_ATTACHED(>osdep.ec) ? 0x : 0; + /* * A soft reset zero's out the VFTA, so * we need to repopulate it now.
CVS commit: src/sys/dev/pci/ixgbe
Module Name:src Committed By: msaitoh Date: Thu Jun 27 09:56:39 UTC 2019 Modified Files: src/sys/dev/pci/ixgbe: ixv.c Log Message: Don't call set_vfta() if any VLAN is attached. XXX pullup-8. To generate a diff of this commit: cvs rdiff -u -r1.115 -r1.116 src/sys/dev/pci/ixgbe/ixv.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
CVS commit: src/sys/dev/pci/ixgbe
Module Name:src Committed By: msaitoh Date: Thu Jun 27 06:00:11 UTC 2019 Modified Files: src/sys/dev/pci/ixgbe: ixgbe_x550.c Log Message: Sync with FreeBSD ix-3.3.8 part 2: - Add missing XFI support into ixgbe_get_link_capabilities_X550em(). To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/sys/dev/pci/ixgbe/ixgbe_x550.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/pci/ixgbe/ixgbe_x550.c diff -u src/sys/dev/pci/ixgbe/ixgbe_x550.c:1.14 src/sys/dev/pci/ixgbe/ixgbe_x550.c:1.15 --- src/sys/dev/pci/ixgbe/ixgbe_x550.c:1.14 Thu Dec 6 13:25:02 2018 +++ src/sys/dev/pci/ixgbe/ixgbe_x550.c Thu Jun 27 06:00:11 2019 @@ -2084,7 +2084,14 @@ s32 ixgbe_get_link_capabilities_X550em(s else *speed = IXGBE_LINK_SPEED_10GB_FULL; } else { + *autoneg = TRUE; + switch (hw->phy.type) { + case ixgbe_phy_x550em_xfi: + *speed = IXGBE_LINK_SPEED_1GB_FULL | + IXGBE_LINK_SPEED_10GB_FULL; + *autoneg = FALSE; + break; case ixgbe_phy_ext_1g_t: case ixgbe_phy_sgmii: *speed = IXGBE_LINK_SPEED_1GB_FULL; @@ -2108,7 +2115,6 @@ s32 ixgbe_get_link_capabilities_X550em(s IXGBE_LINK_SPEED_1GB_FULL; break; } - *autoneg = TRUE; } return IXGBE_SUCCESS;
CVS commit: src/sys/dev/pci/ixgbe
Module Name:src Committed By: msaitoh Date: Thu Jun 27 06:00:11 UTC 2019 Modified Files: src/sys/dev/pci/ixgbe: ixgbe_x550.c Log Message: Sync with FreeBSD ix-3.3.8 part 2: - Add missing XFI support into ixgbe_get_link_capabilities_X550em(). To generate a diff of this commit: cvs rdiff -u -r1.14 -r1.15 src/sys/dev/pci/ixgbe/ixgbe_x550.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.