Displaying 14 results from an estimated 14 matches for "put_task_struct".
2018 Dec 13
0
[PATCH] Export mm_update_next_owner function for vhost-net
....
Thanks
> set_fs(oldfs);
> return 0;
> }
> diff --git a/kernel/exit.c b/kernel/exit.c
> index 0e21e6d..9e046dd 100644
> --- a/kernel/exit.c
> +++ b/kernel/exit.c
> @@ -486,6 +486,7 @@ void mm_update_next_owner(struct mm_struct *mm)
> task_unlock(c);
> put_task_struct(c);
> }
> +EXPORT_SYMBOL(mm_update_next_owner);
> #endif /* CONFIG_MEMCG */
>
> /*
2007 May 09
0
[patch 1/9] lguest: export symbols for lguest as a module
From: Rusty Russell <rusty@rustcorp.com.au>
lguest does some fairly lowlevel things to support a host, which
normal modules don't need:
math_state_restore:
When the guest triggers a Device Not Available fault, we need
to be able to restore the FPU
__put_task_struct:
We need to hold a reference to another task for inter-guest
I/O, and put_task_struct() is an inline function which calls
__put_task_struct.
access_process_vm:
We need to access another task for inter-guest I/O.
map_vm_area & __get_vm_area:
We need to map the switcher shim (ie. monitor)...
2007 Apr 26
1
[PATCH] Fix lguest oops when guest dies while receiving I/O
...t_task_mm(current);
+ get_task_struct(lg->tsk);
+ lg->mm = get_task_mm(lg->tsk);
lg->last_pages = NULL;
mutex_unlock(&lguest_lock);
@@ -160,6 +161,7 @@ static int close(struct inode *inode, st
mutex_lock(&lguest_lock);
release_all_dma(lg);
free_guest_pagetable(lg);
+ put_task_struct(lg->tsk);
mmput(lg->mm);
if (!IS_ERR(lg->dead))
kfree(lg->dead);
2007 May 09
0
[patch 1/9] lguest: export symbols for lguest as a module
From: Rusty Russell <rusty@rustcorp.com.au>
lguest does some fairly lowlevel things to support a host, which
normal modules don't need:
math_state_restore:
When the guest triggers a Device Not Available fault, we need
to be able to restore the FPU
__put_task_struct:
We need to hold a reference to another task for inter-guest
I/O, and put_task_struct() is an inline function which calls
__put_task_struct.
access_process_vm:
We need to access another task for inter-guest I/O.
map_vm_area & __get_vm_area:
We need to map the switcher shim (ie. monitor)...
2007 Aug 20
0
[PATCH 3/4] modify account_system_time() to update guest time in cpustat and task_struct
...3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- kvm.orig/include/linux/sched.h 2007-08-20 13:20:12.000000000 +0200
+++ kvm/include/linux/sched.h 2007-08-20 13:21:24.000000000 +0200
@@ -1317,6 +1317,7 @@ static inline void put_task_struct(struc
#define PF_STARTING 0x00000002 /* being created */
#define PF_EXITING 0x00000004 /* getting shut down */
#define PF_EXITPIDONE 0x00000008 /* pi exit done on shut down */
+#define PF_VCPU 0x00000010 /* I'm a virtual CPU */
#define PF_FORKNOEXEC 0x00000040 /* forked but didn't exec...
2007 Aug 20
0
[PATCH 3/4] modify account_system_time() to update guest time in cpustat and task_struct
...3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D
--- kvm.orig/include/linux/sched.h 2007-08-20 13:20:12.000000000 +0200
+++ kvm/include/linux/sched.h 2007-08-20 13:21:24.000000000 +0200
@@ -1317,6 +1317,7 @@ static inline void put_task_struct(struc
#define PF_STARTING 0x00000002 /* being created */
#define PF_EXITING 0x00000004 /* getting shut down */
#define PF_EXITPIDONE 0x00000008 /* pi exit done on shut down */
+#define PF_VCPU 0x00000010 /* I'm a virtual CPU */
#define PF_FORKNOEXEC 0x00000040 /* forked but didn't exec...
2023 Jun 02
2
[PATCH 1/1] fork, vhost: Use CLONE_THREAD to fix freezer/ps regression
Hi Mike,
sorry, but somehow I can't understand this patch...
I'll try to read it with a fresh head on Weekend, but for example,
On 06/01, Mike Christie wrote:
>
> static int vhost_task_fn(void *data)
> {
> struct vhost_task *vtsk = data;
> - int ret;
> + bool dead = false;
> +
> + for (;;) {
> + bool did_work;
> +
> + /* mb paired w/
2007 Apr 18
0
[RFC/PATCH LGUEST X86_64 09/13] lguest64 devices
...;
+ return ret;
+}
+
+/* We cache one process to wakeup: helps for batching & wakes outside locks. */
+void set_wakeup_process(struct lguest_guest_info *linfo,
+ struct task_struct *p)
+{
+ if (p == linfo->wake)
+ return;
+
+ if (linfo->wake) {
+ wake_up_process(linfo->wake);
+ put_task_struct(linfo->wake);
+ }
+ linfo->wake = p;
+ if (linfo->wake)
+ get_task_struct(linfo->wake);
+}
+
+static int dma_transfer(struct lguest_guest_info *srclg,
+ unsigned long udma,
+ struct lguest_dma_info *dst)
+{
+#if 0
+ struct lguest_dma dst_dma, src_dma;
+ struct lguest_guest_info *ds...
2007 Apr 18
0
[RFC/PATCH LGUEST X86_64 09/13] lguest64 devices
...;
+ return ret;
+}
+
+/* We cache one process to wakeup: helps for batching & wakes outside locks. */
+void set_wakeup_process(struct lguest_guest_info *linfo,
+ struct task_struct *p)
+{
+ if (p == linfo->wake)
+ return;
+
+ if (linfo->wake) {
+ wake_up_process(linfo->wake);
+ put_task_struct(linfo->wake);
+ }
+ linfo->wake = p;
+ if (linfo->wake)
+ get_task_struct(linfo->wake);
+}
+
+static int dma_transfer(struct lguest_guest_info *srclg,
+ unsigned long udma,
+ struct lguest_dma_info *dst)
+{
+#if 0
+ struct lguest_dma dst_dma, src_dma;
+ struct lguest_guest_info *ds...
2007 May 09
1
[patch 3/9] lguest: the host code
...;
+ }
+ up_read(&lg->mm->mmap_sem);
+}
+
+/* We cache one process to wakeup: helps for batching & wakes outside locks. */
+void set_wakeup_process(struct lguest *lg, struct task_struct *p)
+{
+ if (p == lg->wake)
+ return;
+
+ if (lg->wake) {
+ wake_up_process(lg->wake);
+ put_task_struct(lg->wake);
+ }
+ lg->wake = p;
+ if (lg->wake)
+ get_task_struct(lg->wake);
+}
+
+/* Userspace wants a dma buffer from this guest. */
+unsigned long get_dma_buffer(struct lguest *lg,
+ unsigned long ukey, unsigned long *interrupt)
+{
+ unsigned long ret = 0;
+ union futex_key ke...
2007 May 09
1
[patch 3/9] lguest: the host code
...;
+ }
+ up_read(&lg->mm->mmap_sem);
+}
+
+/* We cache one process to wakeup: helps for batching & wakes outside locks. */
+void set_wakeup_process(struct lguest *lg, struct task_struct *p)
+{
+ if (p == lg->wake)
+ return;
+
+ if (lg->wake) {
+ wake_up_process(lg->wake);
+ put_task_struct(lg->wake);
+ }
+ lg->wake = p;
+ if (lg->wake)
+ get_task_struct(lg->wake);
+}
+
+/* Userspace wants a dma buffer from this guest. */
+unsigned long get_dma_buffer(struct lguest *lg,
+ unsigned long ukey, unsigned long *interrupt)
+{
+ unsigned long ret = 0;
+ union futex_key ke...
2019 Aug 09
6
[RFC PATCH v6 71/92] mm: add support for remote mapping
...eq.map_hva, PAGE_SIZE))
+ break;
+ if (req.req_hva & ~PAGE_MASK)
+ break;
+ if (req.map_hva & ~PAGE_MASK)
+ break;
+
+ result = -ESRCH;
+ req_task = find_get_task_by_vpid(req.req_pid);
+ if (req_task == NULL)
+ break;
+
+ result = -EINVAL;
+ req_mm = get_task_mm(req_task);
+ put_task_struct(req_task);
+ if (req_mm == NULL)
+ break;
+
+ result = mm_remote_map_file(fdb, req_mm, req.req_hva, req.map_hva);
+ mmput(req_mm);
+
+ break;
+ }
+
+ case REMOTE_UNMAP: {
+ unsigned long map_hva = (unsigned long) arg;
+
+ result = -EINVAL;
+ if (!access_ok(map_hva, PAGE_SIZE))
+ break;
+...
2019 Aug 09
117
[RFC PATCH v6 00/92] VM introspection
The KVM introspection subsystem provides a facility for applications running
on the host or in a separate VM, to control the execution of other VM-s
(pause, resume, shutdown), query the state of the vCPUs (GPRs, MSRs etc.),
alter the page access bits in the shadow page tables (only for the hardware
backed ones, eg. Intel's EPT) and receive notifications when events of
interest have taken place
2019 Aug 09
117
[RFC PATCH v6 00/92] VM introspection
The KVM introspection subsystem provides a facility for applications running
on the host or in a separate VM, to control the execution of other VM-s
(pause, resume, shutdown), query the state of the vCPUs (GPRs, MSRs etc.),
alter the page access bits in the shadow page tables (only for the hardware
backed ones, eg. Intel's EPT) and receive notifications when events of
interest have taken place