Displaying 20 results from an estimated 20 matches for "sbitmap".
Did you mean:
bitmap
2018 May 15
3
[PATCH 1/2] Convert target drivers to use sbitmap
On 5/15/18 10:00 AM, Matthew Wilcox wrote:
> From: Matthew Wilcox <mawilcox at microsoft.com>
>
> The sbitmap and the percpu_ida perform essentially the same task,
> allocating tags for commands. Since the sbitmap is more used than
> the percpu_ida, convert the percpu_ida users to the sbitmap API.
It should also be the same performance as percpu_ida in light use, and
performs much better at > 50...
2018 May 15
3
[PATCH 1/2] Convert target drivers to use sbitmap
On 5/15/18 10:00 AM, Matthew Wilcox wrote:
> From: Matthew Wilcox <mawilcox at microsoft.com>
>
> The sbitmap and the percpu_ida perform essentially the same task,
> allocating tags for commands. Since the sbitmap is more used than
> the percpu_ida, convert the percpu_ida users to the sbitmap API.
It should also be the same performance as percpu_ida in light use, and
performs much better at > 50...
2018 Jun 12
0
[PATCH 1/2] Convert target drivers to use sbitmap
On 5/15/18 10:11 AM, Jens Axboe wrote:
> On 5/15/18 10:00 AM, Matthew Wilcox wrote:
>> From: Matthew Wilcox <mawilcox at microsoft.com>
>>
>> The sbitmap and the percpu_ida perform essentially the same task,
>> allocating tags for commands. Since the sbitmap is more used than
>> the percpu_ida, convert the percpu_ida users to the sbitmap API.
>
> It should also be the same performance as percpu_ida in light use, and
> performs...
2018 Jun 12
0
[PATCH 1/2] Convert target drivers to use sbitmap
...s/scsi/qla2xxx/qla_target.c
> > @@ -3719,7 +3719,8 @@ void qlt_free_cmd(struct qla_tgt_cmd *cmd)
> > return;
> > }
> > cmd->jiffies_at_free = get_jiffies_64();
> > - percpu_ida_free(&sess->se_sess->sess_tag_pool, cmd->se_cmd.map_tag);
> > + sbitmap_queue_clear(&sess->se_sess->sess_tag_pool, cmd->se_cmd.map_tag,
> > + cmd->se_cmd.map_cpu);
> > }
> > EXPORT_SYMBOL(qlt_free_cmd);
>
> Please introduce functions in the target core for allocating and freeing a tag
> instead of spreading the knowledge...
2018 Jun 15
0
[PATCH 0/3] Use sbitmap instead of percpu_ida
Matthew,
> Removing the percpu_ida code nets over 400 lines of removal. It's not
> as spectacular as deleting an entire architecture, but it's still a
> worthy reduction in lines of code.
Since most of the changes are in scsi or target, should I take this
series through my tree?
--
Martin K. Petersen Oracle Linux Engineering
2018 Jun 15
1
[PATCH 0/3] Use sbitmap instead of percpu_ida
On Thu, Jun 14, 2018 at 10:06:58PM -0400, Martin K. Petersen wrote:
>
> Matthew,
>
> > Removing the percpu_ida code nets over 400 lines of removal. It's not
> > as spectacular as deleting an entire architecture, but it's still a
> > worthy reduction in lines of code.
>
> Since most of the changes are in scsi or target, should I take this
> series
2018 Jun 12
1
[PATCH 1/2] Convert target drivers to use sbitmap
...t; > > @@ -3719,7 +3719,8 @@ void qlt_free_cmd(struct qla_tgt_cmd *cmd)
> > > return;
> > > }
> > > cmd->jiffies_at_free = get_jiffies_64();
> > > - percpu_ida_free(&sess->se_sess->sess_tag_pool, cmd->se_cmd.map_tag);
> > > + sbitmap_queue_clear(&sess->se_sess->sess_tag_pool, cmd->se_cmd.map_tag,
> > > + cmd->se_cmd.map_cpu);
> > > }
> > > EXPORT_SYMBOL(qlt_free_cmd);
> >
> > Please introduce functions in the target core for allocating and freeing a tag
> > inste...
2018 May 15
0
[PATCH 1/2] Convert target drivers to use sbitmap
From: Matthew Wilcox <mawilcox at microsoft.com>
The sbitmap and the percpu_ida perform essentially the same task,
allocating tags for commands. Since the sbitmap is more used than
the percpu_ida, convert the percpu_ida users to the sbitmap API.
Signed-off-by: Matthew Wilcox <mawilcox at microsoft.com>
---
drivers/scsi/qla2xxx/qla_target.c |...
2018 May 15
6
[PATCH 0/2] Use sbitmap instead of percpu_ida
From: Matthew Wilcox <mawilcox at microsoft.com>
This is a pretty rough-and-ready conversion of the target drivers
from using percpu_ida to sbitmap. It compiles; I don't have a target
setup, so it's completely untested. I haven't tried to do anything
particularly clever here, so it's possible that, for example, the wait
queue in iscsi_target_util could be more clever, like the block layer
uses multiple wait queues to avoid pi...
2018 Jun 12
2
[PATCH 1/2] Convert target drivers to use sbitmap
...qla_target.c
> +++ b/drivers/scsi/qla2xxx/qla_target.c
> @@ -3719,7 +3719,8 @@ void qlt_free_cmd(struct qla_tgt_cmd *cmd)
> return;
> }
> cmd->jiffies_at_free = get_jiffies_64();
> - percpu_ida_free(&sess->se_sess->sess_tag_pool, cmd->se_cmd.map_tag);
> + sbitmap_queue_clear(&sess->se_sess->sess_tag_pool, cmd->se_cmd.map_tag,
> + cmd->se_cmd.map_cpu);
> }
> EXPORT_SYMBOL(qlt_free_cmd);
Please introduce functions in the target core for allocating and freeing a tag
instead of spreading the knowledge of how to allocate and free ta...
2018 Jun 12
2
[PATCH 1/2] Convert target drivers to use sbitmap
...qla_target.c
> +++ b/drivers/scsi/qla2xxx/qla_target.c
> @@ -3719,7 +3719,8 @@ void qlt_free_cmd(struct qla_tgt_cmd *cmd)
> return;
> }
> cmd->jiffies_at_free = get_jiffies_64();
> - percpu_ida_free(&sess->se_sess->sess_tag_pool, cmd->se_cmd.map_tag);
> + sbitmap_queue_clear(&sess->se_sess->sess_tag_pool, cmd->se_cmd.map_tag,
> + cmd->se_cmd.map_cpu);
> }
> EXPORT_SYMBOL(qlt_free_cmd);
Please introduce functions in the target core for allocating and freeing a tag
instead of spreading the knowledge of how to allocate and free ta...
2018 Jun 12
8
[PATCH 0/3] Use sbitmap instead of percpu_ida
...to set up a
target platform.
Changes from v1:
- Fixed bugs pointed out by Jens in iscsit_wait_for_tag()
- Abstracted out tag freeing as requested by Bart
- Made iscsit_wait_for_tag static as pointed out by 0day
Matthew Wilcox (3):
target: Abstract tag freeing
Convert target drivers to use sbitmap
Remove percpu_ida
drivers/scsi/qla2xxx/qla_target.c | 14 +-
drivers/target/iscsi/iscsi_target_util.c | 35 ++-
drivers/target/sbp/sbp_target.c | 7 +-
drivers/target/target_core_transport.c | 5 +-
drivers/target/tcm_fc/tfc_cmd.c | 10 +-
drivers/usb/gadget/fu...
2018 Jun 12
8
[PATCH 0/3] Use sbitmap instead of percpu_ida
...to set up a
target platform.
Changes from v1:
- Fixed bugs pointed out by Jens in iscsit_wait_for_tag()
- Abstracted out tag freeing as requested by Bart
- Made iscsit_wait_for_tag static as pointed out by 0day
Matthew Wilcox (3):
target: Abstract tag freeing
Convert target drivers to use sbitmap
Remove percpu_ida
drivers/scsi/qla2xxx/qla_target.c | 14 +-
drivers/target/iscsi/iscsi_target_util.c | 35 ++-
drivers/target/sbp/sbp_target.c | 7 +-
drivers/target/target_core_transport.c | 5 +-
drivers/target/tcm_fc/tfc_cmd.c | 10 +-
drivers/usb/gadget/fu...
2020 Sep 24
0
[PATCH 3/8] vhost scsi: alloc cmds per vq instead of session
...#define VHOST_SCSI_PREALLOC_UPAGES 2048
> #define VHOST_SCSI_PREALLOC_PROT_SGLS 2048
> @@ -189,6 +188,9 @@ struct vhost_scsi_virtqueue {
> * Writers must also take dev mutex and flush under it.
> */
> int inflight_idx;
> + struct vhost_scsi_cmd *scsi_cmds;
> + struct sbitmap scsi_tags;
> + int max_cmds;
> };
>
> struct vhost_scsi {
> @@ -324,7 +326,9 @@ static void vhost_scsi_release_cmd(struct se_cmd *se_cmd)
> {
> struct vhost_scsi_cmd *tv_cmd = container_of(se_cmd,
> struct vhost_scsi_cmd, tvc_se_cmd);
> - struct se_session *se...
2015 Apr 16
2
[LLVMdev] Compile SPEC2006 with clang-3.2, multi definition errors.
...tegrate.bc intl.bc jump.bc
langhooks.bc lcm
.bc lists.bc local-alloc.bc loop.bc obstack.bc optabs.bc params.bc
predict.bc print-rtl.bc print-tree.bc profile.bc real.bc recog.bc
reg-stack.bc regclass.bc
regmove.bc regrename.bc reload.bc reload1.bc reorg.bc resource.bc rtl.bc
rtlanal.bc rtl-error.bc sbitmap.bc sched-deps.bc sched-ebb.bc sched-rgn.bc
sched-vi
s.bc sdbout.bc sibcall.bc simplify-rtx.bc ssa.bc ssa-ccp.bc ssa-dce.bc
stmt.bc stor-layout.bc stringpool.bc timevar.bc toplev.bc tree.bc
tree-dump.bc tree-in
line.bc unroll.bc varasm.bc varray.bc vmsdbgout.bc xcoffout.bc ggc-page.bc
i386.bc xmallo...
2006 Jul 10
1
[LLVMdev] enabling Debian x86_64 for llvm 1.7
...s.o options.o opts.o params.o postreload.o
postreload-gcse.o predict.o insn-preds.o pointer-set.o postreload.o
print-rtl.o print-tree.o profile.o value-prof.o var-tracking.o real.o
recog.o reg-stack.o regclass.o regmove.o regrename.o reload.o reload1.o
reorg.o resource.o rtl.o rtlanal.o rtl-error.o sbitmap.o sched-deps.o
sched-ebb.o sched-rgn.o sched-vis.o sdbout.o simplify-rtx.o sreal.o
stmt.o stor-layout.o stringpool.o targhooks.o timevar.o toplev.o
tracer.o tree.o tree-dump.o varasm.o varray.o vec.o version.o
vmsdbgout.o xcoffout.o alloc-pool.o et-forest.o cfghooks.o bt-load.o
pretty-print.o ggc-p...
2007 Apr 27
2
[LLVMdev] Boostrap Failure -- Expected Differences?
...t-tree.o differs
./profile.o differs
./real.o differs
./recog.o differs
./regclass.o differs
./regmove.o differs
./regrename.o differs
./reg-stack.o differs
./reload1.o differs
./reload.o differs
./resource.o differs
./rtlanal.o differs
./rtlhooks.o differs
./rtl.o differs
./rtl-profile.o differs
./sbitmap.o differs
./sched-deps.o differs
./sched-ebb.o differs
./sched-rgn.o differs
./sched-vis.o differs
./simplify-rtx.o differs
./sreal.o differs
./stmt.o differs
./stor-layout.o differs
./targhooks.o differs
./timevar.o differs
./tlink.o differs
./toplev.o differs
./tracer.o differs
./tree-browser.o d...
2007 Apr 30
0
[LLVMdev] Boostrap Failure -- Expected Differences?
...g.o differs
> ./regclass.o differs
> ./regmove.o differs
> ./regrename.o differs
> ./reg-stack.o differs
> ./reload1.o differs
> ./reload.o differs
> ./resource.o differs
> ./rtlanal.o differs
> ./rtlhooks.o differs
> ./rtl.o differs
> ./rtl-profile.o differs
> ./sbitmap.o differs
> ./sched-deps.o differs
> ./sched-ebb.o differs
> ./sched-rgn.o differs
> ./sched-vis.o differs
> ./simplify-rtx.o differs
> ./sreal.o differs
> ./stmt.o differs
> ./stor-layout.o differs
> ./targhooks.o differs
> ./timevar.o differs
> ./tlink.o differs
&...
2007 Apr 25
2
[LLVMdev] Work in progress patch to speed up andersen's implementation
...ead->current = NULL;
head->obstack = obstack;
}
/* Allocate and free bitmaps from obstack, malloc and gc'd memory. */
extern bitmap bitmap_obstack_alloc (bitmap_obstack *obstack);
extern void bitmap_obstack_free (bitmap);
/* A few compatibility/functions macros for compatibility with sbitmaps */
#define dump_bitmap(file, bitmap) bitmap_print (file, bitmap, "", "\n")
#define bitmap_zero(a) bitmap_clear (a)
extern unsigned bitmap_first_set_bit (bitmap);
/* Compute bitmap hash (for purposes of hashing etc.) */
extern hashval_t bitmap_hash(bitmap);
/* Allocate a bitm...
2023 Mar 28
12
[PATCH v6 00/11] vhost: multiple worker support
The following patches were built over linux-next which contains various
vhost patches in mst's tree and the vhost_task patchset in Christian
Brauner's tree:
git://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux.git
kernel.user_worker branch:
https://git.kernel.org/pub/scm/linux/kernel/git/brauner/linux.git/log/?h=kernel.user_worker
The latter patchset handles the review comment