mirror of
https://github.com/torvalds/linux.git
synced 2026-10-07 05:31:08 -04:00
block: pass page to xen_biovec_phys_mergeable
xen_biovec_phys_mergeable() only needs .bv_page of the 2nd bio bvec for checking if the two bvecs can be merged, so pass page to xen_biovec_phys_mergeable() directly. No function change. Cc: ris Ostrovsky <[email protected]> Cc: Juergen Gross <[email protected]> Cc: [email protected] Cc: Omar Sandoval <[email protected]> Cc: Christoph Hellwig <[email protected]> Reviewed-by: Christoph Hellwig <[email protected]> Reviewed-by: Boris Ostrovsky <[email protected]> Signed-off-by: Ming Lei <[email protected]> Signed-off-by: Jens Axboe <[email protected]>
This commit is contained in:
1 parent
56a85fd837
commit
0383ad4374
3 files changed
+7
-4
No files matched your search
+1
-1
@@ -75,7 +75,7 @@ static inline bool biovec_phys_mergeable(struct request_queue *q,
|
||||
|
||||
if (addr1 + vec1->bv_len != addr2)
|
||||
return false;
|
||||
if (xen_domain() && !xen_biovec_phys_mergeable(vec1, vec2))
|
||||
if (xen_domain() && !xen_biovec_phys_mergeable(vec1, vec2->bv_page))
|
||||
return false;
|
||||
if ((addr1 | mask) != ((addr2 + vec2->bv_len - 1) | mask))
|
||||
return false;
|
||||
|
||||
@@ -4,12 +4,13 @@
|
||||
#include <xen/xen.h>
|
||||
#include <xen/page.h>
|
||||
|
||||
/* check if @page can be merged with 'vec1' */
|
||||
bool xen_biovec_phys_mergeable(const struct bio_vec *vec1,
|
||||
const struct bio_vec *vec2)
|
||||
const struct page *page)
|
||||
{
|
||||
#if XEN_PAGE_SIZE == PAGE_SIZE
|
||||
unsigned long bfn1 = pfn_to_bfn(page_to_pfn(vec1->bv_page));
|
||||
unsigned long bfn2 = pfn_to_bfn(page_to_pfn(vec2->bv_page));
|
||||
unsigned long bfn2 = pfn_to_bfn(page_to_pfn(page));
|
||||
|
||||
return bfn1 + PFN_DOWN(vec1->bv_offset + vec1->bv_len) == bfn2;
|
||||
#else
|
||||
|
||||
+3
-1
@@ -43,8 +43,10 @@ extern struct hvm_start_info pvh_start_info;
|
||||
#endif /* CONFIG_XEN_DOM0 */
|
||||
|
||||
struct bio_vec;
|
||||
struct page;
|
||||
|
||||
bool xen_biovec_phys_mergeable(const struct bio_vec *vec1,
|
||||
const struct bio_vec *vec2);
|
||||
const struct page *page);
|
||||
|
||||
#if defined(CONFIG_MEMORY_HOTPLUG) && defined(CONFIG_XEN_BALLOON)
|
||||
extern u64 xen_saved_max_mem_size;
|
||||
|
||||
Reference in new issue
Block a user