From owner-svn-src-head@freebsd.org Mon Oct 21 20:31:01 2019 Return-Path: Delivered-To: svn-src-head@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 9151A161960; Mon, 21 Oct 2019 20:31:01 +0000 (UTC) (envelope-from pluknet@gmail.com) Received: from mail-lj1-x232.google.com (mail-lj1-x232.google.com [IPv6:2a00:1450:4864:20::232]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 46xpF12tF2z3MSJ; Mon, 21 Oct 2019 20:31:01 +0000 (UTC) (envelope-from pluknet@gmail.com) Received: by mail-lj1-x232.google.com with SMTP id j19so14782142lja.1; Mon, 21 Oct 2019 13:31:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=5OQPc7HOoicHxEaOyv5dO1i1bkjasc4q6NgxqiquHFU=; b=gHIpK6C47cG5CDqR+UzVpKVsAFgp/X/t0COVMCSDp3H4DoAMdn+5Y5QH/+4Dv87E0l auehFSFI/Ny8xjDu+hUc6e5O3wUsH73y8ywXkch8QdXTAFlro1N8OkpoBH4feTwjyRPv m7NKBO2B5xJNonrbWfqKcsZVbG/DphV7C8DNymt5lyfbkRykTgUMe5CkkqLJIO/5fPbm L3qc5VYf3VXG1HGe85rB6rAH9InS7Kd4YGLubD6OLQURgroUYqW91IUVsQX2EJZmS9wG SBUhu02VAOiJvmN3C+yari/rreqlmEqjawFCXm8Pm7xMmJ9VERZf+8LS7pySd3ot2jIE xwUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=5OQPc7HOoicHxEaOyv5dO1i1bkjasc4q6NgxqiquHFU=; b=CJivc4s2SaFtWgkU45RtF1re18rxg9CS2P6yZSLgc1Q0IZ3sfXwFFyrpMuFPYbuz5/ lGMEIgiI1hVLZ6mD9ID4++cZs/uVqdh2/jFsClGhL0Yvh7MJV23UyLrVXoTNsQX03hCY UJiNZTYjw+5GuoB0oNgX959H+u7R/qk+4FoaF422463tXkVx+lm8fLH/RtU5LBorUMJf rlb3UhPPE66qaj0M1AmyKIAUlSQgsvYCjX+LPHTgz5y7moPlg3zFpH6wuliArCkpEmQF gsErZZA2AuLCGvWOSsDIHzHbthmyXGMFLQ1B+MZTh3Ksx+mGHSzYyAWHL/2vQw1j6rRm HFSw== X-Gm-Message-State: APjAAAUoxiPLWyNM6RZi42EW3EgVsCyJgClsfTLclO8+U5VEiGK7JW7W UhqUM4Q47YepYeWDTq/mQmLqJEnovac9Hv9s1bVdIg== X-Google-Smtp-Source: APXvYqyQA8f1lOyOdOW4/bo4bq3fkxJpbYvE97IG+XuJoB3cAcLy1vWISV46tMKOom8qi+FU+XZeglX2TdXhIbFgZvE= X-Received: by 2002:a2e:b17b:: with SMTP id a27mr16074852ljm.7.1571689859087; Mon, 21 Oct 2019 13:30:59 -0700 (PDT) MIME-Version: 1.0 References: <201910211811.x9LIBhea069573@repo.freebsd.org> In-Reply-To: <201910211811.x9LIBhea069573@repo.freebsd.org> From: Sergey Kandaurov Date: Mon, 21 Oct 2019 23:30:46 +0300 Message-ID: Subject: Re: svn commit: r353848 - head/sys/dev/jme To: Gleb Smirnoff Cc: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org X-Rspamd-Queue-Id: 46xpF12tF2z3MSJ X-Spamd-Bar: ----- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-5.99 / 15.00]; NEURAL_HAM_MEDIUM(-0.99)[-0.994,0]; REPLY(-4.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000,0] Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.29 X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 21 Oct 2019 20:31:01 -0000 =D0=BF=D0=BD, 21 =D0=BE=D0=BA=D1=82. 2019 =D0=B3. =D0=B2 21:14, Gleb Smirno= ff : > Author: glebius > Date: Mon Oct 21 18:11:43 2019 > New Revision: 353848 > URL: https://svnweb.freebsd.org/changeset/base/353848 > > Log: > Convert to if_foreach_llmaddr() KPI. > > Modified: > head/sys/dev/jme/if_jme.c > > Modified: head/sys/dev/jme/if_jme.c > > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D > --- head/sys/dev/jme/if_jme.c Mon Oct 21 18:11:38 2019 (r353847) > +++ head/sys/dev/jme/if_jme.c Mon Oct 21 18:11:43 2019 (r353848) > @@ -3236,12 +3236,26 @@ jme_set_vlan(struct jme_softc *sc) > CSR_WRITE_4(sc, JME_RXMAC, reg); > } > > +static u_int > +jme_hash_maddr(void *arg, struct sockaddr_dl *sdl, u_int cnt) > +{ > + uint32_t crc, *mchash =3D arg; > + > + crc =3D ether_crc32_be(LLADDR(sdl), ETHER_ADDR_LEN); > + > + /* Just want the 6 least significant bits. */ > + crc &=3D 0x3f; > + > + /* Set the corresponding bit in the hash table. */ > + mchash[crc >> 5] |=3D 1 << (crc & 0x1f); > + > + return (1); > +} > + > static void > jme_set_filter(struct jme_softc *sc) > { > struct ifnet *ifp; > - struct ifmultiaddr *ifma; > - uint32_t crc; > uint32_t mchash[2]; > uint32_t rxcfg; > > @@ -3276,21 +3290,7 @@ jme_set_filter(struct jme_softc *sc) > */ > rxcfg |=3D RXMAC_MULTICAST; > bzero(mchash, sizeof(mchash)); > - > - if_maddr_rlock(ifp); > - CK_STAILQ_FOREACH(ifma, &sc->jme_ifp->if_multiaddrs, ifma_link) { > - if (ifma->ifma_addr->sa_family !=3D AF_LINK) > - continue; > - crc =3D ether_crc32_be(LLADDR((struct sockaddr_dl *) > - ifma->ifma_addr), ETHER_ADDR_LEN); > - > - /* Just want the 6 least significant bits. */ > - crc &=3D 0x3f; > - > - /* Set the corresponding bit in the hash table. */ > - mchash[crc >> 5] |=3D 1 << (crc & 0x1f); > - } > - if_maddr_runlock(ifp); > + if_foreach_llmaddr(ifp, jme_hash_maddr, &mchash); > Should not be there just =E2=80=9Cmchash=E2=80=9D? You seems to be passing (uint32_t **), also in tsec. > CSR_WRITE_4(sc, JME_MAR0, mchash[0]); > CSR_WRITE_4(sc, JME_MAR1, mchash[1]); >