search for: pending_req

Displaying 18 results from an estimated 18 matches for "pending_req".

2012 Aug 16
0
[RFC v1 3/5] VBD: enlarge max segment per request in blkfront
...Number of blkback requests to allocate"); static unsigned int log_stats; module_param(log_stats, int, 0644); +struct seg_buf { + unsigned long buf; + unsigned int nsec; +}; + /* * Each outstanding request that we''ve passed to the lower device layers has a * ''pending_req'' allocated to it. Each buffer_head that completes decrements @@ -78,6 +83,11 @@ struct pending_req { unsigned short operation; int status; struct list_head free_list; + struct gnttab_map_grant_ref *map; + struct gnttab_unmap_grant_ref *unmap; +...
2008 May 30
5
[PATCH 1/4] pvSCSI driver
pvSCSI backend driver Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com> Signed-off-by: Jun Kamada <kama@jp.fujitsu.com> ----- Jun Kamada _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
2013 Feb 28
1
[PATCH RFC 09/12] xen-blkback: move pending handles list from blkbk to pending_req
Moving grant ref handles from blkbk to pending_req will allow us to get rid of the shared blkbk structure. Signed-off-by: Roger Pau Monné <roger.pau@citrix.com> Cc: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: xen-devel@lists.xen.org --- drivers/block/xen-blkback/blkback.c | 16 ++++------------ 1 files changed, 4 insertions(+...
2012 Sep 19
27
[PATCH] Persistent grant maps for xen blk drivers
...lkif.h | 9 ++ 5 files changed, 338 insertions(+), 43 deletions(-) diff --git a/drivers/block/xen-blkback/blkback.c b/drivers/block/xen-blkback/blkback.c index 73f196c..f95dee9 100644 --- a/drivers/block/xen-blkback/blkback.c +++ b/drivers/block/xen-blkback/blkback.c @@ -78,6 +78,7 @@ struct pending_req { unsigned short operation; int status; struct list_head free_list; + u8 is_pers; }; #define BLKBACK_INVALID_HANDLE (~0) @@ -128,6 +129,24 @@ static int dispatch_rw_block_io(struct xen_blkif *blkif, static void make_response(struct xen_blkif *blkif, u64 id, unsigned short op,...
2011 Jun 21
13
VM disk I/O limit patch
...y large because adjacent requests * pulled from a communication ring are quite likely to end up being part of @@ -110,7 +115,8 @@ static inline unsigned long vaddr(pendin static int do_block_io_op(blkif_t *blkif); static int dispatch_rw_block_io(blkif_t *blkif, blkif_request_t *req, - pending_req_t *pending_req); + pending_req_t *pending_req, + int *done_nr_sects); static void make_response(blkif_t *blkif, u64 id, unsigned short op, int st); @@ -206,10 +212,20 @@ static void print_stats(blkif_t *blkif) blkif->st_pk_req = 0; } +static void refill_reqcount(blkif_t *bl...
2011 Jun 21
13
VM disk I/O limit patch
...y large because adjacent requests * pulled from a communication ring are quite likely to end up being part of @@ -110,7 +115,8 @@ static inline unsigned long vaddr(pendin static int do_block_io_op(blkif_t *blkif); static int dispatch_rw_block_io(blkif_t *blkif, blkif_request_t *req, - pending_req_t *pending_req); + pending_req_t *pending_req, + int *done_nr_sects); static void make_response(blkif_t *blkif, u64 id, unsigned short op, int st); @@ -206,10 +212,20 @@ static void print_stats(blkif_t *blkif) blkif->st_pk_req = 0; } +static void refill_reqcount(blkif_t *bl...
2008 Nov 05
0
[PATCH] blktap: ensure vma->vm_mm''s mmap_sem is being held whenever it is being modified
...+ down_write(&mm->mmap_sem); zap_page_range( info->vma, info->vma->vm_start, info->vma->vm_end - info->vma->vm_start, NULL); + up_write(&mm->mmap_sem); kfree(info->vma->vm_private_data); @@ -993,12 +997,13 @@ static void fast_flush_area(pending_req_ int tapidx) { struct gnttab_unmap_grant_ref unmap[BLKIF_MAX_SEGMENTS_PER_REQUEST*2]; - unsigned int i, invcount = 0; + unsigned int i, invcount = 0, locked = 0; struct grant_handle_pair *khandle; uint64_t ptep; int ret, mmap_idx; unsigned long kvaddr, uvaddr; tap_blkif_t *info...
2012 Nov 02
2
[PATCH] xen-blk: persistent-grants fixes
...47,7 +548,7 @@ static int xen_blkbk_map(struct blkif_request *req, pr_alert(DRV_PFX " domain %u, device %#x is using maximum number of persistent grants\n", blkif->domid, blkif->vbd.handle); } - new_map = 1; + new_map = true; pages[i] = blkbk->pending_page(pending_req, i); addr = vaddr(pending_req, i); pages_to_gnt[segs_to_map] = @@ -584,7 +585,8 @@ static int xen_blkbk_map(struct blkif_request *req, */ bitmap_zero(pending_req->unmap_seg, BLKIF_MAX_SEGMENTS_PER_REQUEST); for (i = 0, j = 0; i < nseg; i++) { - if (!persistent_gnts[i] || !pers...
2013 Apr 19
14
[GIT PULL] (xen) stable/for-jens-3.10
...hanged, 1188 insertions(+), 399 deletions(-) Roger Pau Monne (7): xen-blkback: print stats about persistent grants xen-blkback: use balloon pages for all mappings xen-blkback: implement LRU mechanism for persistent grants xen-blkback: move pending handles list from blkbk to pending_req xen-blkback: make the queue of free requests per backend xen-blkback: expand map/unmap functions xen-block: implement indirect descriptors
2010 Sep 15
15
xenpaging fixes for kernel and hypervisor
Patrick, there following patches fix xenpaging for me. Granttable handling is incomplete. If a page is gone, a GNTST_eagain should be returned to the caller to inidcate the hypercall has to be retried after a while, until the page is available again. Please review. Olaf _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com
2007 Jul 30
0
[PATCH][1/4][IOMGR] I/O request Manager body
This patch provides a I/O request management framework. This framework can control virtual block device threads at 7 places : * deciding that virtual block devices(threads) is ether going or waiting, * before allocating pending_request variables, * after allocated pending_request variables, * after allocated no pending_request variables (Namely, out of request), * after freed pending_request variables and * starting/stopping virtual block devices(threads). And, iomgr provides the total number of pending requests in b...
2012 Aug 16
0
[RFC v1 5/5] VBD: enlarge max segment per request in blkfront
...dule_param_named(blk_ring_type, blkback_ring_type, int, 0); +MODULE_PARM_DESC(blk_ring_type, "type of ring for blk device"); + /* Run-time switchable: /sys/module/blkback/parameters/ */ static unsigned int log_stats; module_param(log_stats, int, 0644); @@ -125,7 +129,7 @@ static struct pending_req *alloc_req(struct xen_blkif *blkif) struct xen_blkbk *blkbk = blkif->blkbk; struct pending_req *req = NULL; unsigned long flags; - unsigned int max_seg = BLKIF_MAX_SEGMENTS_PER_REQUEST; + unsigned int max_seg = blkif->ops->max_seg; spin_lock_irqsave(&blkbk->pending_free_l...
2011 Sep 01
9
[PATCH V4 0/3] xen-blkfront/blkback discard support
Dear list, This is the V4 of the trim support for xen-blkfront/blkback, Now we move BLKIF_OP_TRIM to BLKIF_OP_DISCARD, and dropped all "trim" stuffs in the patches, and use "discard" instead. Also we updated the helpers of blkif_x86_{32|64}_request or we will meet problems using a non-native protocol. And this patch has been tested with both SSD and raw file, with SSD we will
2012 Apr 10
7
[PATCH v3 1/2] xen: enter/exit lazy_mmu_mode around m2p_override calls
...git a/drivers/block/xen-blkback/blkback.c b/drivers/block/xen-blkback/blkback.c index 0088bf6..0453695 100644 --- a/drivers/block/xen-blkback/blkback.c +++ b/drivers/block/xen-blkback/blkback.c @@ -386,6 +386,7 @@ static int xen_blkbk_map(struct blkif_request *req, * so that when we access vaddr(pending_req,i) it has the contents of * the page from the other domain. */ + arch_enter_lazy_mmu_mode(); for (i = 0; i < nseg; i++) { if (unlikely(map[i].status != 0)) { pr_debug(DRV_PFX "invalid buffer -- could not remap it\n"); @@ -410,6 +411,7 @@ static int xen_blkbk_map(struct b...
2011 Dec 01
11
[PATCH 0 of 2] Paging support updates for XCP dom0
This is a cherry pick of two patches that add support for guest paged out frames in the XCP 2.6.32 dom0 patch queue. First patch propagates the ENOENT returned by the hypervisor in the case of a paged out page, all the way up the call chain to the MMAPBATCH_V2 ioctl. The ioctl is mainly used to harvest those return values and retry. The second patch adds retry loops to all backend grant
2011 May 02
32
[PATCH] blkback: Fix block I/O latency issue
In blkback driver, after I/O requests are submitted to Dom-0 block I/O subsystem, blkback goes to ''sleep'' effectively without letting blkfront know about it (req_event isn''t set appropriately). Hence blkfront doesn''t notify blkback when it submits a new I/O thus delaying the ''dispatch'' of the new I/O to Dom-0 block I/O subsystem. The new I/O is
2019 Jul 24
20
[PATCH 00/12] block/bio, fs: convert put_page() to put_user_page*()
From: John Hubbard <jhubbard at nvidia.com> Hi, This is mostly Jerome's work, converting the block/bio and related areas to call put_user_page*() instead of put_page(). Because I've changed Jerome's patches, in some cases significantly, I'd like to get his feedback before we actually leave him listed as the author (he might want to disown some or all of these). I added a
2019 Jul 24
20
[PATCH 00/12] block/bio, fs: convert put_page() to put_user_page*()
From: John Hubbard <jhubbard at nvidia.com> Hi, This is mostly Jerome's work, converting the block/bio and related areas to call put_user_page*() instead of put_page(). Because I've changed Jerome's patches, in some cases significantly, I'd like to get his feedback before we actually leave him listed as the author (he might want to disown some or all of these). I added a