Kompilace jadra 2.4.0.test3

Petr Soucek petr na ryston.cz
Úterý Červenec 11 10:57:53 CEST 2000


Martin Douda wrote:
> 
> test3 je povedene jadro :-), pred chvilkou byl patch v linux-kernel. Ten
> mail jsem si bohuzel smazal, jinak bych to sem poslal.

Tech patchu je tam vic, namatkou:

--- kernel/timer.c~     Tue Jul 11 01:57:31 2000
+++ kernel/timer.c      Tue Jul 11 02:50:46 2000
@@ -577,7 +577,7 @@
                        p->counter = 0;
                        p->need_resched = 1;
                }
-               if (p->priority < DEF_PRIORITY)
+               if (p->nice < 0)
                        kstat.cpu_nice += user_tick;
                else
                        kstat.cpu_user += user_tick;


Nebo

--- linux-2.4.0-test3/./drivers/block/md.c	Fri Jul  7 15:53:58 2000
+++ linux/./drivers/block/md.c	Mon Jul 10 22:21:26 2000
@@ -2908,7 +2908,7 @@
 	 * many dirty RAID5 blocks.
 	 */
 	current->policy = SCHED_OTHER;
-	current->priority = 40;
+	current->nice = -20;
 //	md_unlock_kernel();
 
 	up(thread->sem);
@@ -3336,7 +3336,7 @@
 	/*
 	 * Resync has low priority.
 	 */
-	current->priority = 1;
+	current->nice = 18;
 
 	is_mddev_idle(mddev); /* this also initializes IO event counters */
 	for (m = 0; m < SYNC_MARKS; m++) {
@@ -3412,7 +3412,7 @@
 		currspeed = (j-mddev->resync_mark_cnt)/((jiffies-mddev->resync_mark)/HZ +1) +1;
 
 		if (currspeed > sysctl_speed_limit_min) {
-			current->priority = 1;
+			current->nice = 18;
 
 			if ((currspeed > sysctl_speed_limit_max) ||
 					!is_mddev_idle(mddev)) {
@@ -3422,7 +3422,7 @@
 					goto repeat;
 			}
 		} else
-			current->priority = 40;
+			current->nice = -20;
 	}
 	fsync_dev(read_disk);
 	printk(KERN_INFO "md: md%d: sync done.\n",mdidx(mddev));
--- linux-2.4.0-test3/./drivers/macintosh/via-pmu.c	Tue Jun 20 14:14:50 2000
+++ linux/./drivers/macintosh/via-pmu.c	Mon Jul 10 22:21:28 2000
@@ -1036,7 +1036,7 @@
 	for (list = sleep_notifiers.next; list != &sleep_notifiers;
 	     list = list->next) {
 		current = list_entry(list, struct pmu_sleep_notifier, list);
-		if (n->priority > current->priority)
+		if (n->nice < current->nice)
 			break;
 	}
 	__list_add(&n->list, list->prev, list);
--- linux-2.4.0-test3/./arch/sparc/kernel/process.c	Mon Jul 10 13:16:56 2000
+++ linux/./arch/sparc/kernel/process.c	Mon Jul 10 22:21:22 2000
@@ -109,7 +109,7 @@
 int cpu_idle(void)
 {
 	/* endless idle loop with no priority at all */
-	current->priority = 0;
+	current->nice = 19;
 	current->counter = -100;
 	init_idle();
 
--- linux-2.4.0-test3/./arch/mips/kernel/irixelf.c	Sun Jul  9 22:18:15 2000
+++ linux/./arch/mips/kernel/irixelf.c	Mon Jul 10 22:21:18 2000
@@ -1156,7 +1156,7 @@
 	psinfo.pr_state = i;
 	psinfo.pr_sname = (i < 0 || i > 5) ? '.' : "RSDZTD"[i];
 	psinfo.pr_zomb = psinfo.pr_sname == 'Z';
-	psinfo.pr_nice = current->priority-15;
+	psinfo.pr_nice = -current->nice;
 	psinfo.pr_flag = current->flags;
 	psinfo.pr_uid = current->uid;
 	psinfo.pr_gid = current->gid;
--- linux-2.4.0-test3/./arch/ppc/kernel/idle.c	Mon Apr 24 13:39:36 2000
+++ linux/./arch/ppc/kernel/idle.c	Mon Jul 10 22:21:20 2000
@@ -48,7 +48,7 @@
 int idled(void)
 {
 	/* endless loop with no priority at all */
-	current->priority = 0;
+	current->nice = 19;
 	current->counter = -100;
 	init_idle();	
 	for (;;)
--- linux-2.4.0-test3/./arch/sparc64/kernel/process.c	Mon Jul 10 13:16:56 2000
+++ linux/./arch/sparc64/kernel/process.c	Mon Jul 10 22:21:24 2000
@@ -80,7 +80,7 @@
 #define unidle_me()		(cpu_data[current->processor].idle_volume = 0)
 int cpu_idle(void)
 {
-	current->priority = 0;
+	current->nice = 19;
 	current->counter = -100;
 	init_idle();
 
Nebo

diff -urN -X /tmp/fileZ910DB --minimal linux-2.4.0-test3-7/drivers/video/fbcon.c working-2.4.0-test3-7/drivers/video/fbcon.c
--- linux-2.4.0-test3-7/drivers/video/fbcon.c	Thu Jun 29 01:26:01 2000
+++ working-2.4.0-test3-7/drivers/video/fbcon.c	Mon Jul 10 16:53:38 2000
@@ -2039,11 +2039,9 @@
 {
     struct display *p = &fb_display[fg_console]; /* draw to vt in foreground */
     int depth = p->var.bits_per_pixel;
-    int line = p->next_line;
     unsigned char *fb = p->screen_base;
     unsigned char *logo;
-    unsigned char *dst, *src;
-    int i, j, n, x1, y1, x;
+    int i, j, n, x;
     int logo_depth, done = 0;
 
     /* Return if the frame buffer is not mapped */
@@ -2114,7 +2112,10 @@
 	    unsigned int val;		/* max. depth 32! */
 	    int bdepth;
 	    int redshift, greenshift, blueshift;
-		
+	    unsigned char *dst, *src;
+	    int line = p->next_line;
+	    int x1, y1;
+
 	    /* Bug: Doesn't obey msb_right ... (who needs that?) */
 	    redshift   = p->var.red.offset;
 	    greenshift = p->var.green.offset;
@@ -2188,7 +2189,10 @@
 	    unsigned char mask[9] = { 0,0x80,0xc0,0xe0,0xf0,0xf8,0xfc,0xfe,0xff };
 	    unsigned char redmask, greenmask, bluemask;
 	    int redshift, greenshift, blueshift;
-		
+	    unsigned char *dst, *src;
+	    int line = p->next_line;
+	    int x1, y1;
+
 	    /* Bug: Doesn't obey msb_right ... (who needs that?) */
 	    redmask   = mask[p->var.red.length   < 8 ? p->var.red.length   : 8];
 	    greenmask = mask[p->var.green.length < 8 ? p->var.green.length : 8];
@@ -2223,6 +2227,10 @@
 #endif
 #if defined(CONFIG_FBCON_CFB4)
 	if (depth == 4 && p->type == FB_TYPE_PACKED_PIXELS) {
+		unsigned char *dst, *src;
+		int line = p->next_line;
+		int x1, y1;
+
 		src = logo;
 		for( y1 = 0; y1 < LOGO_H; y1++) {
 			dst = fb + y1*line + x/2;
@@ -2238,6 +2246,9 @@
 #if defined(CONFIG_FBCON_CFB8) || defined(CONFIG_FB_SBUS)
 	if (depth == 8 && p->type == FB_TYPE_PACKED_PIXELS) {
 	    /* depth 8 or more, packed, with color registers */
+	    unsigned char *dst, *src;
+	    int line = p->next_line;
+	    int x1, y1;
 		
 	    src = logo;
 	    for( y1 = 0; y1 < LOGO_H; y1++ ) {
@@ -2257,10 +2268,13 @@
 	    int bit;
 	    unsigned char val, mask;
 	    int plane = p->next_plane;
+	    unsigned char *dst, *src;
+	    int line = p->next_line;
 
 #if defined(CONFIG_FBCON_IPLAN2P2) || defined(CONFIG_FBCON_IPLAN2P4) || \
     defined(CONFIG_FBCON_IPLAN2P8)
 	    int line_length = p->line_length;
+	    int x1, y1;
 
 	    /* for support of Atari interleaved planes */
 #define MAP_X(x)	(line_length ? (x) : ((x) & ~1)*depth + ((x) & 1))
@@ -2312,6 +2326,9 @@
 			   p->type == FB_TYPE_INTERLEAVED_PLANES)) {
 
 	    /* monochrome */
+	    unsigned char *dst, *src;
+	    int line = p->next_line;
+	    int x1, y1;
 	    unsigned char inverse = p->inverse || p->visual == FB_VISUAL_MONO01
 		? 0x00 : 0xff;
 
@@ -2331,6 +2348,10 @@
 #endif
 #if defined(CONFIG_FBCON_VGA_PLANES)
 	if (depth == 4 && p->type == FB_TYPE_VGA_PLANES) {
+		unsigned char *dst, *src;
+		int line = p->next_line;
+		int x1, y1;
+
 		outb_p(1,0x3ce); outb_p(0xf,0x3cf);
 		outb_p(3,0x3ce); outb_p(0,0x3cf);
 		outb_p(5,0x3ce); outb_p(0,0x3cf);

A jeste spousta dalsich, nema cenu je sem vsechny posilat...

Petr Soucek


Další informace o konferenci Linux