Buildroot Archive on lore.kernel.org
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v2] package/schedtool: new package
@ 2015-05-29  8:46 Angelo Compagnucci
  2015-07-10 22:08 ` Romain Naour
  0 siblings, 1 reply; 2+ messages in thread
From: Angelo Compagnucci @ 2015-05-29  8:46 UTC (permalink / raw)
  To: buildroot

Schedtool is the definitive interface to Linux's scheduler.

Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>
---
Changes v1 -> v2:
 - switched to TARGET_CONFIGURE_OPTS
 - fixed license

 package/Config.in              |  1 +
 package/schedtool/Config.in    | 10 ++++++++++
 package/schedtool/schedtool.mk | 20 ++++++++++++++++++++
 3 files changed, 31 insertions(+)
 create mode 100644 package/schedtool/Config.in
 create mode 100644 package/schedtool/schedtool.mk

diff --git a/package/Config.in b/package/Config.in
index 6661240..35f02e5 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1414,6 +1414,7 @@ endif
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 	source "package/rsyslog/Config.in"
 endif
+	source "package/schedtool/Config.in"
 	source "package/smack/Config.in"
 if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
 	source "package/start-stop-daemon/Config.in"
diff --git a/package/schedtool/Config.in b/package/schedtool/Config.in
new file mode 100644
index 0000000..928a02e
--- /dev/null
+++ b/package/schedtool/Config.in
@@ -0,0 +1,10 @@
+config BR2_PACKAGE_SCHEDTOOL
+	bool "schedtool"
+	help
+	  schedtool was born, because there was no tool to change or query
+	  all CPU-scheduling policies under Linux, in one handy command.
+	  Support for CPU-affinity has also been added and most recently
+	  (re-)nicing of processes.
+	  Thus, schedtool is the definitive interface to Linux's scheduler.
+
+	  https://github.com/jlelli/schedtool-dl
diff --git a/package/schedtool/schedtool.mk b/package/schedtool/schedtool.mk
new file mode 100644
index 0000000..481ecc0
--- /dev/null
+++ b/package/schedtool/schedtool.mk
@@ -0,0 +1,20 @@
+################################################################################
+#
+# schedtool
+#
+################################################################################
+
+SCHEDTOOL_VERSION = 3ffb479929c31cbae09de08f94f58b8f0f061d91
+SCHEDTOOL_SITE = $(call github,jlelli,schedtool-dl,$(SCHEDTOOL_VERSION))
+SCHEDTOOL_LICENSE = GPLv2
+SCHEDTOOL_LICENSE_FILES = LICENSE
+
+define SCHEDTOOL_BUILD_CMDS
+	$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all
+endef
+
+define SCHEDTOOL_INSTALL_TARGET_CMDS
+	$(INSTALL) -D -m 0755 $(@D)/schedtool $(TARGET_DIR)/usr/bin
+endef
+
+$(eval $(generic-package))
-- 
1.9.1

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* [Buildroot] [PATCH v2] package/schedtool: new package
  2015-05-29  8:46 [Buildroot] [PATCH v2] package/schedtool: new package Angelo Compagnucci
@ 2015-07-10 22:08 ` Romain Naour
  0 siblings, 0 replies; 2+ messages in thread
From: Romain Naour @ 2015-07-10 22:08 UTC (permalink / raw)
  To: buildroot

Hi Angelo,

Le 29/05/2015 10:46, Angelo Compagnucci a ?crit :
> Schedtool is the definitive interface to Linux's scheduler.
> 
> Signed-off-by: Angelo Compagnucci <angelo.compagnucci@gmail.com>

Thanks for your patch.

The two syscall "__NR_sched_setattr" and "__NR_sched_getattr" has been defined
for most architectures since kernel 3.14 but schedtool redefine them for x86_64,
i386 and arm even if they are already available in linux/unistd.h...
(see syscall_magic.h)

So schedtool should depend on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_14 except for
microblaze (BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_15), aarch64
(BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17) and blackfin
(BR2_TOOLCHAIN_HEADERS_AT_LEAST_4_1) otherwise it will break.

Obviously, it needs a kernel that implement these syscall.

Can you check if schedtool can really be used on these architectures.

Best regards,
Romain Naour

> ---
> Changes v1 -> v2:
>  - switched to TARGET_CONFIGURE_OPTS
>  - fixed license
> 
>  package/Config.in              |  1 +
>  package/schedtool/Config.in    | 10 ++++++++++
>  package/schedtool/schedtool.mk | 20 ++++++++++++++++++++
>  3 files changed, 31 insertions(+)
>  create mode 100644 package/schedtool/Config.in
>  create mode 100644 package/schedtool/schedtool.mk
> 
> diff --git a/package/Config.in b/package/Config.in
> index 6661240..35f02e5 100644
> --- a/package/Config.in
> +++ b/package/Config.in
> @@ -1414,6 +1414,7 @@ endif
>  if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
>  	source "package/rsyslog/Config.in"
>  endif
> +	source "package/schedtool/Config.in"
>  	source "package/smack/Config.in"
>  if BR2_PACKAGE_BUSYBOX_SHOW_OTHERS
>  	source "package/start-stop-daemon/Config.in"
> diff --git a/package/schedtool/Config.in b/package/schedtool/Config.in
> new file mode 100644
> index 0000000..928a02e
> --- /dev/null
> +++ b/package/schedtool/Config.in
> @@ -0,0 +1,10 @@
> +config BR2_PACKAGE_SCHEDTOOL
> +	bool "schedtool"
> +	help
> +	  schedtool was born, because there was no tool to change or query
> +	  all CPU-scheduling policies under Linux, in one handy command.
> +	  Support for CPU-affinity has also been added and most recently
> +	  (re-)nicing of processes.
> +	  Thus, schedtool is the definitive interface to Linux's scheduler.
> +
> +	  https://github.com/jlelli/schedtool-dl
> diff --git a/package/schedtool/schedtool.mk b/package/schedtool/schedtool.mk
> new file mode 100644
> index 0000000..481ecc0
> --- /dev/null
> +++ b/package/schedtool/schedtool.mk
> @@ -0,0 +1,20 @@
> +################################################################################
> +#
> +# schedtool
> +#
> +################################################################################
> +
> +SCHEDTOOL_VERSION = 3ffb479929c31cbae09de08f94f58b8f0f061d91
> +SCHEDTOOL_SITE = $(call github,jlelli,schedtool-dl,$(SCHEDTOOL_VERSION))
> +SCHEDTOOL_LICENSE = GPLv2
> +SCHEDTOOL_LICENSE_FILES = LICENSE
> +
> +define SCHEDTOOL_BUILD_CMDS
> +	$(MAKE) $(TARGET_CONFIGURE_OPTS) -C $(@D) all
> +endef
> +
> +define SCHEDTOOL_INSTALL_TARGET_CMDS
> +	$(INSTALL) -D -m 0755 $(@D)/schedtool $(TARGET_DIR)/usr/bin
> +endef
> +
> +$(eval $(generic-package))
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-07-10 22:08 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2015-05-29  8:46 [Buildroot] [PATCH v2] package/schedtool: new package Angelo Compagnucci
2015-07-10 22:08 ` Romain Naour

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox