From deca106b6dad70ad0a1312a82d762aa8d8ad52ba Mon Sep 17 00:00:00 2001 From: Eric Andersen Date: Thu, 5 Dec 2002 07:24:08 +0000 Subject: Kill CONFIG_FEATURE_USE_DEVPS_PATCH and the devps patch. I'm not maintaining it anymore, and it is now terribly out of date. -Erik --- procps/ps.c | 104 ------------------------------------------------------------ 1 file changed, 104 deletions(-) (limited to 'procps') diff --git a/procps/ps.c b/procps/ps.c index cf2f2b0c4..5ccac7a95 100644 --- a/procps/ps.c +++ b/procps/ps.c @@ -20,12 +20,6 @@ * Place, Suite 330, Boston, MA 02111-1307 USA */ -/* - * This contains _two_ implementations of ps for Linux. One uses the - * traditional /proc virtual filesystem, and the other use the devps kernel - * driver (written by Erik Andersen to avoid using /proc thereby saving 100k+). - */ - #include #include #include @@ -42,8 +36,6 @@ static const int TERMINAL_WIDTH = 79; /* not 80 in case terminal has linefo -#if ! defined CONFIG_FEATURE_USE_DEVPS_PATCH - extern int ps_main(int argc, char **argv) { procps_status_t * p; @@ -91,99 +83,3 @@ extern int ps_main(int argc, char **argv) return EXIT_SUCCESS; } - -#else /* CONFIG_FEATURE_USE_DEVPS_PATCH */ - - -/* The following is the second ps implementation -- - * this one uses the nifty new devps kernel device. - */ - -#include /* For Erik's nifty devps device driver */ - - -extern int ps_main(int argc, char **argv) -{ - char device[] = "/dev/ps"; - int i, j, len, fd; - pid_t num_pids; - pid_t* pid_array = NULL; - struct pid_info info; - char uidName[9]; -#ifdef CONFIG_FEATURE_AUTOWIDTH - struct winsize win = { 0, 0, 0, 0 }; - int terminal_width = TERMINAL_WIDTH; -#else -#define terminal_width TERMINAL_WIDTH -#endif - - if (argc > 1 && **(argv + 1) == '-') - show_usage(); - - /* open device */ - fd = open(device, O_RDONLY); - if (fd < 0) - perror_msg_and_die( "open failed for `%s'", device); - - /* Find out how many processes there are */ - if (ioctl (fd, DEVPS_GET_NUM_PIDS, &num_pids)<0) - perror_msg_and_die( "\nDEVPS_GET_PID_LIST"); - - /* Allocate some memory -- grab a few extras just in case - * some new processes start up while we wait. The kernel will - * just ignore any extras if we give it too many, and will trunc. - * the list if we give it too few. */ - pid_array = (pid_t*) xcalloc( num_pids+10, sizeof(pid_t)); - pid_array[0] = num_pids+10; - - /* Now grab the pid list */ - if (ioctl (fd, DEVPS_GET_PID_LIST, pid_array)<0) - perror_msg_and_die("\nDEVPS_GET_PID_LIST"); - -#ifdef CONFIG_FEATURE_AUTOWIDTH - ioctl(fileno(stdout), TIOCGWINSZ, &win); - if (win.ws_col > 0) - terminal_width = win.ws_col - 1; -#endif - - /* Print up a ps listing */ - printf(" PID Uid Stat Command\n"); - - for (i=1; i 1) { - for( j=0; j<(sizeof(info.command_line)-1) && j < (terminal_width-len); j++) { - if (*(info.command_line+j) == '\0' && *(info.command_line+j+1) != '\0') { - *(info.command_line+j) = ' '; - } - } - *(info.command_line+j) = '\0'; - puts(info.command_line); - } else { - printf("[%s]\n", info.name); - } - } - - /* Free memory */ - free( pid_array); - - /* close device */ - if (close (fd) != 0) - perror_msg_and_die("close failed for `%s'", device); - - exit (0); -} - -#endif /* CONFIG_FEATURE_USE_DEVPS_PATCH */ - -- cgit v1.2.3