Date: Fri, 13 Apr 2018 22:48:27 +0200 From: Vincenzo Maffione <v.maffione@gmail.com> To: Justin Hibbits <jrh29@alumni.cwru.edu> Cc: Vincenzo Maffione <vmaffione@freebsd.org>, src-committers <src-committers@freebsd.org>, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r332423 - in head/sys: conf dev/cxgbe dev/ixgbe dev/ixl dev/netmap dev/re modules/netmap net sys Message-ID: <CA%2B_eA9gne6Sd2OijeKHX5KNyyDOgq8b8BatA6UQz_tSz=WgVfA@mail.gmail.com> In-Reply-To: <CAHSQbTB6E2UU_ThiK4d%2BC1=%2Bb_j1bMKFL4USH--Rjji7DJQ2LQ@mail.gmail.com> References: <201804120720.w3C7Koe4032111@repo.freebsd.org> <CAHSQbTB6E2UU_ThiK4d%2BC1=%2Bb_j1bMKFL4USH--Rjji7DJQ2LQ@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Right, sorry for that. The fix is actually already in the upstream github, I'm preparing a commit to import that. Cheers, Vincenzo 2018-04-13 22:42 GMT+02:00 Justin Hibbits <jrh29@alumni.cwru.edu>: > On Thu, Apr 12, 2018 at 2:20 AM, Vincenzo Maffione > <vmaffione@freebsd.org> wrote: > > Author: vmaffione > > Date: Thu Apr 12 07:20:50 2018 > > New Revision: 332423 > > URL: https://svnweb.freebsd.org/changeset/base/332423 > > > > Log: > > netmap: align codebase to the current upstream (commit id > 3fb001303718146) > > > > Changelist: > > - Turn tx_rings and rx_rings arrays into arrays of pointers to > kring > > structs. This patch includes fixes for ixv, ixl, ix, re, cxgbe, > iflib, > > vtnet and ptnet drivers to cope with the change. > > - Generalize the nm_config() callback to accept a struct > containing many > > parameters. > > - Introduce NKR_FAKERING to support buffers sharing (used for > netmap > > pipes) > > - Improved API for external VALE modules. > > - Various bug fixes and improvements to the netmap memory > allocator, > > including support for externally (userspace) allocated memory. > > - Refactoring of netmap pipes: now linked rings share the same > netmap > > buffers, with a separate set of kring pointers (rhead, rcur, > rtail). > > Buffer swapping does not need to happen anymore. > > - Large refactoring of the control API towards an extensible > solution; > > the goal is to allow the addition of more commands and extension > of > > existing ones (with new options) without the need of hacks or the > > risk of running out of configuration space. > > A new NIOCCTRL ioctl has been added to handle all the requests > of the > > new control API, which cover all the functionalities so far > supported. > > The netmap API bumps from 11 to 12 with this patch. Full backward > > compatibility is provided for the old control command > (NIOCREGIF), by > > means of a new netmap_legacy module. Many parts of the old > netmap.h > > header has now been moved to netmap_legacy.h (included by > netmap.h). > > > > Approved by: hrs (mentor) > > > > Added: > > head/sys/dev/netmap/netmap_legacy.c (contents, props changed) > > head/sys/net/netmap_legacy.h (contents, props changed) > > Modified: > > head/sys/conf/files > > head/sys/dev/cxgbe/t4_netmap.c > > head/sys/dev/ixgbe/if_ixv.c > > head/sys/dev/ixl/ixl_pf_main.c > > head/sys/dev/ixl/ixl_txrx.c > > head/sys/dev/netmap/if_ptnet.c > > head/sys/dev/netmap/if_re_netmap.h > > head/sys/dev/netmap/if_vtnet_netmap.h > > head/sys/dev/netmap/netmap.c > > head/sys/dev/netmap/netmap_freebsd.c > > head/sys/dev/netmap/netmap_generic.c > > head/sys/dev/netmap/netmap_kern.h > > head/sys/dev/netmap/netmap_mem2.c > > head/sys/dev/netmap/netmap_mem2.h > > head/sys/dev/netmap/netmap_monitor.c > > head/sys/dev/netmap/netmap_pipe.c > > head/sys/dev/netmap/netmap_pt.c > > head/sys/dev/netmap/netmap_vale.c > > head/sys/dev/re/if_re.c > > head/sys/modules/netmap/Makefile > > head/sys/net/iflib.c > > head/sys/net/netmap.h > > head/sys/net/netmap_user.h > > head/sys/net/netmap_virt.h > > head/sys/sys/param.h > > This breaks 32-bit powerpc LINT, with errors of: > > /usr/src/sys/dev/netmap/netmap.c: In function 'netmap_get_na': > /usr/src/sys/dev/netmap/netmap.c:1479: warning: cast to pointer from > integer of different size [-Wint-to-pointer-cast] > /usr/src/sys/dev/netmap/netmap.c: In function 'netmap_ioctl': > /usr/src/sys/dev/netmap/netmap.c:2329: warning: cast to pointer from > integer of different size [-Wint-to-pointer-cast] > /usr/src/sys/dev/netmap/netmap.c:2344: warning: cast to pointer from > integer of different size [-Wint-to-pointer-cast] > /usr/src/sys/dev/netmap/netmap.c:2447: warning: cast to pointer from > integer of different size [-Wint-to-pointer-cast] > /usr/src/sys/dev/netmap/netmap.c:2466: warning: cast from pointer to > integer of different size [-Wpointer-to-int-cast] > > among others. > > struct nmreq_header->nr_body is a uint64_t, casting to 32-bit pointers > needs to go through uintptr_t. > > - Justin > -- Vincenzo Maffione
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CA%2B_eA9gne6Sd2OijeKHX5KNyyDOgq8b8BatA6UQz_tSz=WgVfA>