← Commit list

12d941927

Rob Landley
Rob Landley
2006-06-30
SOURCE BUG Duration: 35s

Subject

Revert taskset for 1.2.0. It emits a warning, breaks building under RH9, and nobody seemed interested in fixing it despite repeated complaints. I'll worry about it in the 1.3 timeframe...

SOURCE BUG

This commit was genuinely broken at the time (not related to our build system): scripts/config/mkconfigs.c (2005-08-01 - 2006-10-05 arasi) uretilen bbconfigopts.h icine .config satirlarini kacissiz, ham newline'larla gömüyordu - gecerli C degildi, busybox'un kendi bb_mkdep araci bile parse edemiyordu (7d219aab7 ile duzeltildi, mkconfigs shell scripte cevrildi)

→ Bu hatanin tam hikayesini ve duzeltme diffini gor

Binary

No binary (build failed)

Architecture & Compiler Flags

Architecture: x86_64-linux-gnu Compiler: gcc (Ubuntu 11.4.0-1ubuntu1~22.04.3) 11.4.0

—

Build Log

(log yok)

Commit Diff GitHub →

include/applets.h+0 -1
@@ -262,7 +262,6 @@ USE_BB_SYSCTL(APPLET(sysctl, _BB_DIR_SBIN, _BB_SUID_NEVER))
USE_SYSLOGD(APPLET(syslogd, _BB_DIR_SBIN, _BB_SUID_NEVER))
USE_TAIL(APPLET(tail, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
USE_TAR(APPLET(tar, _BB_DIR_BIN, _BB_SUID_NEVER))
-USE_TASKSET(APPLET(taskset, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
USE_TEE(APPLET(tee, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
USE_TELNET(APPLET(telnet, _BB_DIR_USR_BIN, _BB_SUID_NEVER))
USE_TELNETD(APPLET(telnetd, _BB_DIR_USR_SBIN, _BB_SUID_NEVER))
include/usage.h+0 -17
@@ -2967,23 +2967,6 @@ USE_FEATURE_START_STOP_DAEMON_FANCY( \
"$ zcat /tmp/tarball.tar.gz | tar -xf -\n" \
"$ tar -cf /tmp/tarball.tar /usr/local\n"
-#define taskset_trivial_usage \
- "[OPTIONS] [mask] [pid | command [arg]...]"
-#define taskset_full_usage \
- "Set or get CPU affinity.\n\n" \
- "Options:\n" \
- "\t-p\toperate on an existing PID"
-#define taskset_example_usage \
- "$ taskset 0x7 ./dgemm_test&\n" \
- "$ taskset -p 0x1 $!\n" \
- "pid 4790's current affinity mask: 7\n" \
- "pid 4790's new affinity mask: 1\n" \
- "$ taskset 0x7 /bin/sh -c './taskset -p 0x1 $$'\n" \
- "pid 6671's current affinity mask: 1\n" \
- "pid 6671's new affinity mask: 1\n" \
- "$ taskset -p 1\n"
- "pid 1's current affinity mask: 3\n"
-
#define tee_trivial_usage \
"[OPTION]... [FILE]..."
#define tee_full_usage \
miscutils/Config.in+6 -0
@@ -311,6 +311,12 @@ config CONFIG_TASKSET
help
Retrieve or set a processes's CPU affinity
+config CONFIG_TASKSET
+ bool "taskset"
+ default n
+ help
+ Retrieve or set a processes's CPU affinity (on linux)
+
config CONFIG_TIME
bool "time"
default n
miscutils/Makefile.in+0 -1
@@ -28,7 +28,6 @@ MISCUTILS-$(CONFIG_RUNLEVEL) += runlevel.o
MISCUTILS-$(CONFIG_RX) += rx.o
MISCUTILS-$(CONFIG_SETSID) += setsid.o
MISCUTILS-$(CONFIG_STRINGS) += strings.o
-MISCUTILS-$(CONFIG_TASKSET) += taskset.o
MISCUTILS-$(CONFIG_TIME) += time.o
MISCUTILS-$(CONFIG_WATCHDOG) += watchdog.o
miscutils/taskset.c+0 -67
@@ -1,67 +0,0 @@
-/* vi: set sw=4 ts=4: */
-/*
- * taskset - retrieve or set a processes's CPU affinity
- * Copyright (c) 2006 Bernhard Fischer
- *
- * Licensed under GPLv2 or later, see file LICENSE in this tarball for details.
- */
-
-#include "busybox.h"
-#include <sched.h>
-#include <unistd.h>
-#include <getopt.h> /* optind */
-
-int taskset_main(int argc, char** argv)
-{
- cpu_set_t mask, new_mask;
- pid_t pid = 0;
- unsigned long ul;
- const char *state = "current\0new";
- char *p_opt = NULL, *aff = NULL;
-
- ul = bb_getopt_ulflags(argc, argv, "+p:", &p_opt);
-#define TASKSET_OPT_p (1)
-
- if (ul & TASKSET_OPT_p) {
- if (argc == optind+1) { /* -p <aff> <pid> */
- aff = p_opt;
- p_opt = argv[optind];
- }
- argv += optind; /* me -p <arg> */
- pid = bb_xgetularg10_bnd(p_opt, 1, ULONG_MAX); /* -p <pid> */
- } else
- aff = *++argv; /* <aff> <cmd...> */
- if (aff) {
-/* to_cpuset(bb_xgetularg_bnd(aff, 16, 1, ULONG_MAX), &new_mask); */
- unsigned i = 0;
- unsigned long l = bb_xgetularg_bnd(aff, 16, 1, ULONG_MAX);
-
- CPU_ZERO(&new_mask);
- while (i < CPU_SETSIZE && l >= (1<<i)) {
- if ((1<<i) & l)
- CPU_SET(i, &new_mask);
- ++i;
- }
- }
-
- if (ul & TASKSET_OPT_p) {
-print_aff:
- if (sched_getaffinity(pid, sizeof (mask), &mask) < 0)
- bb_perror_msg_and_die("Failed to %cet pid %d's affinity", 'g', pid);
- bb_printf("pid %d's %s affinity mask: %x\n", /* %x .. perhaps _FANCY */
- pid, state, mask);
- if (!*argv) /* no new affinity given or we did print already, done. */
- return EXIT_SUCCESS;
- }
-
- if (sched_setaffinity(pid, sizeof (new_mask), &new_mask))
- bb_perror_msg_and_die("Failed to %cet pid %d's affinity", 's', pid);
- if (ul & TASKSET_OPT_p) {
- state += 8;
- ++argv;
- goto print_aff;
- }
- ++argv;
- execvp(*argv, argv);
- bb_perror_msg_and_die("%s", *argv);
-}
testsuite/taskset.tests+0 -17
@@ -1,17 +0,0 @@
-#!/bin/sh
-
-# Copyright 2006 Bernhard Fischer
-# Licensed under GPL v2 or later, see file LICENSE for details.
-
-. testing.sh
-a="taskset"
-
-# testing "test name" "opts" "expected result" "file inp" "stdin"
-testing "taskset (get from pid 1)" "$a -p1 >/dev/null;echo \$?" "0\n" "" ""
-testing "taskset (invalid pid)" "$a -p0 >/dev/null 2>&1;echo \$?" "1\n" "" ""
-testing "taskset (set_aff, needs CAP_SYS_NICE)" \
- "$a 0x1 $SHELL -c $a\ -p\ \$$\|grep\ \"current\ affinity\ mask:\ 1\" >/dev/null;echo \$?" \
- "0\n" "" ""
-
-unset a
-exit $FAILCOUNT