[Nbd] [patch net-next 0/3] net/sched: Improve getting objects by indexes
- To: netdev@...25...
- Cc: aditr@...1745..., stern@...2977..., agk@...696..., alexander.shishkin@...2913..., alexandre.bounine@...2978..., alexander.deucher@...2979..., oakad@...34..., ast@...1285..., elder@...1285..., adobriyan@...17..., alex.williamson@...696..., AlexBin.Xie@...2979..., viro@...1300..., amd-gfx@...1051..., amitkarwar@...17..., andresx7@...17..., andrew.donnellan@...2980..., afd@...1861..., akpm@...133..., anil.gurumurthy@...1472..., anna.schumaker@...2366..., acme@...1285..., arnd@...2332..., dedekind1@...17..., ashutosh.dixit@...1303..., ath10k@...1331..., Bart.VanAssche@...2981..., bhaktipriya96@...17..., bjorn.andersson@...1479..., boris.brezillon@...1551..., computersforpeace@...17..., bryan.thompson@...2982..., cgroups@...25..., 3chas3@...17..., chrism@...1480..., christian.koenig@...2979..., ccaulfie@...696..., chris@...2983..., david1.zhou@...2979..., cluster-devel@...696..., colin.king@...1301..., xiyou.wangcong@...17..., cyrille.pitchen@...2984..., daniel@...2985..., daniel.vetter@...1303..., dasaratharaman.chandramouli@...1303..., airlied@...696..., dsa@...2986..., airlied@...2987..., david.binder@...2982..., dhowells@...696..., david.kershner@...2982..., dtwlin@...17..., dave@...2988..., davem@...2890..., teigland@...696..., dwindsor@...17..., dwmw2@...1270..., dennis.dalessandro@...1303..., devel@...1311..., devesh.sharma@...2989..., devicetree@...25..., dick.kennedy@...2989..., dm-devel@...696..., don.hiatt@...1303..., dgilbert@...2990..., dledford@...696..., drbd-dev@...1284..., dri-devel@...1051..., elena.reshetova@...1303..., edumazet@...79..., eparis@...2991..., ericvh@...17..., ebiederm@...2992..., evan.quan@...2979..., felipe.balbi@...2913..., Felix.Kuehling@...2979..., f.fainelli@...17..., fw@...2993..., frowand.list@...17..., fbarrat@...1294..., fujita.tomonori@...934..., gbhat@...1552..., geliangtang@...17..., kraxel@...696..., gregkh@...1299..., greybus-dev@...2994..., linux@...2995..., gustavo.padovan@...2996..., hal.rosenstock@...17..., hannes@...2997..., hare@...122..., ishkamiel@...17..., hans.westgaard.ry@...57..., ray.huang@...2979..., mingo@...696..., inki.dae@...1329..., intel-gfx@...1051..., intel-gvt-dev@...1051..., iommu@...1310..., ira.weiny@...1303..., jinpu.wang@...2998..., jhs@...2999..., jejb@...1294..., james.smart@...2989..., jani.nikula@...2913..., jack@...1290..., jarkko.sakkinen@...2913..., jarno@...3000..., Jason@...3001..., jgunthorpe@...3002..., jasowang@...696..., javier@...3003..., bfields@...3004..., jlayton@...3005..., axboe@...161..., jens.wiklander@...1479..., jiangyilism@...17..., jiri@...1480..., jiri@...3006..., jlbec@...3007..., joro@...3008..., johan@...1285..., johannes@...3009..., hannes@...1554..., john@...3010..., jonathanh@...3011..., jon.maloy@...3012..., joonas.lahtinen@...2913..., jy0922.shim@...1329..., jbacik@...2204..., Jerry.Zhang@...2979..., jsarha@...1861..., Kai.Makisara@...3013..., kvalo@...3014..., keescook@...3015..., krzk@...1285..., kgene@...1285..., kvm@...25..., kyungmin.park@...1329..., jiangshanlai@...17..., lars.ellenberg@...2433..., lucho@...3016..., lee.jones@...1479..., leo.liu@...2979..., leon@...1285..., linux1394-devel@lists.sourceforge.net, linux-arm-kernel@...1331..., linux-atm-general@lists.sourceforge.net, linux-block@...25..., linux-i2c@...25..., linux-kernel@...25..., linux-mm@...1312..., linux-mtd@...1331..., linux-nfs@...25..., linux-pm@...25..., linuxppc-dev@...1308..., linux-ppp@...25..., linux-raid@...25..., linux-rdma@...25..., linux-remoteproc@...25..., linux-samsung-soc@...25..., linux-scsi@...25..., linux-sctp@...25..., linux-tegra@...25..., linux-usb@...25..., linux-wireless@...25..., logang@...3017..., majd@...1480..., manfred@...3018..., tpmdd@...3019..., marcos.souza.org@...17..., marek.vasut@...17..., mario.kleiner.de@...17..., markb@...1480..., mfasheh@...3020..., elfring@...81..., martin.petersen@...57..., matan@...1480..., mawilcox@...3021..., mporter@...1287..., mchehab@...1285..., maximlevitsky@...17..., mst@...696..., mhocko@...1285..., michel.daenzer@...2979..., mike.marciniszyn@...1303..., rppt@...1294..., snitzer@...696..., mszeredi@...696..., minchan@...1285..., tom.leiming@...17..., monis@...1480..., Monk.Liu@...2979..., nbd-general@lists.sourceforge.net, neilb@...1750..., nhorman@...1473..., nab@...1420..., nicolai.haehnle@...2979..., nicolas.dichtel@...3022..., niranjana.vishwanathapura@...1303..., nishants@...1552..., ngupta@...1305..., ocfs2-devel@...1749..., ohad@...3023..., oneukum@...1750..., osandov@...2204..., ogerlitz@...1480..., pali.rohar@...17..., pantelis.antoniou@...3024..., paulus@...1288..., paul@...1476..., peterhuewe@...13..., peterz@...1270..., pmladek@...1750..., philipp.reisner@...2433..., pshelar@...3000..., rjw@...3025..., richard@...2889..., rlove@...3026..., robh+dt@...1285..., giometti@...3027..., rogerq@...1861..., roman.kapl@...3028..., rminnich@...3029..., rmk+kernel@...3030..., sainath.grandhi@...1303..., sameer.wadgaonkar@...2982..., sean.hefty@...1303..., seanpaul@...3015..., bigeasy@...1530..., sre@...1285..., nsekhar@...1861..., selvin.xavier@...2989..., sergey.senozhatsky.work@...17..., sw0312.kim@...1329..., p.shailesh@...1329..., shli@...1285..., shaun.tancheff@...3031..., syeh@...1745..., sparmaintainer@...2982..., stefanr@...3032..., sboyd@...3033..., stephen@...3034..., swise@...3035..., sudarsana.kalluru@...1472..., sudeep.dutt@...1303..., sumit.semwal@...1479..., target-devel@...25..., tj@...1285..., thierry.reding@...17..., thellstrom@...1745..., timothy.sell@...2982..., tipc-discussion@lists.sourceforge.net, tomas.winkler@...1303..., tomi.valkeinen@...1861..., tpmdd-devel@lists.sourceforge.net, trond.myklebust@...1570..., v9fs-developer@lists.sourceforge.net, varun@...3035..., virtualization@...1310..., vdavydov.dev@...17..., vyasevich@...17..., linux-graphics-maintainer@...1745..., longman@...696..., weiyj.lk@...17..., wsa@...3036..., huxm@...1552..., ying.xue@...3037..., yishaih@...1480..., yuval.shaia@...57..., lizefan@...1511..., zhenyuw@...2913..., zhi.a.wang@...1303...
- Subject: [Nbd] [patch net-next 0/3] net/sched: Improve getting objects by indexes
- From: Chris Mi <chrism@...1480...>
- Date: Tue, 15 Aug 2017 22:12:15 -0400
- Message-id: <1502849538-14284-1-git-send-email-chrism@...1480...>
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 to: