Flush to guarantee no workers are running when suspend returns.
Add a lock to enforce ordering between clearing running, flushing,
and posting new work in vdpasim_kick_vq. It must be a spin lock
because vdpasim_kick_vq may be reached va eventfd_write.
Signed-off-by: Steve Sistare
---
drivers
Support the suspend operation. There is little to do, except flush to
guarantee no workers are running when suspend returns.
Signed-off-by: Steve Sistare
---
drivers/vdpa/vdpa_user/vduse_dev.c | 24
1 file changed, 24 insertions(+)
diff --git a/drivers/vdpa/vdpa_user
uspend)
- call vhost_dev_flush unconditionally in "vhost-vdpa: flush workers on
suspend"
Changes in v3:
- rewrote vdpa_sim patch
Steve Sistare (3):
vhost-vdpa: flush workers on suspend
vduse: suspend
vdpa_sim: flush workers on suspend
drivers/vdpa/vdpa_sim/vdpa_sim.c | 16
Flush to guarantee no workers are running when suspend returns.
Fixes: f345a0143b4d ("vhost-vdpa: uAPI to suspend the device")
Signed-off-by: Steve Sistare
Acked-by: Eugenio PĂ©rez
---
drivers/vhost/vdpa.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/vhost/vdpa.c
If a vdpa device is not in state DRIVER_OK, then there is no driver state
to preserve, so no need to call the suspend and resume driver ops.
Suggested-by: Eugenio Perez Martin "
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 6 ++
1 file changed, 6 insertions(+)
diff
Support the suspend operation. There is little to do, except flush to
guarantee no workers are running when suspend returns.
Signed-off-by: Steve Sistare
---
drivers/vdpa/vdpa_user/vduse_dev.c | 24
1 file changed, 24 insertions(+)
diff --git a/drivers/vdpa/vdpa_user
Flush to guarantee no workers are running when suspend returns.
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 3 +++
1 file changed, 3 insertions(+)
diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
index bc4a51e4638b..a3b986c24805 100644
--- a/drivers/vhost/vdpa.c
+++ b
Flush to guarantee no workers are running when suspend returns,
for vdpa, vpa_sim, and vduse. (mlx5 already does so, via the path
mlx5_vdpa_suspend -> unregister_link_notifier -> flush_workqueue.)
Steve Sistare (3):
vhost-vdpa: flush workers on suspend
vduse: suspend
vdpa_sim:
Flush to guarantee no workers are running when suspend returns.
Signed-off-by: Steve Sistare
---
drivers/vdpa/vdpa_sim/vdpa_sim.c | 13 +
1 file changed, 13 insertions(+)
diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim.c b/drivers/vdpa/vdpa_sim/vdpa_sim.c
index be2925d0d283
Calling suspend or resume requires VIRTIO_CONFIG_S_DRIVER_OK, for all
vdpa devices.
Suggested-by: Eugenio Perez Martin "
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 6 ++
1 file changed, 6 insertions(+)
diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
index bc4a51e
vdpasim_do_reset sets running to true, which is wrong, as it allows
vdpasim_kick_vq to post work requests before the device has been
configured. To fix, do not set running until VIRTIO_CONFIG_S_DRIVER_OK
is set.
Fixes: 0c89e2a3a9d0 ("vdpa_sim: Implement suspend vdpa op")
Signed-off
vdpasim_do_reset sets running to true, which is wrong, as it allows
vdpasim_kick_vq to post work requests before the device has been
configured. To fix, do not set running until VIRTIO_CONFIG_S_FEATURES_OK
is set.
Fixes: 0c89e2a3a9d0 ("vdpa_sim: Implement suspend vdpa op")
Signed-off
The vdpa_sim device supports ownership transfer to a new process, so
advertise VHOST_BACKEND_F_NEW_OWNER. User virtual addresses are used
by the software iommu, so VHOST_IOTLB_REMAP is required after
VHOST_NEW_OWNER, so advertise VHOST_BACKEND_F_IOTLB_REMAP.
Signed-off-by: Steve Sistare
The vduse device supports ownership transfer to a new process, so
advertise VHOST_BACKEND_F_NEW_OWNER. User virtual addresses are used
by the software iommu, so VHOST_IOTLB_REMAP is required after
VHOST_NEW_OWNER, so advertise VHOST_BACKEND_F_IOTLB_REMAP.
Signed-off-by: Steve Sistare
in between.
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 4
1 file changed, 4 insertions(+)
diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
index 8fe1562d24af..9673e8e20d11 100644
--- a/drivers/vhost/vdpa.c
+++ b/drivers/vhost/vdpa.c
@@ -591,10 +591,14 @@ static long
Add the VHOST_BACKEND_F_NEW_OWNER backend capability, which indicates that
VHOST_NEW_OWNER is supported.
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 7 ++-
include/uapi/linux/vhost_types.h | 2 ++
2 files changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers
-by: Steve Sistare
---
drivers/vdpa/mlx5/net/mlx5_vnet.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c
b/drivers/vdpa/mlx5/net/mlx5_vnet.c
index 26ba7da6b410..26f24fb0e160 100644
--- a/drivers/vdpa/mlx5/net/mlx5_vnet.c
+++ b/drivers/vdpa/mlx5
in between.
Signed-off-by: Steve Sistare
---
drivers/vdpa/vdpa_sim/vdpa_sim.c | 13 +
1 file changed, 13 insertions(+)
diff --git a/drivers/vdpa/vdpa_sim/vdpa_sim.c b/drivers/vdpa/vdpa_sim/vdpa_sim.c
index 6304cb0b4770..8734834983cb 100644
--- a/drivers/vdpa/vdpa_sim/vdpa_sim.c
+++ b
vdpasim_do_reset sets running to true, which is wrong, as it allows
vdpasim_kick_vq to post work requests before the device has been
configured. To fix, do not set running until VIRTIO_CONFIG_S_FEATURES_OK
is set.
Signed-off-by: Steve Sistare
---
drivers/vdpa/vdpa_sim/vdpa_sim.c | 3 ++-
1
mapped.
The user must suspend the device before the old address is invalidated,
and cannot resume it until after VHOST_IOTLB_REMAP is called, but this
requirement is not enforced by the API.
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 34
the feature during negotiation
does not negate this requirement.
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 8 +++-
include/uapi/linux/vhost_types.h | 2 ++
2 files changed, 9 insertions(+), 1 deletion(-)
diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
index
in between.
Signed-off-by: Steve Sistare
---
drivers/vdpa/vdpa_user/vduse_dev.c | 24
1 file changed, 24 insertions(+)
diff --git a/drivers/vdpa/vdpa_user/vduse_dev.c
b/drivers/vdpa/vdpa_user/vduse_dev.c
index 0ddd4b8abecb..6b25457a037d 100644
--- a/drivers/vdpa/vdpa_user
Add an ioctl to transfer file descriptor ownership and pinned memory
accounting from one process to another.
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 37 +
drivers/vhost/vhost.c | 15 +++
drivers/vhost/vhost.h | 1
write(fd, {VHOST_IOTLB_REMAP, new_addr})
ioctl(fd, VHOST_VDPA_SET_STATUS,
ACKNOWLEDGE | DRIVER | FEATURES_OK | DRIVER_OK)
Steve Sistare (13):
vhost-vdpa: count pinned memory
vhost-vdpa: pass mm to bind
vhost-vdpa: VHOST_NEW_OWNER
vhost-vdpa: VHOST_BACKEND_F_NEW_OWNER
vhost
Pass the target mm to vhost_vdpa_bind_mm. No functional change.
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
index 10fb95bcca1a..2269988d6d33 100644
--- a/drivers
Remember the count of pinned memory for the device.
Signed-off-by: Steve Sistare
---
drivers/vhost/vdpa.c | 7 +--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/drivers/vhost/vdpa.c b/drivers/vhost/vdpa.c
index da7ec77cdaff..10fb95bcca1a 100644
--- a/drivers/vhost/vdpa.c
Move the update of idle_stamp from idle_balance to the call site in
pick_next_task_fair, to prepare for a future patch that adds work to
pick_next_task_fair which must be included in the idle_stamp interval.
No functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 31
-by: Steve Sistare
---
kernel/sched/fair.c | 52
1 file changed, 48 insertions(+), 4 deletions(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index ee271bb..4e105db 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -21,6
Move the update of idle_stamp from idle_balance to the call site in
pick_next_task_fair, to prepare for a future patch that adds work to
pick_next_task_fair which must be included in the idle_stamp interval.
No functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 31
-by: Steve Sistare
---
kernel/sched/fair.c | 52
1 file changed, 48 insertions(+), 4 deletions(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index ee271bb..4e105db 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -21,6
used by
block drivers.
Signed-off-by: Steve Sistare
---
kernel/sched/sparsemask.h | 210 ++
1 file changed, 210 insertions(+)
create mode 100644 kernel/sched/sparsemask.h
diff --git a/kernel/sched/sparsemask.h b/kernel/sched/sparsemask.h
new file mode
From: Steve Sistare
Define and initialize a sparse bitmap of overloaded CPUs, per
last-level-cache scheduling domain, for use by the CFS scheduling class.
Save a pointer to cfs_overload_cpus in the rq for efficient access.
Signed-off-by: Steve Sistare
---
include/linux/sched/topology.h | 1
The detach_task function takes a struct lb_env argument, but only needs a
few of its members. Pass the rq and cpu arguments explicitly so the
function may be called from code that is not based on lb_env. No
functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 14
n update_top_cache_domain instead of
cpu_attach_domain
- Rewrite sparsemask iterator for complete inlining
- Cull and clean up sparsemask functions and moved all into
sched/sparsemask.h
Steve Sistare (10):
sched: Provide sparsemask, a reduced contention bitmap
sched/topology: Provide hooks to all
Define a simpler version of can_migrate_task called can_migrate_task_llc
which does not require a struct lb_env argument, and judges whether a
migration from one CPU to another within the same LLC should be allowed.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 28
in __sdt_alloc() and then figured out which shared nodes are
redundant.
Signed-off-by: Steve Sistare
---
kernel/sched/topology.c | 75 -
1 file changed, 74 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
used by
block drivers.
Signed-off-by: Steve Sistare
---
kernel/sched/sparsemask.h | 210 ++
1 file changed, 210 insertions(+)
create mode 100644 kernel/sched/sparsemask.h
diff --git a/kernel/sched/sparsemask.h b/kernel/sched/sparsemask.h
new file mode
From: Steve Sistare
Define and initialize a sparse bitmap of overloaded CPUs, per
last-level-cache scheduling domain, for use by the CFS scheduling class.
Save a pointer to cfs_overload_cpus in the rq for efficient access.
Signed-off-by: Steve Sistare
---
include/linux/sched/topology.h | 1
The detach_task function takes a struct lb_env argument, but only needs a
few of its members. Pass the rq and cpu arguments explicitly so the
function may be called from code that is not based on lb_env. No
functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 14
n update_top_cache_domain instead of
cpu_attach_domain
- Rewrite sparsemask iterator for complete inlining
- Cull and clean up sparsemask functions and moved all into
sched/sparsemask.h
Steve Sistare (10):
sched: Provide sparsemask, a reduced contention bitmap
sched/topology: Provide hooks to all
Define a simpler version of can_migrate_task called can_migrate_task_llc
which does not require a struct lb_env argument, and judges whether a
migration from one CPU to another within the same LLC should be allowed.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 28
in __sdt_alloc() and then figured out which shared nodes are
redundant.
Signed-off-by: Steve Sistare
---
kernel/sched/topology.c | 75 -
1 file changed, 74 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
d anything idle.
field 14: time in nanoseconds spent in functions that search for idle
CPUs and search for tasks to steal.
field 15: # of times an idle CPU steals a task from another CPU.
field 16: # of times try_steal finds overloaded CPUs but no task is
migratable.
Signed-off
make room for the other.
For now, disable STEAL on such systems until we can do better, or it is
shown that hackbench is atypical and most workloads benefit from stealing.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 16 +---
kernel/sched/sched.h|
d anything idle.
field 14: time in nanoseconds spent in functions that search for idle
CPUs and search for tasks to steal.
field 15: # of times an idle CPU steals a task from another CPU.
field 16: # of times try_steal finds overloaded CPUs but no task is
migratable.
Signed-off
make room for the other.
For now, disable STEAL on such systems until we can do better, or it is
shown that hackbench is atypical and most workloads benefit from stealing.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 16 +---
kernel/sched/sched.h|
64 12823.00.24 12823.60.26 0.0
-----
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 169 ++--
kernel/sched/features.h | 6 ++
2 files changed, 170 insertions(+), 5 dele
64 12823.00.24 12823.60.26 0.0
-----
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 169 ++--
kernel/sched/features.h | 6 ++
2 files changed, 170 insertions(+), 5 dele
From: Steve Sistare
Provide struct sparsemask and functions to manipulate it. A sparsemask is
a sparse bitmap. It reduces cache contention vs the usual bitmap when many
threads concurrently set, clear, and visit elements, by reducing the number
of significant bits per cacheline. For each 64
Define a simpler version of can_migrate_task called can_migrate_task_llc
which does not require a struct lb_env argument, and judges whether a
migration from one CPU to another within the same LLC should be allowed.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 28
The detach_task function takes a struct lb_env argument, but only needs a
few of its members. Pass the rq and cpu arguments explicitly so the
function may be called from code that is not based on lb_env. No
functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 14
From: Steve Sistare
Provide struct sparsemask and functions to manipulate it. A sparsemask is
a sparse bitmap. It reduces cache contention vs the usual bitmap when many
threads concurrently set, clear, and visit elements, by reducing the number
of significant bits per cacheline. For each 64
Define a simpler version of can_migrate_task called can_migrate_task_llc
which does not require a struct lb_env argument, and judges whether a
migration from one CPU to another within the same LLC should be allowed.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 28
The detach_task function takes a struct lb_env argument, but only needs a
few of its members. Pass the rq and cpu arguments explicitly so the
function may be called from code that is not based on lb_env. No
functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 14
make room for the other.
For now, disable STEAL on such systems until we can do better, or it is
shown that hackbench is atypical and most workloads benefit from stealing.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 16 +---
kernel/sched/sched.h|
Update series for kernel 4.20. Context changes only.
Steve Sistare (10):
sched: Provide sparsemask, a reduced contention bitmap
sched/topology: Provide hooks to allocate data shared per LLC
sched/topology: Provide cfs_overload_cpus bitmap
sched/fair: Dynamically update cfs_overload_cpus
s
in __sdt_alloc() and then figured out which shared nodes are
redundant.
Signed-off-by: Steve Sistare
---
kernel/sched/topology.c | 75 -
1 file changed, 74 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
make room for the other.
For now, disable STEAL on such systems until we can do better, or it is
shown that hackbench is atypical and most workloads benefit from stealing.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 16 +---
kernel/sched/sched.h|
Update series for kernel 4.20. Context changes only.
Steve Sistare (10):
sched: Provide sparsemask, a reduced contention bitmap
sched/topology: Provide hooks to allocate data shared per LLC
sched/topology: Provide cfs_overload_cpus bitmap
sched/fair: Dynamically update cfs_overload_cpus
s
in __sdt_alloc() and then figured out which shared nodes are
redundant.
Signed-off-by: Steve Sistare
---
kernel/sched/topology.c | 75 -
1 file changed, 74 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
d anything idle.
field 14: time in nanoseconds spent in functions that search for idle
CPUs and search for tasks to steal.
field 15: # of times an idle CPU steals a task from another CPU.
field 16: # of times try_steal finds overloaded CPUs but no task is
migratable.
Signed-off
d anything idle.
field 14: time in nanoseconds spent in functions that search for idle
CPUs and search for tasks to steal.
field 15: # of times an idle CPU steals a task from another CPU.
field 16: # of times try_steal finds overloaded CPUs but no task is
migratable.
Signed-off
64 12823.00.24 12823.60.26 0.0
-----
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 169 ++--
kernel/sched/features.h | 6 ++
2 files changed, 170 insertions(+), 5 dele
Move the update of idle_stamp from idle_balance to the call site in
pick_next_task_fair, to prepare for a future patch that adds work to
pick_next_task_fair which must be included in the idle_stamp interval.
No functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 23
From: Steve Sistare
Define and initialize a sparse bitmap of overloaded CPUs, per
last-level-cache scheduling domain, for use by the CFS scheduling class.
Save a pointer to cfs_overload_cpus in the rq for efficient access.
Signed-off-by: Steve Sistare
---
include/linux/sched/topology.h | 1
Move the update of idle_stamp from idle_balance to the call site in
pick_next_task_fair, to prepare for a future patch that adds work to
pick_next_task_fair which must be included in the idle_stamp interval.
No functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 23
From: Steve Sistare
Define and initialize a sparse bitmap of overloaded CPUs, per
last-level-cache scheduling domain, for use by the CFS scheduling class.
Save a pointer to cfs_overload_cpus in the rq for efficient access.
Signed-off-by: Steve Sistare
---
include/linux/sched/topology.h | 1
64 12823.00.24 12823.60.26 0.0
-----
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 169 ++--
kernel/sched/features.h | 6 ++
2 files changed, 170 insertions(+), 5 dele
-by: Steve Sistare
---
kernel/sched/fair.c | 52
1 file changed, 48 insertions(+), 4 deletions(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index ee271bb..9031d39 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -23,6
-by: Steve Sistare
---
kernel/sched/fair.c | 52
1 file changed, 48 insertions(+), 4 deletions(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index ee271bb..9031d39 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -23,6
d anything idle.
field 14: time in nanoseconds spent in functions that search for idle
CPUs and search for tasks to steal.
field 15: # of times an idle CPU steals a task from another CPU.
field 16: # of times try_steal finds overloaded CPUs but no task is
migratable.
Signed-off
d anything idle.
field 14: time in nanoseconds spent in functions that search for idle
CPUs and search for tasks to steal.
field 15: # of times an idle CPU steals a task from another CPU.
field 16: # of times try_steal finds overloaded CPUs but no task is
migratable.
Signed-off
From: Steve Sistare
Provide struct sparsemask and functions to manipulate it. A sparsemask is
a sparse bitmap. It reduces cache contention vs the usual bitmap when many
threads concurrently set, clear, and visit elements, by reducing the number
of significant bits per cacheline. For each 64
make room for the other.
For now, disable STEAL on such systems until we can do better, or it is
shown that hackbench is atypical and most workloads benefit from stealing.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 16 +---
kernel/sched/sched.h|
The detach_task function takes a struct lb_env argument, but only needs a
few of its members. Pass the rq and cpu arguments explicitly so the
function may be called from code that is not based on lb_env. No
functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 14
From: Steve Sistare
Provide struct sparsemask and functions to manipulate it. A sparsemask is
a sparse bitmap. It reduces cache contention vs the usual bitmap when many
threads concurrently set, clear, and visit elements, by reducing the number
of significant bits per cacheline. For each 64
make room for the other.
For now, disable STEAL on such systems until we can do better, or it is
shown that hackbench is atypical and most workloads benefit from stealing.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 16 +---
kernel/sched/sched.h|
The detach_task function takes a struct lb_env argument, but only needs a
few of its members. Pass the rq and cpu arguments explicitly so the
function may be called from code that is not based on lb_env. No
functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 14
From: Steve Sistare
Define and initialize a sparse bitmap of overloaded CPUs, per
last-level-cache scheduling domain, for use by the CFS scheduling class.
Save a pointer to cfs_overload_cpus in the rq for efficient access.
Signed-off-by: Steve Sistare
---
include/linux/sched/topology.h | 1
From: Steve Sistare
Define and initialize a sparse bitmap of overloaded CPUs, per
last-level-cache scheduling domain, for use by the CFS scheduling class.
Save a pointer to cfs_overload_cpus in the rq for efficient access.
Signed-off-by: Steve Sistare
---
include/linux/sched/topology.h | 1
-by: Steve Sistare
---
kernel/sched/fair.c | 52
1 file changed, 48 insertions(+), 4 deletions(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 7fc4a37..c623338 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -23,6
64 12823.00.24 12823.60.26 0.0
-----
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 169 ++--
kernel/sched/features.h | 6 ++
2 files changed, 170 insertions(+), 5 dele
-by: Steve Sistare
---
kernel/sched/fair.c | 52
1 file changed, 48 insertions(+), 4 deletions(-)
diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
index 7fc4a37..c623338 100644
--- a/kernel/sched/fair.c
+++ b/kernel/sched/fair.c
@@ -23,6
64 12823.00.24 12823.60.26 0.0
-----
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 169 ++--
kernel/sched/features.h | 6 ++
2 files changed, 170 insertions(+), 5 dele
Move the update of idle_stamp from idle_balance to the call site in
pick_next_task_fair, to prepare for a future patch that adds work to
pick_next_task_fair which must be included in the idle_stamp interval.
No functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 22
Move the update of idle_stamp from idle_balance to the call site in
pick_next_task_fair, to prepare for a future patch that adds work to
pick_next_task_fair which must be included in the idle_stamp interval.
No functional change.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 22
Define a simpler version of can_migrate_task called can_migrate_task_llc
which does not require a struct lb_env argument, and judges whether a
migration from one CPU to another within the same LLC should be allowed.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 28
in __sdt_alloc() and then figured out which shared nodes are
redundant.
Signed-off-by: Steve Sistare
---
kernel/sched/topology.c | 75 -
1 file changed, 74 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
Define a simpler version of can_migrate_task called can_migrate_task_llc
which does not require a struct lb_env argument, and judges whether a
migration from one CPU to another within the same LLC should be allowed.
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 28
in __sdt_alloc() and then figured out which shared nodes are
redundant.
Signed-off-by: Steve Sistare
---
kernel/sched/topology.c | 75 -
1 file changed, 74 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
3.60.26 0.0
--
Changes from v1 to v2:
- Remove stray find_time hunk from patch 5
- Fix "warning: label out defined but not used" for !CONFIG_SCHED_SMT
- Set SCHED_STEAL_NODE_LIMIT_DEFAULT to 2
- Steal iff avg_idle exceeds the cost of stealing
Steve Sistare (10):
sched:
3.60.26 0.0
--
Changes from v1 to v2:
- Remove stray find_time hunk from patch 5
- Fix "warning: label out defined but not used" for !CONFIG_SCHED_SMT
- Set SCHED_STEAL_NODE_LIMIT_DEFAULT to 2
- Steal iff avg_idle exceeds the cost of stealing
Steve Sistare (10):
sched:
64 12823.00.24 12823.60.26 0.0
-----
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 160 ++--
kernel/sched/features.h | 6 ++
2 files changed, 161 insertions(+), 5 dele
64 12823.00.24 12823.60.26 0.0
-----
Signed-off-by: Steve Sistare
---
kernel/sched/fair.c | 160 ++--
kernel/sched/features.h | 6 ++
2 files changed, 161 insertions(+), 5 dele
Define and initialize a sparse bitmap of overloaded CPUs, per
last-level-cache scheduling domain, for use by the CFS scheduling class.
Save a pointer to cfs_overload_cpus in the rq for efficient access.
Signed-off-by: Steve Sistare
---
include/linux/sched/topology.h | 1 +
kernel/sched/sched.h
Define and initialize a sparse bitmap of overloaded CPUs, per
last-level-cache scheduling domain, for use by the CFS scheduling class.
Save a pointer to cfs_overload_cpus in the rq for efficient access.
Signed-off-by: Steve Sistare
---
include/linux/sched/topology.h | 1 +
kernel/sched/sched.h
in __sdt_alloc() and then figured out which shared nodes are
redundant.
Signed-off-by: Steve Sistare
---
kernel/sched/topology.c | 75 -
1 file changed, 74 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
in __sdt_alloc() and then figured out which shared nodes are
redundant.
Signed-off-by: Steve Sistare
---
kernel/sched/topology.c | 75 -
1 file changed, 74 insertions(+), 1 deletion(-)
diff --git a/kernel/sched/topology.c b/kernel/sched/topology.c
,
only the first K bits of the first word are used, and the remaining bits
are ignored, where K is a creation time parameter. Thus a sparsemask that
can represent a set of N elements is approximately (N/K * 64) bytes in
size.
Signed-off-by: Steve Sistare
---
include/linux/sparsemask.h | 260
,
only the first K bits of the first word are used, and the remaining bits
are ignored, where K is a creation time parameter. Thus a sparsemask that
can represent a set of N elements is approximately (N/K * 64) bytes in
size.
Signed-off-by: Steve Sistare
---
include/linux/sparsemask.h | 260
1 - 100 of 114 matches
Mail list logo