Displaying 20 results from an estimated 33 matches for "km_user0".
2008 Oct 27
0
[PATCH 4/4] linux/i386: utilize hypervisor highmem handling helpers
...ikely(xen_feature(XENFEAT_highmem_assist))
+ && PageHighMem(page)) {
+ struct mmuext_op meo;
+
+ meo.cmd = MMUEXT_CLEAR_PAGE;
+ meo.arg1.mfn = pfn_to_mfn(page_to_pfn(page));
+ if (HYPERVISOR_mmuext_op(&meo, 1, NULL, DOMID_SELF) == 0)
+ return;
+ }
+
+ kaddr = kmap_atomic(page, KM_USER0);
+ clear_page(kaddr);
+ kunmap_atomic(kaddr, KM_USER0);
+}
+
+void copy_highpage(struct page *to, struct page *from)
+{
+ void *vfrom, *vto;
+
+ if (likely(xen_feature(XENFEAT_highmem_assist))
+ && (PageHighMem(from) || PageHighMem(to))) {
+ unsigned long from_pfn = page_to_pfn(from);...
2010 Feb 23
3
[PATCH 0/3] vhost: logging fixes
The following patches on top of net-next fix issues related to write
logging in vhost. This fixes all known to me logging issues, migration
now works for me while under stress in both TX and RX directions.
Rusty's going on vacation, I am guessing he won't have time to review
this: Gleb, Juan, Herbert, could one of you review this patchset please?
There's also the send queue full issue
2010 Feb 23
3
[PATCH 0/3] vhost: logging fixes
The following patches on top of net-next fix issues related to write
logging in vhost. This fixes all known to me logging issues, migration
now works for me while under stress in both TX and RX directions.
Rusty's going on vacation, I am guessing he won't have time to review
this: Gleb, Juan, Herbert, could one of you review this patchset please?
There's also the send queue full issue
2008 May 08
4
[PATCH 0/4] paravirt clock series.
Respin of the paravirt clock patch series.
On the host side the kvm paravirt clock is made compatible with the
xen clock.
On the guest side some xen code has been factored out into a separate
source file shared by both kvm and xen clock implementations.
This time it should work ok for kvm smp guests ;)
cheers,
Gerd
2008 May 08
4
[PATCH 0/4] paravirt clock series.
Respin of the paravirt clock patch series.
On the host side the kvm paravirt clock is made compatible with the
xen clock.
On the guest side some xen code has been factored out into a separate
source file shared by both kvm and xen clock implementations.
This time it should work ok for kvm smp guests ;)
cheers,
Gerd
2008 May 16
5
[PATCH 0/4] paravirt clock source patches, #3
paravirt clock source patches, next round, with a bunch of changes
in the host code according to Avi's review comments and some minor
code tweaks.
cheers,
Gerd
2008 May 16
5
[PATCH 0/4] paravirt clock source patches, #3
paravirt clock source patches, next round, with a bunch of changes
in the host code according to Avi's review comments and some minor
code tweaks.
cheers,
Gerd
2009 Jul 13
1
[PATCH 1/1] adds mlogs to aops.c
...nline_data(struct inode *inode, struct page *page,
"Inode %llu has with inline data has bad size: %Lu",
(unsigned long long)OCFS2_I(inode)->ip_blkno,
(unsigned long long)size);
- return -EROFS;
+ status = -EROFS;
+ goto bail;
}
kaddr = kmap_atomic(page, KM_USER0);
@@ -245,7 +253,9 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page,
SetPageUptodate(page);
- return 0;
+bail:
+ mlog_exit(status);
+ return status;
}
static int ocfs2_readpage_inline(struct inode *inode, struct page *page)
@@ -253,6 +263,8 @@ static int ocfs2_readpage...
2009 Jul 21
1
(no subject)
...nline_data(struct inode *inode, struct page *page,
"Inode %llu has with inline data has bad size: %Lu",
(unsigned long long)OCFS2_I(inode)->ip_blkno,
(unsigned long long)size);
- return -EROFS;
+ status = -EROFS;
+ goto bail;
}
kaddr = kmap_atomic(page, KM_USER0);
@@ -245,7 +254,9 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page,
SetPageUptodate(page);
- return 0;
+bail:
+ mlog_exit(status);
+ return status;
}
static int ocfs2_readpage_inline(struct inode *inode, struct page *page)
@@ -253,6 +264,9 @@ static int ocfs2_readpage...
2011 Mar 08
6
[PATCH v1 0/6] btrfs: scrub
This series adds an initial implementation for scrub. It works quite
straightforward. The usermode issues an ioctl for each device in the
fs. For each device, it enumerates the allocated device chunks. For
each chunk, the contained extents are enumerated and the data checksums
fetched. The extents are read sequentially and the checksums verified.
If an error occurs (checksum or EIO), a good copy
2008 Jun 03
6
[PATCH 0/5] paravirt clock source patches, #5
paravirt clock source patches, next round.
There is now a pvclock-abi.h file with the structs and some longish
comments in it and everybody is switched over to use the stuff in
there.
Some minor tweaks after super-fast review by Jeremy.
The queue is on top of the kvm git tree. The first two patches should
have no kvm dependencies and should apply to linus tree just fine.
cheers,
Gerd
2008 Jun 03
6
[PATCH 0/5] paravirt clock source patches, #5
paravirt clock source patches, next round.
There is now a pvclock-abi.h file with the structs and some longish
comments in it and everybody is switched over to use the stuff in
there.
Some minor tweaks after super-fast review by Jeremy.
The queue is on top of the kvm git tree. The first two patches should
have no kvm dependencies and should apply to linus tree just fine.
cheers,
Gerd
2009 Jul 21
1
[PATCH 1/1] ocfs2: adds mlogs to aops.c -V2
...nline_data(struct inode *inode, struct page *page,
"Inode %llu has with inline data has bad size: %Lu",
(unsigned long long)OCFS2_I(inode)->ip_blkno,
(unsigned long long)size);
- return -EROFS;
+ status = -EROFS;
+ goto bail;
}
kaddr = kmap_atomic(page, KM_USER0);
@@ -245,7 +254,9 @@ int ocfs2_read_inline_data(struct inode *inode, struct page *page,
SetPageUptodate(page);
- return 0;
+bail:
+ mlog_exit(status);
+ return status;
}
static int ocfs2_readpage_inline(struct inode *inode, struct page *page)
@@ -253,6 +264,9 @@ static int ocfs2_readpage...
2008 Jun 03
10
[PATCH 0/5] paravirt clock source patches, #4
paravirt clock source patches, next round.
There is now a pvclock-abi.h file with the structs and some longish
comments in it and everybody is switched over to use the stuff in
there.
cheers,
Gerd
2008 Jun 03
10
[PATCH 0/5] paravirt clock source patches, #4
paravirt clock source patches, next round.
There is now a pvclock-abi.h file with the structs and some longish
comments in it and everybody is switched over to use the stuff in
there.
cheers,
Gerd
2012 Feb 13
10
[RFB] add LZ4 compression method to btrfs
Hi,
so here it is, LZ4 compression method inside btrfs. The patchset is based on
top of current Chris'' for-linus + Andi''s snappy implementation + the fixes from
Li Zefan. Passes xfstests and stresstests.
I haven''t measured performance on wide range of hardware or workloads, rather
wanted to publish the patches before I get distracted again. I''d like to ask
2009 Nov 09
3
[PATCHv9 3/3] vhost_net: a kernel-level virtio server
...tables.txt.
+ */
+static int set_bit_to_user(int nr, void __user *addr)
+{
+ unsigned long log = (unsigned long)addr;
+ struct page *page;
+ void *base;
+ int bit = nr + (log % PAGE_SIZE) * 8;
+ int r;
+ r = get_user_pages_fast(log, 1, 1, &page);
+ if (r)
+ return r;
+ base = kmap_atomic(page, KM_USER0);
+ set_bit(bit, base);
+ kunmap_atomic(base, KM_USER0);
+ set_page_dirty_lock(page);
+ put_page(page);
+ return 0;
+}
+
+static int log_write(void __user *log_base,
+ u64 write_address, u64 write_length)
+{
+ int r;
+ if (!write_length)
+ return 0;
+ write_address /= VHOST_PAGE_SIZE;
+ for...
2009 Nov 09
3
[PATCHv9 3/3] vhost_net: a kernel-level virtio server
...tables.txt.
+ */
+static int set_bit_to_user(int nr, void __user *addr)
+{
+ unsigned long log = (unsigned long)addr;
+ struct page *page;
+ void *base;
+ int bit = nr + (log % PAGE_SIZE) * 8;
+ int r;
+ r = get_user_pages_fast(log, 1, 1, &page);
+ if (r)
+ return r;
+ base = kmap_atomic(page, KM_USER0);
+ set_bit(bit, base);
+ kunmap_atomic(base, KM_USER0);
+ set_page_dirty_lock(page);
+ put_page(page);
+ return 0;
+}
+
+static int log_write(void __user *log_base,
+ u64 write_address, u64 write_length)
+{
+ int r;
+ if (!write_length)
+ return 0;
+ write_address /= VHOST_PAGE_SIZE;
+ for...
2009 Nov 17
0
No subject
...r)
+{
+ unsigned long log =3D (unsigned long)addr;
+ struct page *page;
+ void *base;
+ int bit =3D nr + (log % PAGE_SIZE) * 8;
+ int r;
+ r =3D get_user_pages_fast(log, 1, 1, &page);
+ if (r)
+ return r;
+ base =3D kmap_atomic(page, KM_USER0);
+ set_bit(bit, base);
+ kunmap_atomic(base, KM_USER0);
+ set_page_dirty_lock(page);
+ put_page(page);
+ return 0;
+}
+
+static int log_write(void __user *log_base,
+ u64 write_address, u64 write_length)
+{
+ int r;
+ if (!write_length)...
2009 Nov 17
0
No subject
...r)
+{
+ unsigned long log =3D (unsigned long)addr;
+ struct page *page;
+ void *base;
+ int bit =3D nr + (log % PAGE_SIZE) * 8;
+ int r;
+ r =3D get_user_pages_fast(log, 1, 1, &page);
+ if (r)
+ return r;
+ base =3D kmap_atomic(page, KM_USER0);
+ set_bit(bit, base);
+ kunmap_atomic(base, KM_USER0);
+ set_page_dirty_lock(page);
+ put_page(page);
+ return 0;
+}
+
+static int log_write(void __user *log_base,
+ u64 write_address, u64 write_length)
+{
+ int r;
+ if (!write_length)...