All of lore.kernel.org
 help / color / mirror / Atom feed
From: Chris Mi <chrism@mellanox.com>
To: netdev@vger.kernel.org
Cc: aditr@vmware.com, stern@rowland.harvard.edu, agk@redhat.com,
	alexander.shishkin@linux.intel.com, alexandre.bounine@idt.com,
	alexander.deucher@amd.com, oakad@yahoo.com, ast@kernel.org,
	elder@kernel.org, adobriyan@gmail.com,
	alex.williamson@redhat.com, AlexBin.Xie@amd.com,
	viro@zeniv.linux.org.uk, amd-gfx@lists.freedesktop.org,
	amitkarwar@gmail.com, andresx7@gmail.com,
	andrew.donnellan@au1.ibm.com, afd@ti.com,
	akpm@linux-foundation.org, anil.gurumurthy@qlogic.com,
	anna.schumaker@netapp.com, acme@kernel.org, arnd@arndb.de,
	dedekind1@gmail.com, ashutosh.dixit@intel.com,
	ath10k@lists.infradead.org, Bart.VanAssche@sandisk.com,
	bhaktipriya96@gmail.com, bjorn.andersson@linaro.org,
	boris.brezillon@free-electrons.com, computersforpeace@gmail.com,
	bryan.thompson@unisys.com, cgroups@vger.kernel.org,
	3chas3@gmail.com, chrism@mellanox.com, christian.koenig@amd.com,
	ccaulfie@redhat.com, chris@chris-wilson.co.uk,
	david1.zhou@amd.com, cluster-devel@redhat.com,
	colin.king@canonical.com, xiyou.wangcong@gmail.com,
	cyrille.pitchen@wedev4u.fr, daniel@iogearbox.net,
	daniel.vetter@intel.com, dasaratharaman.chandramouli@intel.com,
	airlied@redhat.com, dsa@cumulusnetworks.com, airlied@linux.ie,
	david.binder@unisys.com, dhowells@redhat.com,
	david.kershner@unisys.com, dtwlin@gmail.com, dave@stgolabs.net,
	davem@davemloft.net, teigland@redhat.com, dwindsor@gmail.com,
	dwmw2@infradead.org, dennis.dalessandro@intel.com,
	devel@driverdev.osuosl.org, devesh.sharma@broadcom.com,
	devicetree@vger.kernel.org, dick.kennedy@broadcom.com,
	dm-devel@redhat.com, don.hiatt@intel.com, dgilbert@interlog.com,
	dledford@redhat.com, drbd-dev@lists.linbit.com,
	dri-devel@lists.freedesktop.org, elena.reshetova@intel.com,
	edumazet@google.com, eparis@parisplace.org, ericvh@gmail.com,
	ebiederm@xmission.com, evan.quan@amd.com,
	felipe.balbi@linux.intel.com, Felix.Kuehling@amd.com,
	f.fainelli@gmail.com, fw@strlen.de, frowand.list@gmail.com,
	fbarrat@linux.vnet.ibm.com, fujita.tomonori@lab.ntt.co.jp,
	gbhat@marvell.com, geliangtang@gmail.com, kraxel@redhat.com,
	gregkh@linuxfoundation.org, greybus-dev@lists.linaro.org,
	linux@roeck-us.net, gustavo.padovan@collabora.co.uk,
	hal.rosenstock@gmail.com, hannes@stressinduktion.org,
	hare@suse.de, ishkamiel@gmail.com, hans.westgaard.ry@oracle.com,
	ray.huang@amd.com, mingo@redhat.com, inki.dae@samsung.com,
	intel-gfx@lists.freedesktop.org,
	intel-gvt-dev@lists.freedesktop.org,
	iommu@lists.linux-foundation.org, ira.weiny@intel.com,
	jinpu.wang@profitbricks.com, jhs@mojatatu.com,
	jejb@linux.vnet.ibm.com, james.smart@broadcom.com,
	jani.nikula@linux.intel.com, jack@suse.cz,
	jarkko.sakkinen@linux.intel.com, jarno@ovn.org, Jason@zx2c4.com,
	jgunthorpe@obsidianresearch.com, jasowang@redhat.com,
	javier@osg.samsung.com, bfields@fieldses.org,
	jlayton@poochiereds.net, axboe@kernel.dk,
	jens.wiklander@linaro.org, jiangyilism@gmail.com,
	jiri@mellanox.com, jiri@resnulli.us, jlbec@evilplan.org,
	joro@8bytes.org, johan@kernel.org, johannes@sipsolutions.net,
	hannes@cmpxchg.org, john@johnmccutchan.com, jonathanh@nvidia.com,
	jon.maloy@ericsson.com, joonas.lahtinen@linux.intel.com,
	jy0922.shim@samsung.com, jbacik@fb.com, Jerry.Zhang@amd.com,
	jsarha@ti.com, Kai.Makisara@kolumbus.fi, kvalo@qca.qualcomm.com,
	keescook@chromium.org, krzk@kernel.org, kgene@kernel.org,
	kvm@vger.kernel.org, kyungmin.park@samsung.com,
	jiangshanlai@gmail.com, lars.ellenberg@linbit.com,
	lucho@ionkov.net, lee.jones@linaro.org, leo.liu@amd.com,
	leon@kernel.org, linux1394-devel@lists.sourceforge.net,
	linux-arm-kernel@lists.infradead.org,
	linux-atm-general@lists.sourceforge.net,
	linux-block@vger.kernel.org, linux-i2c@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-mm@kvack.org,
	linux-mtd@lists.infradead.org, linux-nfs@vger.kernel.org,
	linux-pm@vger.kernel.org, linuxppc-dev@lists.ozlabs.org,
	linux-ppp@vger.kernel.org, linux-raid@vger.kernel.org,
	linux-rdma@vger.kernel.org, linux-remoteproc@vger.kernel.org,
	linux-samsung-soc@vger.kernel.org, linux-scsi@vger.kernel.org,
	linux-sctp@vger.kernel.org, linux-tegra@vger.kernel.org,
	linux-usb@vger.kernel.org, linux-wireless@vger.kernel.org,
	logang@deltatee.com, majd@mellanox.com, manfred@colorfullife.com,
	tpmdd@selhorst.net, marcos.souza.org@gmail.com,
	marek.vasut@gmail.com, mario.kleiner.de@gmail.com,
	markb@mellanox.com, mfasheh@versity.com,
	elfring@users.sourceforge.net, martin.petersen@oracle.com,
	matan@mellanox.com, mawilcox@microsoft.com,
	mporter@kernel.crashing.org, mchehab@kernel.org,
	maximlevitsky@gmail.com, mst@redhat.com, mhocko@kernel.org,
	michel.daenzer@amd.com, mike.marciniszyn@intel.com,
	rppt@linux.vnet.ibm.com, snitzer@redhat.com, mszeredi@redhat.com,
	minchan@kernel.org, tom.leiming@gmail.com, monis@mellanox.com,
	Monk.Liu@amd.com, nbd-general@lists.sourceforge.net,
	neilb@suse.com, nhorman@tuxdriver.com, nab@linux-iscsi.org,
	nicolai.haehnle@amd.com, nicolas.dichtel@6wind.com,
	niranjana.vishwanathapura@intel.com, nishants@marvell.com,
	ngupta@vflare.org, ocfs2-devel@oss.oracle.com, ohad@wizery.com,
	oneukum@suse.com, osandov@fb.com, ogerlitz@mellanox.com,
	pali.rohar@gmail.com, pantelis.antoniou@konsulko.com,
	paulus@samba.org, paul@paul-moore.com, peterhuewe@gmx.de,
	peterz@infradead.org, pmladek@suse.com,
	philipp.reisner@linbit.com, pshelar@ovn.org, rjw@rjwysocki.net,
	richard@nod.at, rlove@rlove.org, robh+dt@kernel.org,
	giometti@enneenne.com, rogerq@ti.com, roman.kapl@sysgo.com,
	rminnich@sandia.gov, rmk+kernel@armlinux.org.uk,
	sainath.grandhi@intel.com, sameer.wadgaonkar@unisys.com,
	sean.hefty@intel.com, seanpaul@chromium.org,
	bigeasy@linutronix.de, sre@kernel.org, nsekhar@ti.com,
	selvin.xavier@broadcom.com, sergey.senozhatsky.work@gmail.com,
	sw0312.kim@samsung.com, p.shailesh@samsung.com, shli@kernel.org,
	shaun.tancheff@seagate.com, syeh@vmware.com,
	sparmaintainer@unisys.com, stefanr@s5r6.in-berlin.de,
	sboyd@codeaurora.org, stephen@networkplumber.org,
	swise@chelsio.com, sudarsana.kalluru@qlogic.com,
	sudeep.dutt@intel.com, sumit.semwal@linaro.org,
	target-devel@vger.kernel.org, tj@kernel.org,
	thierry.reding@gmail.com, thellstrom@vmware.com,
	timothy.sell@unisys.com, tipc-discussion@lists.sourceforge.net,
	tomas.winkler@intel.com, tomi.valkeinen@ti.com,
	tpmdd-devel@lists.sourceforge.net,
	trond.myklebust@primarydata.com,
	v9fs-developer@lists.sourceforge.net, varun@chelsio.com,
	virtualization@lists.linux-foundation.org,
	vdavydov.dev@gmail.com, vyasevich@gmail.com,
	linux-graphics-maintainer@vmware.com, longman@redhat.com,
	weiyj.lk@gmail.com, wsa@the-dreams.de, huxm@marvell.com,
	ying.xue@windriver.com, yishaih@mellanox.com,
	yuval.shaia@oracle.com, lizefan@huawei.com,
	zhenyuw@linux.intel.com, zhi.a.wang@intel.com
Subject: [patch net-next 0/3] net/sched: Improve getting objects by indexes
Date: Tue, 15 Aug 2017 22:12:15 -0400	[thread overview]
Message-ID: <1502849538-14284-1-git-send-email-chrism@mellanox.com> (raw)

Using current TC code, it is very slow to insert a lot of rules.

In order to improve the rules update rate in TC,
we introduced the following two changes:
        1) changed cls_flower to use IDR to manage the filters.
        2) changed all act_xxx modules to use IDR instead of
           a small hash table

But IDR has a limitation that it uses int. TC handle uses u32.
To make sure there is no regression, we also changed IDR to use
unsigned long. All clients of IDR are changed to use new IDR API.

Chris Mi (3):
  idr: Use unsigned long instead of int
  net/sched: Change cls_flower to use IDR
  net/sched: Change act_api and act_xxx modules to use IDR

 block/bsg.c                                     |   8 +-
 block/genhd.c                                   |  12 +-
 drivers/atm/nicstar.c                           |  11 +-
 drivers/block/drbd/drbd_main.c                  |  31 +--
 drivers/block/drbd/drbd_nl.c                    |  22 ++-
 drivers/block/drbd/drbd_proc.c                  |   3 +-
 drivers/block/drbd/drbd_receiver.c              |  15 +-
 drivers/block/drbd/drbd_state.c                 |  34 ++--
 drivers/block/drbd/drbd_worker.c                |   6 +-
 drivers/block/loop.c                            |  17 +-
 drivers/block/nbd.c                             |  20 +-
 drivers/block/zram/zram_drv.c                   |   9 +-
 drivers/char/tpm/tpm-chip.c                     |  10 +-
 drivers/char/tpm/tpm.h                          |   2 +-
 drivers/dca/dca-sysfs.c                         |   9 +-
 drivers/firewire/core-cdev.c                    |  18 +-
 drivers/firewire/core-device.c                  |  15 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c     |   8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c         |   9 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c         |   6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c         |   2 +-
 drivers/gpu/drm/drm_auth.c                      |   9 +-
 drivers/gpu/drm/drm_connector.c                 |  10 +-
 drivers/gpu/drm/drm_context.c                   |  20 +-
 drivers/gpu/drm/drm_dp_aux_dev.c                |  11 +-
 drivers/gpu/drm/drm_drv.c                       |   6 +-
 drivers/gpu/drm/drm_gem.c                       |  19 +-
 drivers/gpu/drm/drm_info.c                      |   2 +-
 drivers/gpu/drm/drm_mode_object.c               |  11 +-
 drivers/gpu/drm/drm_syncobj.c                   |  18 +-
 drivers/gpu/drm/exynos/exynos_drm_ipp.c         |  25 ++-
 drivers/gpu/drm/i915/gvt/display.c              |   2 +-
 drivers/gpu/drm/i915/gvt/kvmgt.c                |   2 +-
 drivers/gpu/drm/i915/gvt/vgpu.c                 |   9 +-
 drivers/gpu/drm/i915/i915_debugfs.c             |   6 +-
 drivers/gpu/drm/i915/i915_gem_context.c         |   9 +-
 drivers/gpu/drm/qxl/qxl_cmd.c                   |   8 +-
 drivers/gpu/drm/qxl/qxl_release.c               |  14 +-
 drivers/gpu/drm/sis/sis_mm.c                    |   8 +-
 drivers/gpu/drm/tegra/drm.c                     |  10 +-
 drivers/gpu/drm/tilcdc/tilcdc_slave_compat.c    |   3 +-
 drivers/gpu/drm/vgem/vgem_fence.c               |  12 +-
 drivers/gpu/drm/via/via_mm.c                    |   8 +-
 drivers/gpu/drm/virtio/virtgpu_kms.c            |   5 +-
 drivers/gpu/drm/virtio/virtgpu_vq.c             |   5 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_resource.c        |   9 +-
 drivers/i2c/i2c-core-base.c                     |  19 +-
 drivers/infiniband/core/cm.c                    |   8 +-
 drivers/infiniband/core/cma.c                   |  12 +-
 drivers/infiniband/core/rdma_core.c             |   9 +-
 drivers/infiniband/core/sa_query.c              |  23 +--
 drivers/infiniband/core/ucm.c                   |   7 +-
 drivers/infiniband/core/ucma.c                  |  14 +-
 drivers/infiniband/hw/cxgb3/iwch.c              |   4 +-
 drivers/infiniband/hw/cxgb3/iwch.h              |   4 +-
 drivers/infiniband/hw/cxgb4/device.c            |  18 +-
 drivers/infiniband/hw/cxgb4/iw_cxgb4.h          |   4 +-
 drivers/infiniband/hw/hfi1/init.c               |   9 +-
 drivers/infiniband/hw/hfi1/vnic_main.c          |   6 +-
 drivers/infiniband/hw/mlx4/cm.c                 |  13 +-
 drivers/infiniband/hw/ocrdma/ocrdma_main.c      |   7 +-
 drivers/infiniband/hw/qib/qib_init.c            |   9 +-
 drivers/infiniband/ulp/opa_vnic/opa_vnic_vema.c |  10 +-
 drivers/iommu/intel-svm.c                       |   9 +-
 drivers/md/dm.c                                 |  13 +-
 drivers/memstick/core/memstick.c                |  10 +-
 drivers/memstick/core/ms_block.c                |   9 +-
 drivers/memstick/core/mspro_block.c             |  12 +-
 drivers/mfd/rtsx_pcr.c                          |   9 +-
 drivers/misc/c2port/core.c                      |   7 +-
 drivers/misc/cxl/context.c                      |   8 +-
 drivers/misc/cxl/main.c                         |  15 +-
 drivers/misc/mei/main.c                         |   8 +-
 drivers/misc/mic/scif/scif_api.c                |  11 +-
 drivers/misc/mic/scif/scif_ports.c              |  18 +-
 drivers/misc/tifm_core.c                        |   9 +-
 drivers/mtd/mtdcore.c                           |   9 +-
 drivers/mtd/mtdcore.h                           |   2 +-
 drivers/mtd/ubi/block.c                         |   7 +-
 drivers/net/ppp/ppp_generic.c                   |  27 +--
 drivers/net/tap.c                               |  10 +-
 drivers/net/wireless/ath/ath10k/htt.h           |   3 +-
 drivers/net/wireless/ath/ath10k/htt_tx.c        |  22 ++-
 drivers/net/wireless/ath/ath10k/mac.c           |   2 +-
 drivers/net/wireless/marvell/mwifiex/main.c     |  13 +-
 drivers/net/wireless/marvell/mwifiex/wmm.c      |   2 +-
 drivers/of/overlay.c                            |  15 +-
 drivers/of/unittest.c                           |  25 ++-
 drivers/power/supply/bq2415x_charger.c          |  16 +-
 drivers/power/supply/bq27xxx_battery_i2c.c      |  15 +-
 drivers/power/supply/ds2782_battery.c           |   9 +-
 drivers/powercap/powercap_sys.c                 |   8 +-
 drivers/pps/pps.c                               |  10 +-
 drivers/rapidio/rio_cm.c                        |  17 +-
 drivers/remoteproc/remoteproc_core.c            |   8 +-
 drivers/rpmsg/virtio_rpmsg_bus.c                |   8 +-
 drivers/scsi/bfa/bfad_im.c                      |   8 +-
 drivers/scsi/ch.c                               |   8 +-
 drivers/scsi/lpfc/lpfc_crtn.h                   |   2 +-
 drivers/scsi/lpfc/lpfc_init.c                   |  11 +-
 drivers/scsi/lpfc/lpfc_vport.c                  |   8 +-
 drivers/scsi/sg.c                               |  10 +-
 drivers/scsi/st.c                               |   8 +-
 drivers/staging/greybus/uart.c                  |  22 +--
 drivers/staging/unisys/visorhba/visorhba_main.c |   7 +-
 drivers/target/iscsi/iscsi_target.c             |   7 +-
 drivers/target/iscsi/iscsi_target_login.c       |   9 +-
 drivers/target/target_core_device.c             |   9 +-
 drivers/target/target_core_user.c               |  13 +-
 drivers/tee/tee_shm.c                           |   8 +-
 drivers/uio/uio.c                               |   9 +-
 drivers/usb/class/cdc-acm.c                     |  24 +--
 drivers/usb/core/devices.c                      |   2 +-
 drivers/usb/core/hcd.c                          |   7 +-
 drivers/usb/mon/mon_main.c                      |   3 +-
 drivers/usb/serial/usb-serial.c                 |  11 +-
 drivers/vfio/vfio.c                             |  15 +-
 fs/dlm/lock.c                                   |   9 +-
 fs/dlm/lockspace.c                              |   6 +-
 fs/dlm/recover.c                                |  10 +-
 fs/nfs/nfs4client.c                             |   9 +-
 fs/nfsd/nfs4state.c                             |   8 +-
 fs/notify/inotify/inotify_fsnotify.c            |   4 +-
 fs/notify/inotify/inotify_user.c                |   9 +-
 fs/ocfs2/cluster/tcp.c                          |  10 +-
 include/linux/idr.h                             |  26 +--
 include/linux/of.h                              |   4 +-
 include/linux/radix-tree.h                      |   2 +-
 include/net/9p/9p.h                             |   2 +-
 include/net/act_api.h                           |  76 +++-----
 ipc/msg.c                                       |   2 +-
 ipc/sem.c                                       |   2 +-
 ipc/shm.c                                       |   4 +-
 ipc/util.c                                      |  17 +-
 kernel/bpf/syscall.c                            |  20 +-
 kernel/cgroup/cgroup.c                          |  57 +++---
 kernel/events/core.c                            |  10 +-
 kernel/workqueue.c                              |  15 +-
 lib/idr.c                                       |  38 ++--
 lib/radix-tree.c                                |   5 +-
 mm/memcontrol.c                                 |  11 +-
 net/9p/client.c                                 |  17 +-
 net/9p/util.c                                   |  14 +-
 net/core/net_namespace.c                        |  23 ++-
 net/mac80211/cfg.c                              |  23 +--
 net/mac80211/iface.c                            |   3 +-
 net/mac80211/main.c                             |   2 +-
 net/mac80211/tx.c                               |   7 +-
 net/mac80211/util.c                             |   3 +-
 net/netlink/genetlink.c                         |  18 +-
 net/qrtr/qrtr.c                                 |  21 +-
 net/rxrpc/conn_client.c                         |  15 +-
 net/sched/act_api.c                             | 249 +++++++++++-------------
 net/sched/act_bpf.c                             |  17 +-
 net/sched/act_connmark.c                        |  16 +-
 net/sched/act_csum.c                            |  16 +-
 net/sched/act_gact.c                            |  16 +-
 net/sched/act_ife.c                             |  20 +-
 net/sched/act_ipt.c                             |  26 ++-
 net/sched/act_mirred.c                          |  19 +-
 net/sched/act_nat.c                             |  16 +-
 net/sched/act_pedit.c                           |  18 +-
 net/sched/act_police.c                          |  18 +-
 net/sched/act_sample.c                          |  17 +-
 net/sched/act_simple.c                          |  20 +-
 net/sched/act_skbedit.c                         |  18 +-
 net/sched/act_skbmod.c                          |  18 +-
 net/sched/act_tunnel_key.c                      |  20 +-
 net/sched/act_vlan.c                            |  22 +--
 net/sched/cls_flower.c                          |  55 +++---
 net/sctp/associola.c                            |   8 +-
 net/tipc/server.c                               |   7 +-
 172 files changed, 1256 insertions(+), 1113 deletions(-)

-- 
1.8.3.1

WARNING: multiple messages have this Message-ID (diff)
From: Chris Mi <chrism-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
To: netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: lucho-OnYtXJJ0/fesTnJN9+BGXg@public.gmane.org,
	sergey.senozhatsky.work-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	snitzer-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org,
	markb-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org,
	tom.leiming-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	stefanr-MtYdepGKPcBMYopoZt5u/LNAH6kLmebB@public.gmane.org,
	zhi.a.wang-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
	nsekhar-l0cyMroinI0@public.gmane.org,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
	bfields-uC3wQj2KruNg9hUCZPvPmw@public.gmane.org,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	paulus-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org,
	jinpu.wang-EIkl63zCoXaH+58JC4qpiA@public.gmane.org,
	pshelar-LZ6Gd1LRuIk@public.gmane.org,
	sumit.semwal-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
	AlexBin.Xie-5C7GfCeVMHo@public.gmane.org,
	david1.zhou-5C7GfCeVMHo@public.gmane.org,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	maximlevitsky-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	sudarsana.kalluru-h88ZbnxC6KDQT0dZR+AlfA@public.gmane.org,
	marek.vasut-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	linux-atm-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
	dtwlin-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	michel.daenzer-5C7GfCeVMHo@public.gmane.org,
	dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
	stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org,
	longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	niranjana.vishwanathapura-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
	philipp.reisner-63ez5xqkn6DQT0dZR+AlfA@public.gmane.org,
	shli-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org,
	ohad-Ix1uc/W3ht7QT0dZR+AlfA@public.gmane.org,
	pmladek-IBi9RG/b67k@public.gmane.org,
	dick.kennedy-dY08KVG/lbpWk0Htik3J/w@public.gmane.orglinux-
Subject: [patch net-next 0/3] net/sched: Improve getting objects by indexes
Date: Tue, 15 Aug 2017 22:12:15 -0400	[thread overview]
Message-ID: <1502849538-14284-1-git-send-email-chrism@mellanox.com> (raw)

Using current TC code, it is very slow to insert a lot of rules.

In order to improve the rules update rate in TC,
we introduced the following two changes:
        1) changed cls_flower to use IDR to manage the filters.
        2) changed all act_xxx modules to use IDR instead of
           a small hash table

But IDR has a limitation that it uses int. TC handle uses u32.
To make sure there is no regression, we also changed IDR to use
unsigned long. All clients of IDR are changed to use new IDR API.

Chris Mi (3):
  idr: Use unsigned long instead of int
  net/sched: Change cls_flower to use IDR
  net/sched: Change act_api and act_xxx modules to use IDR

 block/bsg.c                                     |   8 +-
 block/genhd.c                                   |  12 +-
 drivers/atm/nicstar.c                           |  11 +-
 drivers/block/drbd/drbd_main.c                  |  31 +--
 drivers/block/drbd/drbd_nl.c                    |  22 ++-
 drivers/block/drbd/drbd_proc.c                  |   3 +-
 drivers/block/drbd/drbd_receiver.c              |  15 +-
 drivers/block/drbd/drbd_state.c                 |  34 ++--
 drivers/block/drbd/drbd_worker.c                |   6 +-
 drivers/block/loop.c                            |  17 +-
 drivers/block/nbd.c                             |  20 +-
 drivers/block/zram/zram_drv.c                   |   9 +-
 drivers/char/tpm/tpm-chip.c                     |  10 +-
 drivers/char/tpm/tpm.h                          |   2 +-
 drivers/dca/dca-sysfs.c                         |   9 +-
 drivers/firewire/core-cdev.c                    |  18 +-
 drivers/firewire/core-device.c                  |  15 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c     |   8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c         |   9 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c         |   6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c         |   2 +-
 drivers/gpu/drm/drm_auth.c                      |   9 +-
 drivers/gpu/drm/drm_connector.c                 |  10 +-
 drivers/gpu/drm/drm_context.c                   |  20 +-
 drivers/gpu/drm/drm_dp_aux_dev.c                |  11 +-
 drivers/gpu/drm/drm_drv.c                       |   6 +-
 drivers/gpu/drm/drm_gem.c                       |  19 +-
 drivers/gpu/drm/drm_info.c                      |   2 +-
 drivers/gpu/drm/drm_mode_object.c               |  11 +-
 drivers/gpu/drm/drm_syncobj.c                   |  18 +-
 drivers/gpu/drm/exynos/exynos_drm_ipp.c         |  25 ++-
 drivers/gpu/drm/i915/gvt/display.c              |   2 +-
 drivers/gpu/drm/i915/gvt/kvmgt.c                |   2 +-
 drivers/gpu/drm/i915/gvt/vgpu.c                 |   9 +-
 drivers/gpu/drm/i915/i915_debugfs.c             |   6 +-
 drivers/gpu/drm/i915/i915_gem_context.c         |   9 +-
 drivers/gpu/drm/qxl/qxl_cmd.c                   |   8 +-
 drivers/gpu/drm/qxl/qxl_release.c               |  14 +-
 drivers/gpu/drm/sis/sis_mm.c                    |   8 +-
 drivers/gpu/drm/tegra/drm.c                     |  10 +-
 drivers/gpu/drm/tilcdc/tilcdc_slave_compat.c    |   3 +-
 drivers/gpu/drm/vgem/vgem_fence.c               |  12 +-
 drivers/gpu/drm/via/via_mm.c                    |   8 +-
 drivers/gpu/drm/virtio/virtgpu_kms.c            |   5 +-
 drivers/gpu/drm/virtio/virtgpu_vq.c             |   5 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_resource.c        |   9 +-
 drivers/i2c/i2c-core-base.c                     |  19 +-
 drivers/infiniband/core/cm.c                    |   8 +-
 drivers/infiniband/core/cma.c                   |  12 +-
 drivers/infiniband/core/rdma_core.c             |   9 +-
 drivers/infiniband/core/sa_query.c              |  23 +--
 drivers/infiniband/core/ucm.c                   |   7 +-
 drivers/infiniband/core/ucma.c                  |  14 +-
 drivers/infiniband/hw/cxgb3/iwch.c              |   4 +-
 drivers/infiniband/hw/cxgb3/iwch.h              |   4 +-
 drivers/infiniband/hw/cxgb4/device.c            |  18 +-
 drivers/infiniband/hw/cxgb4/iw_cxgb4.h          |   4 +-
 drivers/infiniband/hw/hfi1/init.c               |   9 +-
 drivers/infiniband/hw/hfi1/vnic_main.c          |   6 +-
 drivers/infiniband/hw/mlx4/cm.c                 |  13 +-
 drivers/infiniband/hw/ocrdma/ocrdma_main.c      |   7 +-
 drivers/infiniband/hw/qib/qib_init.c            |   9 +-
 drivers/infiniband/ulp/opa_vnic/opa_vnic_vema.c |  10 +-
 drivers/iommu/intel-svm.c                       |   9 +-
 drivers/md/dm.c                                 |  13 +-
 drivers/memstick/core/memstick.c                |  10 +-
 drivers/memstick/core/ms_block.c                |   9 +-
 drivers/memstick/core/mspro_block.c             |  12 +-
 drivers/mfd/rtsx_pcr.c                          |   9 +-
 drivers/misc/c2port/core.c                      |   7 +-
 drivers/misc/cxl/context.c                      |   8 +-
 drivers/misc/cxl/main.c                         |  15 +-
 drivers/misc/mei/main.c                         |   8 +-
 drivers/misc/mic/scif/scif_api.c                |  11 +-
 drivers/misc/mic/scif/scif_ports.c              |  18 +-
 drivers/misc/tifm_core.c                        |   9 +-
 drivers/mtd/mtdcore.c                           |   9 +-
 drivers/mtd/mtdcore.h                           |   2 +-
 drivers/mtd/ubi/block.c                         |   7 +-
 drivers/net/ppp/ppp_generic.c                   |  27 +--
 drivers/net/tap.c                               |  10 +-
 drivers/net/wireless/ath/ath10k/htt.h           |   3 +-
 drivers/net/wireless/ath/ath10k/htt_tx.c        |  22 ++-
 drivers/net/wireless/ath/ath10k/mac.c           |   2 +-
 drivers/net/wireless/marvell/mwifiex/main.c     |  13 +-
 drivers/net/wireless/marvell/mwifiex/wmm.c      |   2 +-
 drivers/of/overlay.c                            |  15 +-
 drivers/of/unittest.c                           |  25 ++-
 drivers/power/supply/bq2415x_charger.c          |  16 +-
 drivers/power/supply/bq27xxx_battery_i2c.c      |  15 +-
 drivers/power/supply/ds2782_battery.c           |   9 +-
 drivers/powercap/powercap_sys.c                 |   8 +-
 drivers/pps/pps.c                               |  10 +-
 drivers/rapidio/rio_cm.c                        |  17 +-
 drivers/remoteproc/remoteproc_core.c            |   8 +-
 drivers/rpmsg/virtio_rpmsg_bus.c                |   8 +-
 drivers/scsi/bfa/bfad_im.c                      |   8 +-
 drivers/scsi/ch.c                               |   8 +-
 drivers/scsi/lpfc/lpfc_crtn.h                   |   2 +-
 drivers/scsi/lpfc/lpfc_init.c                   |  11 +-
 drivers/scsi/lpfc/lpfc_vport.c                  |   8 +-
 drivers/scsi/sg.c                               |  10 +-
 drivers/scsi/st.c                               |   8 +-
 drivers/staging/greybus/uart.c                  |  22 +--
 drivers/staging/unisys/visorhba/visorhba_main.c |   7 +-
 drivers/target/iscsi/iscsi_target.c             |   7 +-
 drivers/target/iscsi/iscsi_target_login.c       |   9 +-
 drivers/target/target_core_device.c             |   9 +-
 drivers/target/target_core_user.c               |  13 +-
 drivers/tee/tee_shm.c                           |   8 +-
 drivers/uio/uio.c                               |   9 +-
 drivers/usb/class/cdc-acm.c                     |  24 +--
 drivers/usb/core/devices.c                      |   2 +-
 drivers/usb/core/hcd.c                          |   7 +-
 drivers/usb/mon/mon_main.c                      |   3 +-
 drivers/usb/serial/usb-serial.c                 |  11 +-
 drivers/vfio/vfio.c                             |  15 +-
 fs/dlm/lock.c                                   |   9 +-
 fs/dlm/lockspace.c                              |   6 +-
 fs/dlm/recover.c                                |  10 +-
 fs/nfs/nfs4client.c                             |   9 +-
 fs/nfsd/nfs4state.c                             |   8 +-
 fs/notify/inotify/inotify_fsnotify.c            |   4 +-
 fs/notify/inotify/inotify_user.c                |   9 +-
 fs/ocfs2/cluster/tcp.c                          |  10 +-
 include/linux/idr.h                             |  26 +--
 include/linux/of.h                              |   4 +-
 include/linux/radix-tree.h                      |   2 +-
 include/net/9p/9p.h                             |   2 +-
 include/net/act_api.h                           |  76 +++-----
 ipc/msg.c                                       |   2 +-
 ipc/sem.c                                       |   2 +-
 ipc/shm.c                                       |   4 +-
 ipc/util.c                                      |  17 +-
 kernel/bpf/syscall.c                            |  20 +-
 kernel/cgroup/cgroup.c                          |  57 +++---
 kernel/events/core.c                            |  10 +-
 kernel/workqueue.c                              |  15 +-
 lib/idr.c                                       |  38 ++--
 lib/radix-tree.c                                |   5 +-
 mm/memcontrol.c                                 |  11 +-
 net/9p/client.c                                 |  17 +-
 net/9p/util.c                                   |  14 +-
 net/core/net_namespace.c                        |  23 ++-
 net/mac80211/cfg.c                              |  23 +--
 net/mac80211/iface.c                            |   3 +-
 net/mac80211/main.c                             |   2 +-
 net/mac80211/tx.c                               |   7 +-
 net/mac80211/util.c                             |   3 +-
 net/netlink/genetlink.c                         |  18 +-
 net/qrtr/qrtr.c                                 |  21 +-
 net/rxrpc/conn_client.c                         |  15 +-
 net/sched/act_api.c                             | 249 +++++++++++-------------
 net/sched/act_bpf.c                             |  17 +-
 net/sched/act_connmark.c                        |  16 +-
 net/sched/act_csum.c                            |  16 +-
 net/sched/act_gact.c                            |  16 +-
 net/sched/act_ife.c                             |  20 +-
 net/sched/act_ipt.c                             |  26 ++-
 net/sched/act_mirred.c                          |  19 +-
 net/sched/act_nat.c                             |  16 +-
 net/sched/act_pedit.c                           |  18 +-
 net/sched/act_police.c                          |  18 +-
 net/sched/act_sample.c                          |  17 +-
 net/sched/act_simple.c                          |  20 +-
 net/sched/act_skbedit.c                         |  18 +-
 net/sched/act_skbmod.c                          |  18 +-
 net/sched/act_tunnel_key.c                      |  20 +-
 net/sched/act_vlan.c                            |  22 +--
 net/sched/cls_flower.c                          |  55 +++---
 net/sctp/associola.c                            |   8 +-
 net/tipc/server.c                               |   7 +-
 172 files changed, 1256 insertions(+), 1113 deletions(-)

-- 
1.8.3.1


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot

WARNING: multiple messages have this Message-ID (diff)
From: Chris Mi <chrism-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
To: netdev-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Cc: lucho-OnYtXJJ0/fesTnJN9+BGXg@public.gmane.org,
	sergey.senozhatsky.work-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	snitzer-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	wsa-z923LK4zBo2bacvFa/9K2g@public.gmane.org,
	markb-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org,
	tom.leiming-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	stefanr-MtYdepGKPcBMYopoZt5u/LNAH6kLmebB@public.gmane.org,
	zhi.a.wang-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
	nsekhar-l0cyMroinI0@public.gmane.org,
	dri-devel-PD4FTy7X32lNgt0PjOBp9y5qC8QIuHrW@public.gmane.org,
	bfields-uC3wQj2KruNg9hUCZPvPmw@public.gmane.org,
	linux-sctp-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	paulus-eUNUBHrolfbYtjvyW6yDsg@public.gmane.org,
	jinpu.wang-EIkl63zCoXaH+58JC4qpiA@public.gmane.org,
	pshelar-LZ6Gd1LRuIk@public.gmane.org,
	sumit.semwal-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org,
	AlexBin.Xie-5C7GfCeVMHo@public.gmane.org,
	david1.zhou-5C7GfCeVMHo@public.gmane.org,
	linux-samsung-soc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
	maximlevitsky-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	sudarsana.kalluru-h88ZbnxC6KDQT0dZR+AlfA@public.gmane.org,
	marek.vasut-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	linux-atm-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
	dtwlin-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org,
	michel.daenzer-5C7GfCeVMHo@public.gmane.org,
	dledford-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	tpmdd-devel-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
	stern-nwvwT67g6+6dFdvTe/nMLpVzexx5G7lz@public.gmane.org,
	longman-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org,
	niranjana.vishwanathapura-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org,
	philipp.reisner-63ez5xqkn6DQT0dZR+AlfA@public.gmane.org,
	shli-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org,
	linux-0h96xk9xTtrk1uMJSBkQmQ@public.gmane.org,
	ohad-Ix1uc/W3ht7QT0dZR+AlfA@public.gmane.org,
	pmladek-IBi9RG/b67k@public.gmane.org,
	dick.kennedy-dY08KVG/lbpWk0Htik3J/w@public.gmane.org, linux-
Subject: [patch net-next 0/3] net/sched: Improve getting objects by indexes
Date: Tue, 15 Aug 2017 22:12:15 -0400	[thread overview]
Message-ID: <1502849538-14284-1-git-send-email-chrism@mellanox.com> (raw)

Using current TC code, it is very slow to insert a lot of rules.

In order to improve the rules update rate in TC,
we introduced the following two changes:
        1) changed cls_flower to use IDR to manage the filters.
        2) changed all act_xxx modules to use IDR instead of
           a small hash table

But IDR has a limitation that it uses int. TC handle uses u32.
To make sure there is no regression, we also changed IDR to use
unsigned long. All clients of IDR are changed to use new IDR API.

Chris Mi (3):
  idr: Use unsigned long instead of int
  net/sched: Change cls_flower to use IDR
  net/sched: Change act_api and act_xxx modules to use IDR

 block/bsg.c                                     |   8 +-
 block/genhd.c                                   |  12 +-
 drivers/atm/nicstar.c                           |  11 +-
 drivers/block/drbd/drbd_main.c                  |  31 +--
 drivers/block/drbd/drbd_nl.c                    |  22 ++-
 drivers/block/drbd/drbd_proc.c                  |   3 +-
 drivers/block/drbd/drbd_receiver.c              |  15 +-
 drivers/block/drbd/drbd_state.c                 |  34 ++--
 drivers/block/drbd/drbd_worker.c                |   6 +-
 drivers/block/loop.c                            |  17 +-
 drivers/block/nbd.c                             |  20 +-
 drivers/block/zram/zram_drv.c                   |   9 +-
 drivers/char/tpm/tpm-chip.c                     |  10 +-
 drivers/char/tpm/tpm.h                          |   2 +-
 drivers/dca/dca-sysfs.c                         |   9 +-
 drivers/firewire/core-cdev.c                    |  18 +-
 drivers/firewire/core-device.c                  |  15 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c     |   8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c         |   9 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c         |   6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c         |   2 +-
 drivers/gpu/drm/drm_auth.c                      |   9 +-
 drivers/gpu/drm/drm_connector.c                 |  10 +-
 drivers/gpu/drm/drm_context.c                   |  20 +-
 drivers/gpu/drm/drm_dp_aux_dev.c                |  11 +-
 drivers/gpu/drm/drm_drv.c                       |   6 +-
 drivers/gpu/drm/drm_gem.c                       |  19 +-
 drivers/gpu/drm/drm_info.c                      |   2 +-
 drivers/gpu/drm/drm_mode_object.c               |  11 +-
 drivers/gpu/drm/drm_syncobj.c                   |  18 +-
 drivers/gpu/drm/exynos/exynos_drm_ipp.c         |  25 ++-
 drivers/gpu/drm/i915/gvt/display.c              |   2 +-
 drivers/gpu/drm/i915/gvt/kvmgt.c                |   2 +-
 drivers/gpu/drm/i915/gvt/vgpu.c                 |   9 +-
 drivers/gpu/drm/i915/i915_debugfs.c             |   6 +-
 drivers/gpu/drm/i915/i915_gem_context.c         |   9 +-
 drivers/gpu/drm/qxl/qxl_cmd.c                   |   8 +-
 drivers/gpu/drm/qxl/qxl_release.c               |  14 +-
 drivers/gpu/drm/sis/sis_mm.c                    |   8 +-
 drivers/gpu/drm/tegra/drm.c                     |  10 +-
 drivers/gpu/drm/tilcdc/tilcdc_slave_compat.c    |   3 +-
 drivers/gpu/drm/vgem/vgem_fence.c               |  12 +-
 drivers/gpu/drm/via/via_mm.c                    |   8 +-
 drivers/gpu/drm/virtio/virtgpu_kms.c            |   5 +-
 drivers/gpu/drm/virtio/virtgpu_vq.c             |   5 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_resource.c        |   9 +-
 drivers/i2c/i2c-core-base.c                     |  19 +-
 drivers/infiniband/core/cm.c                    |   8 +-
 drivers/infiniband/core/cma.c                   |  12 +-
 drivers/infiniband/core/rdma_core.c             |   9 +-
 drivers/infiniband/core/sa_query.c              |  23 +--
 drivers/infiniband/core/ucm.c                   |   7 +-
 drivers/infiniband/core/ucma.c                  |  14 +-
 drivers/infiniband/hw/cxgb3/iwch.c              |   4 +-
 drivers/infiniband/hw/cxgb3/iwch.h              |   4 +-
 drivers/infiniband/hw/cxgb4/device.c            |  18 +-
 drivers/infiniband/hw/cxgb4/iw_cxgb4.h          |   4 +-
 drivers/infiniband/hw/hfi1/init.c               |   9 +-
 drivers/infiniband/hw/hfi1/vnic_main.c          |   6 +-
 drivers/infiniband/hw/mlx4/cm.c                 |  13 +-
 drivers/infiniband/hw/ocrdma/ocrdma_main.c      |   7 +-
 drivers/infiniband/hw/qib/qib_init.c            |   9 +-
 drivers/infiniband/ulp/opa_vnic/opa_vnic_vema.c |  10 +-
 drivers/iommu/intel-svm.c                       |   9 +-
 drivers/md/dm.c                                 |  13 +-
 drivers/memstick/core/memstick.c                |  10 +-
 drivers/memstick/core/ms_block.c                |   9 +-
 drivers/memstick/core/mspro_block.c             |  12 +-
 drivers/mfd/rtsx_pcr.c                          |   9 +-
 drivers/misc/c2port/core.c                      |   7 +-
 drivers/misc/cxl/context.c                      |   8 +-
 drivers/misc/cxl/main.c                         |  15 +-
 drivers/misc/mei/main.c                         |   8 +-
 drivers/misc/mic/scif/scif_api.c                |  11 +-
 drivers/misc/mic/scif/scif_ports.c              |  18 +-
 drivers/misc/tifm_core.c                        |   9 +-
 drivers/mtd/mtdcore.c                           |   9 +-
 drivers/mtd/mtdcore.h                           |   2 +-
 drivers/mtd/ubi/block.c                         |   7 +-
 drivers/net/ppp/ppp_generic.c                   |  27 +--
 drivers/net/tap.c                               |  10 +-
 drivers/net/wireless/ath/ath10k/htt.h           |   3 +-
 drivers/net/wireless/ath/ath10k/htt_tx.c        |  22 ++-
 drivers/net/wireless/ath/ath10k/mac.c           |   2 +-
 drivers/net/wireless/marvell/mwifiex/main.c     |  13 +-
 drivers/net/wireless/marvell/mwifiex/wmm.c      |   2 +-
 drivers/of/overlay.c                            |  15 +-
 drivers/of/unittest.c                           |  25 ++-
 drivers/power/supply/bq2415x_charger.c          |  16 +-
 drivers/power/supply/bq27xxx_battery_i2c.c      |  15 +-
 drivers/power/supply/ds2782_battery.c           |   9 +-
 drivers/powercap/powercap_sys.c                 |   8 +-
 drivers/pps/pps.c                               |  10 +-
 drivers/rapidio/rio_cm.c                        |  17 +-
 drivers/remoteproc/remoteproc_core.c            |   8 +-
 drivers/rpmsg/virtio_rpmsg_bus.c                |   8 +-
 drivers/scsi/bfa/bfad_im.c                      |   8 +-
 drivers/scsi/ch.c                               |   8 +-
 drivers/scsi/lpfc/lpfc_crtn.h                   |   2 +-
 drivers/scsi/lpfc/lpfc_init.c                   |  11 +-
 drivers/scsi/lpfc/lpfc_vport.c                  |   8 +-
 drivers/scsi/sg.c                               |  10 +-
 drivers/scsi/st.c                               |   8 +-
 drivers/staging/greybus/uart.c                  |  22 +--
 drivers/staging/unisys/visorhba/visorhba_main.c |   7 +-
 drivers/target/iscsi/iscsi_target.c             |   7 +-
 drivers/target/iscsi/iscsi_target_login.c       |   9 +-
 drivers/target/target_core_device.c             |   9 +-
 drivers/target/target_core_user.c               |  13 +-
 drivers/tee/tee_shm.c                           |   8 +-
 drivers/uio/uio.c                               |   9 +-
 drivers/usb/class/cdc-acm.c                     |  24 +--
 drivers/usb/core/devices.c                      |   2 +-
 drivers/usb/core/hcd.c                          |   7 +-
 drivers/usb/mon/mon_main.c                      |   3 +-
 drivers/usb/serial/usb-serial.c                 |  11 +-
 drivers/vfio/vfio.c                             |  15 +-
 fs/dlm/lock.c                                   |   9 +-
 fs/dlm/lockspace.c                              |   6 +-
 fs/dlm/recover.c                                |  10 +-
 fs/nfs/nfs4client.c                             |   9 +-
 fs/nfsd/nfs4state.c                             |   8 +-
 fs/notify/inotify/inotify_fsnotify.c            |   4 +-
 fs/notify/inotify/inotify_user.c                |   9 +-
 fs/ocfs2/cluster/tcp.c                          |  10 +-
 include/linux/idr.h                             |  26 +--
 include/linux/of.h                              |   4 +-
 include/linux/radix-tree.h                      |   2 +-
 include/net/9p/9p.h                             |   2 +-
 include/net/act_api.h                           |  76 +++-----
 ipc/msg.c                                       |   2 +-
 ipc/sem.c                                       |   2 +-
 ipc/shm.c                                       |   4 +-
 ipc/util.c                                      |  17 +-
 kernel/bpf/syscall.c                            |  20 +-
 kernel/cgroup/cgroup.c                          |  57 +++---
 kernel/events/core.c                            |  10 +-
 kernel/workqueue.c                              |  15 +-
 lib/idr.c                                       |  38 ++--
 lib/radix-tree.c                                |   5 +-
 mm/memcontrol.c                                 |  11 +-
 net/9p/client.c                                 |  17 +-
 net/9p/util.c                                   |  14 +-
 net/core/net_namespace.c                        |  23 ++-
 net/mac80211/cfg.c                              |  23 +--
 net/mac80211/iface.c                            |   3 +-
 net/mac80211/main.c                             |   2 +-
 net/mac80211/tx.c                               |   7 +-
 net/mac80211/util.c                             |   3 +-
 net/netlink/genetlink.c                         |  18 +-
 net/qrtr/qrtr.c                                 |  21 +-
 net/rxrpc/conn_client.c                         |  15 +-
 net/sched/act_api.c                             | 249 +++++++++++-------------
 net/sched/act_bpf.c                             |  17 +-
 net/sched/act_connmark.c                        |  16 +-
 net/sched/act_csum.c                            |  16 +-
 net/sched/act_gact.c                            |  16 +-
 net/sched/act_ife.c                             |  20 +-
 net/sched/act_ipt.c                             |  26 ++-
 net/sched/act_mirred.c                          |  19 +-
 net/sched/act_nat.c                             |  16 +-
 net/sched/act_pedit.c                           |  18 +-
 net/sched/act_police.c                          |  18 +-
 net/sched/act_sample.c                          |  17 +-
 net/sched/act_simple.c                          |  20 +-
 net/sched/act_skbedit.c                         |  18 +-
 net/sched/act_skbmod.c                          |  18 +-
 net/sched/act_tunnel_key.c                      |  20 +-
 net/sched/act_vlan.c                            |  22 +--
 net/sched/cls_flower.c                          |  55 +++---
 net/sctp/associola.c                            |   8 +-
 net/tipc/server.c                               |   7 +-
 172 files changed, 1256 insertions(+), 1113 deletions(-)

-- 
1.8.3.1


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot

WARNING: multiple messages have this Message-ID (diff)
From: Chris Mi <chrism@mellanox.com>
To: netdev@vger.kernel.org
Cc: lucho@ionkov.net, sergey.senozhatsky.work@gmail.com,
	snitzer@redhat.com, wsa@the-dreams.de, markb@mellanox.com,
	tom.leiming@gmail.com, stefanr@s5r6.in-berlin.de,
	zhi.a.wang@intel.com, nsekhar@ti.com,
	dri-devel@lists.freedesktop.org, bfields@fieldses.org,
	linux-sctp@vger.kernel.org, paulus@samba.org,
	jinpu.wang@profitbricks.com, pshelar@ovn.org,
	sumit.semwal@linaro.org, AlexBin.Xie@amd.com,
	david1.zhou@amd.com, linux-samsung-soc@vger.kernel.org,
	maximlevitsky@gmail.com, sudarsana.kalluru@qlogic.com,
	marek.vasut@gmail.com, linux-atm-general@lists.sourceforge.net,
	dtwlin@gmail.com, michel.daenzer@amd.com, dledford@redhat.com,
	tpmdd-devel@lists.sourceforge.net, stern@rowland.harvard.edu,
	longman@redhat.com, niranjana.vishwanathapura@intel.com,
	philipp.reisner@linbit.com, shli@kernel.org, linux@roeck-us.net,
	ohad@wizery.com, pmladek@suse.com, dick.kennedy@broadcom.com,
	linux-pm@vger.kernel.org, ericvh@gmail.com,
	geliangtang@gmail.com, sparmaintainer@unisys.com,
	giometti@enneenne.com, acme@kernel.org, inki.dae@samsung.com,
	alex.williamson@redhat.com, rppt@linux.vnet.ibm.com,
	teigland@redhat.com, viro@zeniv.linux.org.uk,
	anna.schumaker@netapp.com, weiyj.lk@gmail.com,
	chrism@mellanox.com, marcos.souza.org@gmail.com,
	mike.marciniszyn@intel.com, elder@kernel.org,
	nbd-general@lists.sourceforge.net, nhorman@tuxdriver.com,
	nicolai.haehnle@amd.com, david.binder@unisys.com,
	gregkh@linuxfoundation.org, linux-usb@vger.kernel.org,
	anil.gurumurthy@qlogic.com, linux-kernel@vger.kernel.org,
	varun@chelsio.com, majd@mellanox.com, devesh.sharma@broadcom.com,
	sameer.wadgaonkar@unisys.com, bhaktipriya96@gmail.com,
	alexander.deucher@amd.com, shaun.tancheff@seagate.com,
	akpm@linux-foundation.org, matan@mellanox.com,
	jlbec@evilplan.org, kraxel@redhat.com, Jason@zx2c4.com,
	timothy.sell@unisys.com, airlied@linux.ie,
	linux-wireless@vger.kernel.org, pantelis.antoniou@konsulko.com,
	sudeep.dutt@intel.com, neilb@suse.com, edumazet@google.com,
	target-devel@vger.kernel.org, linux-i2c@vger.kernel.org,
	daniel.vetter@intel.com, jsarha@ti.com, osandov@fb.com,
	agk@redhat.com, drbd-dev@lists.linbit.com,
	boris.brezillon@free-electrons.com, thellstrom@vmware.com,
	dave@stgolabs.net, paul@paul-moore.com, leon@kernel.org,
	sainath.grandhi@intel.com, gustavo.padovan@collabora.co.uk,
	james.smart@broadcom.com, jonathanh@nvidia.com,
	selvin.xavier@broadcom.com, kgene@kernel.org,
	linux-graphics-maintainer@vmware.com, andresx7@gmail.com,
	3chas3@gmail.com, airlied@redhat.com, sean.hefty@intel.com,
	virtualization@lists.linux-foundation.org,
	hal.rosenstock@gmail.com, tj@kernel.org, mszeredi@redhat.com,
	hannes@stressinduktion.org, felipe.balbi@linux.intel.com,
	pali.rohar@gmail.com, tpmdd@selhorst.net,
	linuxppc-dev@lists.ozlabs.org, jani.nikula@linux.intel.com,
	greybus-dev@lists.linaro.org, nishants@marvell.com,
	swise@chelsio.com, yuval.shaia@oracle.com,
	xiyou.wangcong@gmail.com, evan.quan@amd.com,
	lars.ellenberg@linbit.com, linux-arm-kernel@lists.infradead.org,
	dwindsor@gmail.com, linux-raid@vger.kernel.org, syeh@vmware.com,
	bryan.thompson@unisys.com, ying.xue@windriver.com,
	Felix.Kuehling@amd.com, oneukum@suse.com, fw@strlen.de,
	davem@davemloft.net, minchan@kernel.org,
	kyungmin.park@samsung.com, monis@mellanox.com,
	ebiederm@xmission.com, sre@kernel.org, don.hiatt@intel.com,
	leo.liu@amd.com, jens.wiklander@linaro.org,
	hans.westgaard.ry@oracle.com, alexander.shishkin@linux.intel.com,
	dennis.dalessandro@intel.com, jasowang@redhat.com,
	joonas.lahtinen@linux.intel.com, jiangshanlai@gmail.com,
	ast@kernel.org, fbarrat@linux.vnet.ibm.com, mhocko@kernel.org,
	alexandre.bounine@idt.com, linux-mtd@lists.infradead.org,
	amd-gfx@lists.freedesktop.org, cgroups@vger.kernel.org,
	jlayton@poochiereds.net, frowand.list@gmail.com,
	elena.reshetova@intel.com, f.fainelli@gmail.com,
	jejb@linux.vnet.ibm.com, daniel@iogearbox.net,
	linux-rdma@vger.kernel.org, p.shailesh@samsung.com,
	ath10k@lists.infradead.org, jgunthorpe@obsidianresearch.com,
	ccaulfie@redhat.com, tomi.valkeinen@ti.com, Monk.Liu@amd.com,
	dgilbert@interlog.com, ira.weiny@intel.com,
	david.kershner@unisys.com, adobriyan@gmail.com,
	jon.maloy@ericsson.com, keescook@chromium.org, arnd@arndb.de,
	intel-gfx@lists.freedesktop.org, jhs@mojatatu.com,
	zhenyuw@linux.intel.com, v9fs-developer@lists.sourceforge.net,
	rmk+kernel@armlinux.org.uk, seanpaul@chromium.org,
	nab@linux-iscsi.org, Jerry.Zhang@amd.com, eparis@parisplace.org,
	nicolas.dichtel@6wind.com, chris@chris-wilson.co.uk,
	mporter@kernel.crashing.org, rogerq@ti.com,
	linux-nfs@vger.kernel.org, martin.petersen@oracle.com,
	linux-ppp@vger.kernel.org, dm-devel@redhat.com,
	sw0312.kim@samsung.com, fujita.tomonori@lab.ntt.co.jp,
	iommu@lists.linux-foundation.org, roman.kapl@sysgo.com,
	ngupta@vflare.org, andrew.donnellan@au1.ibm.com,
	cyrille.pitchen@wedev4u.fr, thierry.reding@gmail.com,
	colin.king@canonical.com, computersforpeace@gmail.com,
	logang@deltatee.com, christian.koenig@amd.com,
	ocfs2-devel@oss.oracle.com, rlove@rlove.org, jack@suse.cz,
	kvm@vger.kernel.org, mst@redhat.com, peterz@infradead.org,
	bigeasy@linutronix.de, trond.myklebust@primarydata.com,
	linux-remoteproc@vger.kernel.org, amitkarwar@gmail.com,
	bjorn.andersson@linaro.org, dhowells@redhat.com,
	linux-mm@kvack.org, ray.huang@amd.com, jiri@resnulli.us,
	peterhuewe@gmx.de, linux1394-devel@lists.sourceforge.net,
	lee.jones@linaro.org, john@johnmccutchan.com,
	devel@driverdev.osuosl.org, stephen@networkplumber.org,
	mario.kleiner.de@gmail.com, manfred@colorfullife.com,
	oakad@yahoo.com, linux-scsi@vger.kernel.org,
	mawilcox@microsoft.com, mfasheh@versity.com, richard@nod.at,
	joro@8bytes.org, jiangyilism@gmail.com,
	elfring@users.sourceforge.net, cluster-devel@redhat.com,
	javier@osg.samsung.com, jarkko.sakkinen@linux.intel.com,
	mingo@redhat.com, vdavydov.dev@gmail.com, kvalo@qca.qualcomm.com,
	tipc-discussion@lists.sourceforge.net, ogerlitz@mellanox.com,
	ishkamiel@gmail.com, devicetree@vger.kernel.org,
	lizefan@huawei.com, huxm@marvell.com, mchehab@kernel.org,
	johan@kernel.org, aditr@vmware.com, linux-block@vger.kernel.org,
	robh+dt@kernel.org, Kai.Makisara@kolumbus.fi, hare@suse.de,
	rminnich@sandia.gov, linux-tegra@vger.kernel.org,
	dsa@cumulusnetworks.com, intel-gvt-dev@lists.freedesktop.org,
	jy0922.shim@samsung.com, axboe@kernel.dk, gbhat@marvell.com,
	tomas.winkler@intel.com, dedekind1@gmail.com, jbacik@fb.com,
	jarno@ovn.org, vyasevich@gmail.com, krzk@kernel.org,
	sboyd@codeaurora.org, jiri@mellanox.com, afd@ti.com,
	ashutosh.dixit@intel.com, yishaih@mellanox.com,
	rjw@rjwysocki.net, hannes@cmpxchg.org,
	Bart.VanAssche@sandisk.com, johannes@sipsolutions.net,
	dwmw2@infradead.org, dasaratharaman.chandramouli@intel.com
Subject: [patch net-next 0/3] net/sched: Improve getting objects by indexes
Date: Tue, 15 Aug 2017 22:12:15 -0400	[thread overview]
Message-ID: <1502849538-14284-1-git-send-email-chrism@mellanox.com> (raw)

Using current TC code, it is very slow to insert a lot of rules.

In order to improve the rules update rate in TC,
we introduced the following two changes:
        1) changed cls_flower to use IDR to manage the filters.
        2) changed all act_xxx modules to use IDR instead of
           a small hash table

But IDR has a limitation that it uses int. TC handle uses u32.
To make sure there is no regression, we also changed IDR to use
unsigned long. All clients of IDR are changed to use new IDR API.

Chris Mi (3):
  idr: Use unsigned long instead of int
  net/sched: Change cls_flower to use IDR
  net/sched: Change act_api and act_xxx modules to use IDR

 block/bsg.c                                     |   8 +-
 block/genhd.c                                   |  12 +-
 drivers/atm/nicstar.c                           |  11 +-
 drivers/block/drbd/drbd_main.c                  |  31 +--
 drivers/block/drbd/drbd_nl.c                    |  22 ++-
 drivers/block/drbd/drbd_proc.c                  |   3 +-
 drivers/block/drbd/drbd_receiver.c              |  15 +-
 drivers/block/drbd/drbd_state.c                 |  34 ++--
 drivers/block/drbd/drbd_worker.c                |   6 +-
 drivers/block/loop.c                            |  17 +-
 drivers/block/nbd.c                             |  20 +-
 drivers/block/zram/zram_drv.c                   |   9 +-
 drivers/char/tpm/tpm-chip.c                     |  10 +-
 drivers/char/tpm/tpm.h                          |   2 +-
 drivers/dca/dca-sysfs.c                         |   9 +-
 drivers/firewire/core-cdev.c                    |  18 +-
 drivers/firewire/core-device.c                  |  15 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c     |   8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c         |   9 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c         |   6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c         |   2 +-
 drivers/gpu/drm/drm_auth.c                      |   9 +-
 drivers/gpu/drm/drm_connector.c                 |  10 +-
 drivers/gpu/drm/drm_context.c                   |  20 +-
 drivers/gpu/drm/drm_dp_aux_dev.c                |  11 +-
 drivers/gpu/drm/drm_drv.c                       |   6 +-
 drivers/gpu/drm/drm_gem.c                       |  19 +-
 drivers/gpu/drm/drm_info.c                      |   2 +-
 drivers/gpu/drm/drm_mode_object.c               |  11 +-
 drivers/gpu/drm/drm_syncobj.c                   |  18 +-
 drivers/gpu/drm/exynos/exynos_drm_ipp.c         |  25 ++-
 drivers/gpu/drm/i915/gvt/display.c              |   2 +-
 drivers/gpu/drm/i915/gvt/kvmgt.c                |   2 +-
 drivers/gpu/drm/i915/gvt/vgpu.c                 |   9 +-
 drivers/gpu/drm/i915/i915_debugfs.c             |   6 +-
 drivers/gpu/drm/i915/i915_gem_context.c         |   9 +-
 drivers/gpu/drm/qxl/qxl_cmd.c                   |   8 +-
 drivers/gpu/drm/qxl/qxl_release.c               |  14 +-
 drivers/gpu/drm/sis/sis_mm.c                    |   8 +-
 drivers/gpu/drm/tegra/drm.c                     |  10 +-
 drivers/gpu/drm/tilcdc/tilcdc_slave_compat.c    |   3 +-
 drivers/gpu/drm/vgem/vgem_fence.c               |  12 +-
 drivers/gpu/drm/via/via_mm.c                    |   8 +-
 drivers/gpu/drm/virtio/virtgpu_kms.c            |   5 +-
 drivers/gpu/drm/virtio/virtgpu_vq.c             |   5 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_resource.c        |   9 +-
 drivers/i2c/i2c-core-base.c                     |  19 +-
 drivers/infiniband/core/cm.c                    |   8 +-
 drivers/infiniband/core/cma.c                   |  12 +-
 drivers/infiniband/core/rdma_core.c             |   9 +-
 drivers/infiniband/core/sa_query.c              |  23 +--
 drivers/infiniband/core/ucm.c                   |   7 +-
 drivers/infiniband/core/ucma.c                  |  14 +-
 drivers/infiniband/hw/cxgb3/iwch.c              |   4 +-
 drivers/infiniband/hw/cxgb3/iwch.h              |   4 +-
 drivers/infiniband/hw/cxgb4/device.c            |  18 +-
 drivers/infiniband/hw/cxgb4/iw_cxgb4.h          |   4 +-
 drivers/infiniband/hw/hfi1/init.c               |   9 +-
 drivers/infiniband/hw/hfi1/vnic_main.c          |   6 +-
 drivers/infiniband/hw/mlx4/cm.c                 |  13 +-
 drivers/infiniband/hw/ocrdma/ocrdma_main.c      |   7 +-
 drivers/infiniband/hw/qib/qib_init.c            |   9 +-
 drivers/infiniband/ulp/opa_vnic/opa_vnic_vema.c |  10 +-
 drivers/iommu/intel-svm.c                       |   9 +-
 drivers/md/dm.c                                 |  13 +-
 drivers/memstick/core/memstick.c                |  10 +-
 drivers/memstick/core/ms_block.c                |   9 +-
 drivers/memstick/core/mspro_block.c             |  12 +-
 drivers/mfd/rtsx_pcr.c                          |   9 +-
 drivers/misc/c2port/core.c                      |   7 +-
 drivers/misc/cxl/context.c                      |   8 +-
 drivers/misc/cxl/main.c                         |  15 +-
 drivers/misc/mei/main.c                         |   8 +-
 drivers/misc/mic/scif/scif_api.c                |  11 +-
 drivers/misc/mic/scif/scif_ports.c              |  18 +-
 drivers/misc/tifm_core.c                        |   9 +-
 drivers/mtd/mtdcore.c                           |   9 +-
 drivers/mtd/mtdcore.h                           |   2 +-
 drivers/mtd/ubi/block.c                         |   7 +-
 drivers/net/ppp/ppp_generic.c                   |  27 +--
 drivers/net/tap.c                               |  10 +-
 drivers/net/wireless/ath/ath10k/htt.h           |   3 +-
 drivers/net/wireless/ath/ath10k/htt_tx.c        |  22 ++-
 drivers/net/wireless/ath/ath10k/mac.c           |   2 +-
 drivers/net/wireless/marvell/mwifiex/main.c     |  13 +-
 drivers/net/wireless/marvell/mwifiex/wmm.c      |   2 +-
 drivers/of/overlay.c                            |  15 +-
 drivers/of/unittest.c                           |  25 ++-
 drivers/power/supply/bq2415x_charger.c          |  16 +-
 drivers/power/supply/bq27xxx_battery_i2c.c      |  15 +-
 drivers/power/supply/ds2782_battery.c           |   9 +-
 drivers/powercap/powercap_sys.c                 |   8 +-
 drivers/pps/pps.c                               |  10 +-
 drivers/rapidio/rio_cm.c                        |  17 +-
 drivers/remoteproc/remoteproc_core.c            |   8 +-
 drivers/rpmsg/virtio_rpmsg_bus.c                |   8 +-
 drivers/scsi/bfa/bfad_im.c                      |   8 +-
 drivers/scsi/ch.c                               |   8 +-
 drivers/scsi/lpfc/lpfc_crtn.h                   |   2 +-
 drivers/scsi/lpfc/lpfc_init.c                   |  11 +-
 drivers/scsi/lpfc/lpfc_vport.c                  |   8 +-
 drivers/scsi/sg.c                               |  10 +-
 drivers/scsi/st.c                               |   8 +-
 drivers/staging/greybus/uart.c                  |  22 +--
 drivers/staging/unisys/visorhba/visorhba_main.c |   7 +-
 drivers/target/iscsi/iscsi_target.c             |   7 +-
 drivers/target/iscsi/iscsi_target_login.c       |   9 +-
 drivers/target/target_core_device.c             |   9 +-
 drivers/target/target_core_user.c               |  13 +-
 drivers/tee/tee_shm.c                           |   8 +-
 drivers/uio/uio.c                               |   9 +-
 drivers/usb/class/cdc-acm.c                     |  24 +--
 drivers/usb/core/devices.c                      |   2 +-
 drivers/usb/core/hcd.c                          |   7 +-
 drivers/usb/mon/mon_main.c                      |   3 +-
 drivers/usb/serial/usb-serial.c                 |  11 +-
 drivers/vfio/vfio.c                             |  15 +-
 fs/dlm/lock.c                                   |   9 +-
 fs/dlm/lockspace.c                              |   6 +-
 fs/dlm/recover.c                                |  10 +-
 fs/nfs/nfs4client.c                             |   9 +-
 fs/nfsd/nfs4state.c                             |   8 +-
 fs/notify/inotify/inotify_fsnotify.c            |   4 +-
 fs/notify/inotify/inotify_user.c                |   9 +-
 fs/ocfs2/cluster/tcp.c                          |  10 +-
 include/linux/idr.h                             |  26 +--
 include/linux/of.h                              |   4 +-
 include/linux/radix-tree.h                      |   2 +-
 include/net/9p/9p.h                             |   2 +-
 include/net/act_api.h                           |  76 +++-----
 ipc/msg.c                                       |   2 +-
 ipc/sem.c                                       |   2 +-
 ipc/shm.c                                       |   4 +-
 ipc/util.c                                      |  17 +-
 kernel/bpf/syscall.c                            |  20 +-
 kernel/cgroup/cgroup.c                          |  57 +++---
 kernel/events/core.c                            |  10 +-
 kernel/workqueue.c                              |  15 +-
 lib/idr.c                                       |  38 ++--
 lib/radix-tree.c                                |   5 +-
 mm/memcontrol.c                                 |  11 +-
 net/9p/client.c                                 |  17 +-
 net/9p/util.c                                   |  14 +-
 net/core/net_namespace.c                        |  23 ++-
 net/mac80211/cfg.c                              |  23 +--
 net/mac80211/iface.c                            |   3 +-
 net/mac80211/main.c                             |   2 +-
 net/mac80211/tx.c                               |   7 +-
 net/mac80211/util.c                             |   3 +-
 net/netlink/genetlink.c                         |  18 +-
 net/qrtr/qrtr.c                                 |  21 +-
 net/rxrpc/conn_client.c                         |  15 +-
 net/sched/act_api.c                             | 249 +++++++++++-------------
 net/sched/act_bpf.c                             |  17 +-
 net/sched/act_connmark.c                        |  16 +-
 net/sched/act_csum.c                            |  16 +-
 net/sched/act_gact.c                            |  16 +-
 net/sched/act_ife.c                             |  20 +-
 net/sched/act_ipt.c                             |  26 ++-
 net/sched/act_mirred.c                          |  19 +-
 net/sched/act_nat.c                             |  16 +-
 net/sched/act_pedit.c                           |  18 +-
 net/sched/act_police.c                          |  18 +-
 net/sched/act_sample.c                          |  17 +-
 net/sched/act_simple.c                          |  20 +-
 net/sched/act_skbedit.c                         |  18 +-
 net/sched/act_skbmod.c                          |  18 +-
 net/sched/act_tunnel_key.c                      |  20 +-
 net/sched/act_vlan.c                            |  22 +--
 net/sched/cls_flower.c                          |  55 +++---
 net/sctp/associola.c                            |   8 +-
 net/tipc/server.c                               |   7 +-
 172 files changed, 1256 insertions(+), 1113 deletions(-)

-- 
1.8.3.1


_______________________________________________
ath10k mailing list
ath10k@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/ath10k

WARNING: multiple messages have this Message-ID (diff)
From: Chris Mi <chrism@mellanox.com>
To: cluster-devel.redhat.com
Subject: [Cluster-devel] [patch net-next 0/3] net/sched: Improve getting objects by indexes
Date: Tue, 15 Aug 2017 22:12:15 -0400	[thread overview]
Message-ID: <1502849538-14284-1-git-send-email-chrism@mellanox.com> (raw)

Using current TC code, it is very slow to insert a lot of rules.

In order to improve the rules update rate in TC,
we introduced the following two changes:
        1) changed cls_flower to use IDR to manage the filters.
        2) changed all act_xxx modules to use IDR instead of
           a small hash table

But IDR has a limitation that it uses int. TC handle uses u32.
To make sure there is no regression, we also changed IDR to use
unsigned long. All clients of IDR are changed to use new IDR API.

Chris Mi (3):
  idr: Use unsigned long instead of int
  net/sched: Change cls_flower to use IDR
  net/sched: Change act_api and act_xxx modules to use IDR

 block/bsg.c                                     |   8 +-
 block/genhd.c                                   |  12 +-
 drivers/atm/nicstar.c                           |  11 +-
 drivers/block/drbd/drbd_main.c                  |  31 +--
 drivers/block/drbd/drbd_nl.c                    |  22 ++-
 drivers/block/drbd/drbd_proc.c                  |   3 +-
 drivers/block/drbd/drbd_receiver.c              |  15 +-
 drivers/block/drbd/drbd_state.c                 |  34 ++--
 drivers/block/drbd/drbd_worker.c                |   6 +-
 drivers/block/loop.c                            |  17 +-
 drivers/block/nbd.c                             |  20 +-
 drivers/block/zram/zram_drv.c                   |   9 +-
 drivers/char/tpm/tpm-chip.c                     |  10 +-
 drivers/char/tpm/tpm.h                          |   2 +-
 drivers/dca/dca-sysfs.c                         |   9 +-
 drivers/firewire/core-cdev.c                    |  18 +-
 drivers/firewire/core-device.c                  |  15 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_bo_list.c     |   8 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c         |   9 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c         |   6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_kms.c         |   2 +-
 drivers/gpu/drm/drm_auth.c                      |   9 +-
 drivers/gpu/drm/drm_connector.c                 |  10 +-
 drivers/gpu/drm/drm_context.c                   |  20 +-
 drivers/gpu/drm/drm_dp_aux_dev.c                |  11 +-
 drivers/gpu/drm/drm_drv.c                       |   6 +-
 drivers/gpu/drm/drm_gem.c                       |  19 +-
 drivers/gpu/drm/drm_info.c                      |   2 +-
 drivers/gpu/drm/drm_mode_object.c               |  11 +-
 drivers/gpu/drm/drm_syncobj.c                   |  18 +-
 drivers/gpu/drm/exynos/exynos_drm_ipp.c         |  25 ++-
 drivers/gpu/drm/i915/gvt/display.c              |   2 +-
 drivers/gpu/drm/i915/gvt/kvmgt.c                |   2 +-
 drivers/gpu/drm/i915/gvt/vgpu.c                 |   9 +-
 drivers/gpu/drm/i915/i915_debugfs.c             |   6 +-
 drivers/gpu/drm/i915/i915_gem_context.c         |   9 +-
 drivers/gpu/drm/qxl/qxl_cmd.c                   |   8 +-
 drivers/gpu/drm/qxl/qxl_release.c               |  14 +-
 drivers/gpu/drm/sis/sis_mm.c                    |   8 +-
 drivers/gpu/drm/tegra/drm.c                     |  10 +-
 drivers/gpu/drm/tilcdc/tilcdc_slave_compat.c    |   3 +-
 drivers/gpu/drm/vgem/vgem_fence.c               |  12 +-
 drivers/gpu/drm/via/via_mm.c                    |   8 +-
 drivers/gpu/drm/virtio/virtgpu_kms.c            |   5 +-
 drivers/gpu/drm/virtio/virtgpu_vq.c             |   5 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_resource.c        |   9 +-
 drivers/i2c/i2c-core-base.c                     |  19 +-
 drivers/infiniband/core/cm.c                    |   8 +-
 drivers/infiniband/core/cma.c                   |  12 +-
 drivers/infiniband/core/rdma_core.c             |   9 +-
 drivers/infiniband/core/sa_query.c              |  23 +--
 drivers/infiniband/core/ucm.c                   |   7 +-
 drivers/infiniband/core/ucma.c                  |  14 +-
 drivers/infiniband/hw/cxgb3/iwch.c              |   4 +-
 drivers/infiniband/hw/cxgb3/iwch.h              |   4 +-
 drivers/infiniband/hw/cxgb4/device.c            |  18 +-
 drivers/infiniband/hw/cxgb4/iw_cxgb4.h          |   4 +-
 drivers/infiniband/hw/hfi1/init.c               |   9 +-
 drivers/infiniband/hw/hfi1/vnic_main.c          |   6 +-
 drivers/infiniband/hw/mlx4/cm.c                 |  13 +-
 drivers/infiniband/hw/ocrdma/ocrdma_main.c      |   7 +-
 drivers/infiniband/hw/qib/qib_init.c            |   9 +-
 drivers/infiniband/ulp/opa_vnic/opa_vnic_vema.c |  10 +-
 drivers/iommu/intel-svm.c                       |   9 +-
 drivers/md/dm.c                                 |  13 +-
 drivers/memstick/core/memstick.c                |  10 +-
 drivers/memstick/core/ms_block.c                |   9 +-
 drivers/memstick/core/mspro_block.c             |  12 +-
 drivers/mfd/rtsx_pcr.c                          |   9 +-
 drivers/misc/c2port/core.c                      |   7 +-
 drivers/misc/cxl/context.c                      |   8 +-
 drivers/misc/cxl/main.c                         |  15 +-
 drivers/misc/mei/main.c                         |   8 +-
 drivers/misc/mic/scif/scif_api.c                |  11 +-
 drivers/misc/mic/scif/scif_ports.c              |  18 +-
 drivers/misc/tifm_core.c                        |   9 +-
 drivers/mtd/mtdcore.c                           |   9 +-
 drivers/mtd/mtdcore.h                           |   2 +-
 drivers/mtd/ubi/block.c                         |   7 +-
 drivers/net/ppp/ppp_generic.c                   |  27 +--
 drivers/net/tap.c                               |  10 +-
 drivers/net/wireless/ath/ath10k/htt.h           |   3 +-
 drivers/net/wireless/ath/ath10k/htt_tx.c        |  22 ++-
 drivers/net/wireless/ath/ath10k/mac.c           |   2 +-
 drivers/net/wireless/marvell/mwifiex/main.c     |  13 +-
 drivers/net/wireless/marvell/mwifiex/wmm.c      |   2 +-
 drivers/of/overlay.c                            |  15 +-
 drivers/of/unittest.c                           |  25 ++-
 drivers/power/supply/bq2415x_charger.c          |  16 +-
 drivers/power/supply/bq27xxx_battery_i2c.c      |  15 +-
 drivers/power/supply/ds2782_battery.c           |   9 +-
 drivers/powercap/powercap_sys.c                 |   8 +-
 drivers/pps/pps.c                               |  10 +-
 drivers/rapidio/rio_cm.c                        |  17 +-
 drivers/remoteproc/remoteproc_core.c            |   8 +-
 drivers/rpmsg/virtio_rpmsg_bus.c                |   8 +-
 drivers/scsi/bfa/bfad_im.c                      |   8 +-
 drivers/scsi/ch.c                               |   8 +-
 drivers/scsi/lpfc/lpfc_crtn.h                   |   2 +-
 drivers/scsi/lpfc/lpfc_init.c                   |  11 +-
 drivers/scsi/lpfc/lpfc_vport.c                  |   8 +-
 drivers/scsi/sg.c                               |  10 +-
 drivers/scsi/st.c                               |   8 +-
 drivers/staging/greybus/uart.c                  |  22 +--
 drivers/staging/unisys/visorhba/visorhba_main.c |   7 +-
 drivers/target/iscsi/iscsi_target.c             |   7 +-
 drivers/target/iscsi/iscsi_target_login.c       |   9 +-
 drivers/target/target_core_device.c             |   9 +-
 drivers/target/target_core_user.c               |  13 +-
 drivers/tee/tee_shm.c                           |   8 +-
 drivers/uio/uio.c                               |   9 +-
 drivers/usb/class/cdc-acm.c                     |  24 +--
 drivers/usb/core/devices.c                      |   2 +-
 drivers/usb/core/hcd.c                          |   7 +-
 drivers/usb/mon/mon_main.c                      |   3 +-
 drivers/usb/serial/usb-serial.c                 |  11 +-
 drivers/vfio/vfio.c                             |  15 +-
 fs/dlm/lock.c                                   |   9 +-
 fs/dlm/lockspace.c                              |   6 +-
 fs/dlm/recover.c                                |  10 +-
 fs/nfs/nfs4client.c                             |   9 +-
 fs/nfsd/nfs4state.c                             |   8 +-
 fs/notify/inotify/inotify_fsnotify.c            |   4 +-
 fs/notify/inotify/inotify_user.c                |   9 +-
 fs/ocfs2/cluster/tcp.c                          |  10 +-
 include/linux/idr.h                             |  26 +--
 include/linux/of.h                              |   4 +-
 include/linux/radix-tree.h                      |   2 +-
 include/net/9p/9p.h                             |   2 +-
 include/net/act_api.h                           |  76 +++-----
 ipc/msg.c                                       |   2 +-
 ipc/sem.c                                       |   2 +-
 ipc/shm.c                                       |   4 +-
 ipc/util.c                                      |  17 +-
 kernel/bpf/syscall.c                            |  20 +-
 kernel/cgroup/cgroup.c                          |  57 +++---
 kernel/events/core.c                            |  10 +-
 kernel/workqueue.c                              |  15 +-
 lib/idr.c                                       |  38 ++--
 lib/radix-tree.c                                |   5 +-
 mm/memcontrol.c                                 |  11 +-
 net/9p/client.c                                 |  17 +-
 net/9p/util.c                                   |  14 +-
 net/core/net_namespace.c                        |  23 ++-
 net/mac80211/cfg.c                              |  23 +--
 net/mac80211/iface.c                            |   3 +-
 net/mac80211/main.c                             |   2 +-
 net/mac80211/tx.c                               |   7 +-
 net/mac80211/util.c                             |   3 +-
 net/netlink/genetlink.c                         |  18 +-
 net/qrtr/qrtr.c                                 |  21 +-
 net/rxrpc/conn_client.c                         |  15 +-
 net/sched/act_api.c                             | 249 +++++++++++-------------
 net/sched/act_bpf.c                             |  17 +-
 net/sched/act_connmark.c                        |  16 +-
 net/sched/act_csum.c                            |  16 +-
 net/sched/act_gact.c                            |  16 +-
 net/sched/act_ife.c                             |  20 +-
 net/sched/act_ipt.c                             |  26 ++-
 net/sched/act_mirred.c                          |  19 +-
 net/sched/act_nat.c                             |  16 +-
 net/sched/act_pedit.c                           |  18 +-
 net/sched/act_police.c                          |  18 +-
 net/sched/act_sample.c                          |  17 +-
 net/sched/act_simple.c                          |  20 +-
 net/sched/act_skbedit.c                         |  18 +-
 net/sched/act_skbmod.c                          |  18 +-
 net/sched/act_tunnel_key.c                      |  20 +-
 net/sched/act_vlan.c                            |  22 +--
 net/sched/cls_flower.c                          |  55 +++---
 net/sctp/associola.c                            |   8 +-
 net/tipc/server.c                               |   7 +-
 172 files changed, 1256 insertions(+), 1113 deletions(-)

-- 
1.8.3.1



             reply	other threads:[~2017-08-16  2:12 UTC|newest]

Thread overview: 65+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-16  2:12 Chris Mi [this message]
2017-08-16  2:12 ` [Cluster-devel] [patch net-next 0/3] net/sched: Improve getting objects by indexes Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` [patch net-next 1/3] idr: Use unsigned long instead of int Chris Mi
2017-08-16  2:12   ` [Cluster-devel] " Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16 21:44   ` Alexey Dobriyan
2017-08-16 21:56   ` Frank Rowand
2017-08-16 21:56     ` Frank Rowand
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` [patch net-next 2/3] net/sched: Change cls_flower to use IDR Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12   ` [Cluster-devel] " Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16  2:12 ` [patch net-next 3/3] net/sched: Change act_api and act_xxx modules " Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  2:12   ` [Cluster-devel] " Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16  2:12   ` Chris Mi
2017-08-16  2:12 ` Chris Mi
2017-08-16  3:05 ` [patch net-next 0/3] net/sched: Improve getting objects by indexes David Miller
2017-08-16  3:38   ` Chris Mi
2017-08-16  7:49 ` Christian König
2017-08-16  7:49 ` Christian König
2017-08-16  7:49 ` Christian König
2017-08-16  7:49   ` [Cluster-devel] " Christian König
2017-08-16  7:49   ` Christian König
2017-08-16  7:49   ` Christian König
2017-08-16  7:49   ` Christian König
2017-08-16  8:16   ` Jiri Pirko
2017-08-16  8:31     ` Christian König
2017-08-16  8:39       ` Jiri Pirko
2017-08-16  8:55         ` Christian König
2017-08-16  9:31           ` Jiri Pirko
2017-08-16  9:41             ` Christian König
2017-08-16 14:28       ` David Laight
2017-08-16  9:19   ` Chris Wilson
2017-08-16  9:19   ` Chris Wilson
2017-08-16  9:19   ` Chris Wilson
2017-08-16  9:19     ` Chris Wilson
2017-08-16  9:19     ` [Cluster-devel] " Chris Wilson
2017-08-16  9:19     ` Chris Wilson
2017-08-16  9:19     ` Chris Wilson
2017-08-16  9:19     ` Chris Wilson
2017-08-16  9:19     ` Chris Wilson
2017-08-16  9:19   ` Chris Wilson
2017-08-16  7:49 ` Christian König
2017-08-16 21:51 ` Frank Rowand
2017-08-16 21:51   ` Frank Rowand
  -- strict thread matches above, loose matches on Subject: below --
2017-08-28  6:41 Chris Mi
2017-08-16  2:12 Chris Mi
2017-08-16  2:12 Chris Mi
2017-08-16  2:12 Chris Mi

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1502849538-14284-1-git-send-email-chrism@mellanox.com \
    --to=chrism@mellanox.com \
    --cc=3chas3@gmail.com \
    --cc=AlexBin.Xie@amd.com \
    --cc=Bart.VanAssche@sandisk.com \
    --cc=Felix.Kuehling@amd.com \
    --cc=Jason@zx2c4.com \
    --cc=Jerry.Zhang@amd.com \
    --cc=Kai.Makisara@kolumbus.fi \
    --cc=Monk.Liu@amd.com \
    --cc=acme@kernel.org \
    --cc=aditr@vmware.com \
    --cc=adobriyan@gmail.com \
    --cc=afd@ti.com \
    --cc=agk@redhat.com \
    --cc=airlied@linux.ie \
    --cc=airlied@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=alex.williamson@redhat.com \
    --cc=alexander.deucher@amd.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=alexandre.bounine@idt.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=amitkarwar@gmail.com \
    --cc=andresx7@gmail.com \
    --cc=andrew.donnellan@au1.ibm.com \
    --cc=anil.gurumurthy@qlogic.com \
    --cc=anna.schumaker@netapp.com \
    --cc=arnd@arndb.de \
    --cc=ashutosh.dixit@intel.com \
    --cc=ast@kernel.org \
    --cc=ath10k@lists.infradead.org \
    --cc=axboe@kernel.dk \
    --cc=bfields@fieldses.org \
    --cc=bhaktipriya96@gmail.com \
    --cc=bigeasy@linutronix.de \
    --cc=bjorn.andersson@linaro.org \
    --cc=boris.brezillon@free-electrons.com \
    --cc=bryan.thompson@unisys.com \
    --cc=ccaulfie@redhat.com \
    --cc=cgroups@vger.kernel.org \
    --cc=chris@chris-wilson.co.uk \
    --cc=christian.koenig@amd.com \
    --cc=cluster-devel@redhat.com \
    --cc=colin.king@canonical.com \
    --cc=computersforpeace@gmail.com \
    --cc=cyrille.pitchen@wedev4u.fr \
    --cc=daniel.vetter@intel.com \
    --cc=daniel@iogearbox.net \
    --cc=dasaratharaman.chandramouli@intel.com \
    --cc=dave@stgolabs.net \
    --cc=davem@davemloft.net \
    --cc=david.binder@unisys.com \
    --cc=david.kershner@unisys.com \
    --cc=david1.zhou@amd.com \
    --cc=dedekind1@gmail.com \
    --cc=dennis.dalessandro@intel.com \
    --cc=devel@driverdev.osuosl.org \
    --cc=devesh.sharma@broadcom.com \
    --cc=devicetree@vger.kernel.org \
    --cc=dgilbert@interlog.com \
    --cc=dhowells@redhat.com \
    --cc=dick.kennedy@broadcom.com \
    --cc=dledford@redhat.com \
    --cc=dm-devel@redhat.com \
    --cc=don.hiatt@intel.com \
    --cc=drbd-dev@lists.linbit.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=dsa@cumulusnetworks.com \
    --cc=dtwlin@gmail.com \
    --cc=dwindsor@gmail.com \
    --cc=dwmw2@infradead.org \
    --cc=ebiederm@xmission.com \
    --cc=edumazet@google.com \
    --cc=elder@kernel.org \
    --cc=elena.reshetova@intel.com \
    --cc=elfring@users.sourceforge.net \
    --cc=eparis@parisplace.org \
    --cc=ericvh@gmail.com \
    --cc=evan.quan@amd.com \
    --cc=f.fainelli@gmail.com \
    --cc=fbarrat@linux.vnet.ibm.com \
    --cc=felipe.balbi@linux.intel.com \
    --cc=frowand.list@gmail.com \
    --cc=fujita.tomonori@lab.ntt.co.jp \
    --cc=fw@strlen.de \
    --cc=gbhat@marvell.com \
    --cc=geliangtang@gmail.com \
    --cc=giometti@enneenne.com \
    --cc=gregkh@linuxfoundation.org \
    --cc=greybus-dev@lists.linaro.org \
    --cc=gustavo.padovan@collabora.co.uk \
    --cc=hal.rosenstock@gmail.com \
    --cc=hannes@cmpxchg.org \
    --cc=hannes@stressinduktion.org \
    --cc=hans.westgaard.ry@oracle.com \
    --cc=hare@suse.de \
    --cc=huxm@marvell.com \
    --cc=inki.dae@samsung.com \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-gvt-dev@lists.freedesktop.org \
    --cc=iommu@lists.linux-foundation.org \
    --cc=ira.weiny@intel.com \
    --cc=ishkamiel@gmail.com \
    --cc=jack@suse.cz \
    --cc=james.smart@broadcom.com \
    --cc=jani.nikula@linux.intel.com \
    --cc=jarkko.sakkinen@linux.intel.com \
    --cc=jarno@ovn.org \
    --cc=jasowang@redhat.com \
    --cc=javier@osg.samsung.com \
    --cc=jbacik@fb.com \
    --cc=jejb@linux.vnet.ibm.com \
    --cc=jens.wiklander@linaro.org \
    --cc=jgunthorpe@obsidianresearch.com \
    --cc=jhs@mojatatu.com \
    --cc=jiangshanlai@gmail.com \
    --cc=jiangyilism@gmail.com \
    --cc=jinpu.wang@profitbricks.com \
    --cc=jiri@mellanox.com \
    --cc=jiri@resnulli.us \
    --cc=jlayton@poochiereds.net \
    --cc=jlbec@evilplan.org \
    --cc=johan@kernel.org \
    --cc=johannes@sipsolutions.net \
    --cc=john@johnmccutchan.com \
    --cc=jon.maloy@ericsson.com \
    --cc=jonathanh@nvidia.com \
    --cc=joonas.lahtinen@linux.intel.com \
    --cc=joro@8bytes.org \
    --cc=jsarha@ti.com \
    --cc=jy0922.shim@samsung.com \
    --cc=keescook@chromium.org \
    --cc=kgene@kernel.org \
    --cc=kraxel@redhat.com \
    --cc=krzk@kernel.org \
    --cc=kvalo@qca.qualcomm.com \
    --cc=kvm@vger.kernel.org \
    --cc=kyungmin.park@samsung.com \
    --cc=lars.ellenberg@linbit.com \
    --cc=lee.jones@linaro.org \
    --cc=leo.liu@amd.com \
    --cc=leon@kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-atm-general@lists.sourceforge.net \
    --cc=linux-block@vger.kernel.org \
    --cc=linux-graphics-maintainer@vmware.com \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=linux-mtd@lists.infradead.org \
    --cc=linux-nfs@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=linux-ppp@vger.kernel.org \
    --cc=linux-raid@vger.kernel.org \
    --cc=linux-rdma@vger.kernel.org \
    --cc=linux-remoteproc@vger.kernel.org \
    --cc=linux-samsung-soc@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=linux-sctp@vger.kernel.org \
    --cc=linux-tegra@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=linux-wireless@vger.kernel.org \
    --cc=linux1394-devel@lists.sourceforge.net \
    --cc=linux@roeck-us.net \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=lizefan@huawei.com \
    --cc=logang@deltatee.com \
    --cc=longman@redhat.com \
    --cc=lucho@ionkov.net \
    --cc=majd@mellanox.com \
    --cc=manfred@colorfullife.com \
    --cc=marcos.souza.org@gmail.com \
    --cc=marek.vasut@gmail.com \
    --cc=mario.kleiner.de@gmail.com \
    --cc=markb@mellanox.com \
    --cc=martin.petersen@oracle.com \
    --cc=matan@mellanox.com \
    --cc=mawilcox@microsoft.com \
    --cc=maximlevitsky@gmail.com \
    --cc=mchehab@kernel.org \
    --cc=mfasheh@versity.com \
    --cc=mhocko@kernel.org \
    --cc=michel.daenzer@amd.com \
    --cc=mike.marciniszyn@intel.com \
    --cc=minchan@kernel.org \
    --cc=mingo@redhat.com \
    --cc=monis@mellanox.com \
    --cc=mporter@kernel.crashing.org \
    --cc=mst@redhat.com \
    --cc=mszeredi@redhat.com \
    --cc=nab@linux-iscsi.org \
    --cc=nbd-general@lists.sourceforge.net \
    --cc=neilb@suse.com \
    --cc=netdev@vger.kernel.org \
    --cc=ngupta@vflare.org \
    --cc=nhorman@tuxdriver.com \
    --cc=nicolai.haehnle@amd.com \
    --cc=nicolas.dichtel@6wind.com \
    --cc=niranjana.vishwanathapura@intel.com \
    --cc=nishants@marvell.com \
    --cc=nsekhar@ti.com \
    --cc=oakad@yahoo.com \
    --cc=ocfs2-devel@oss.oracle.com \
    --cc=ogerlitz@mellanox.com \
    --cc=ohad@wizery.com \
    --cc=oneukum@suse.com \
    --cc=osandov@fb.com \
    --cc=p.shailesh@samsung.com \
    --cc=pali.rohar@gmail.com \
    --cc=pantelis.antoniou@konsulko.com \
    --cc=paul@paul-moore.com \
    --cc=paulus@samba.org \
    --cc=peterhuewe@gmx.de \
    --cc=peterz@infradead.org \
    --cc=philipp.reisner@linbit.com \
    --cc=pmladek@suse.com \
    --cc=pshelar@ovn.org \
    --cc=ray.huang@amd.com \
    --cc=richard@nod.at \
    --cc=rjw@rjwysocki.net \
    --cc=rlove@rlove.org \
    --cc=rminnich@sandia.gov \
    --cc=rmk+kernel@armlinux.org.uk \
    --cc=robh+dt@kernel.org \
    --cc=rogerq@ti.com \
    --cc=roman.kapl@sysgo.com \
    --cc=rppt@linux.vnet.ibm.com \
    --cc=sainath.grandhi@intel.com \
    --cc=sameer.wadgaonkar@unisys.com \
    --cc=sboyd@codeaurora.org \
    --cc=sean.hefty@intel.com \
    --cc=seanpaul@chromium.org \
    --cc=selvin.xavier@broadcom.com \
    --cc=sergey.senozhatsky.work@gmail.com \
    --cc=shaun.tancheff@seagate.com \
    --cc=shli@kernel.org \
    --cc=snitzer@redhat.com \
    --cc=sparmaintainer@unisys.com \
    --cc=sre@kernel.org \
    --cc=stefanr@s5r6.in-berlin.de \
    --cc=stephen@networkplumber.org \
    --cc=stern@rowland.harvard.edu \
    --cc=sudarsana.kalluru@qlogic.com \
    --cc=sudeep.dutt@intel.com \
    --cc=sumit.semwal@linaro.org \
    --cc=sw0312.kim@samsung.com \
    --cc=swise@chelsio.com \
    --cc=syeh@vmware.com \
    --cc=target-devel@vger.kernel.org \
    --cc=teigland@redhat.com \
    --cc=thellstrom@vmware.com \
    --cc=thierry.reding@gmail.com \
    --cc=timothy.sell@unisys.com \
    --cc=tipc-discussion@lists.sourceforge.net \
    --cc=tj@kernel.org \
    --cc=tom.leiming@gmail.com \
    --cc=tomas.winkler@intel.com \
    --cc=tomi.valkeinen@ti.com \
    --cc=tpmdd-devel@lists.sourceforge.net \
    --cc=tpmdd@selhorst.net \
    --cc=trond.myklebust@primarydata.com \
    --cc=v9fs-developer@lists.sourceforge.net \
    --cc=varun@chelsio.com \
    --cc=vdavydov.dev@gmail.com \
    --cc=viro@zeniv.linux.org.uk \
    --cc=virtualization@lists.linux-foundation.org \
    --cc=vyasevich@gmail.com \
    --cc=weiyj.lk@gmail.com \
    --cc=wsa@the-dreams.de \
    --cc=xiyou.wangcong@gmail.com \
    --cc=ying.xue@windriver.com \
    --cc=yishaih@mellanox.com \
    --cc=yuval.shaia@oracle.com \
    --cc=zhenyuw@linux.intel.com \
    --cc=zhi.a.wang@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.