From owner-freebsd-current@FreeBSD.ORG Fri Oct 27 06:20:42 2006 Return-Path: X-Original-To: current@freebsd.org Delivered-To: freebsd-current@FreeBSD.ORG Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id F0E1216A417 for ; Fri, 27 Oct 2006 06:20:42 +0000 (UTC) (envelope-from leafy7382@gmail.com) Received: from ug-out-1314.google.com (ug-out-1314.google.com [66.249.92.173]) by mx1.FreeBSD.org (Postfix) with ESMTP id A691843D58 for ; Fri, 27 Oct 2006 06:20:41 +0000 (GMT) (envelope-from leafy7382@gmail.com) Received: by ug-out-1314.google.com with SMTP id m2so534300uge for ; Thu, 26 Oct 2006 23:20:40 -0700 (PDT) DomainKey-Signature: a=rsa-sha1; q=dns; c=nofws; s=beta; d=gmail.com; h=received:message-id:date:from:to:subject:cc:in-reply-to:mime-version:content-type:content-transfer-encoding:content-disposition:references; b=ThPGYjbaMgYdcl4tBkxuGcbhZfIdOea9GxE0oJ45Sbj6HOdFgBBs4VH2i0h2aV0QtbxjiUZsumpaxr1gogXYyDGe28atv4VUmsrvJHqb/BwS43jLXHKoGhHUESoYQvcNxRuxK+nJlqzSv+rmoPYoMXT81wEvrbWdLuJViMA3TE0= Received: by 10.67.119.13 with SMTP id w13mr4412701ugm; Thu, 26 Oct 2006 23:20:40 -0700 (PDT) Received: by 10.66.254.4 with HTTP; Thu, 26 Oct 2006 23:20:40 -0700 (PDT) Message-ID: Date: Fri, 27 Oct 2006 14:20:40 +0800 From: "Jiawei Ye" To: "David Xu" In-Reply-To: <200610271006.38851.davidxu@freebsd.org> MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline References: <20061026213343.GA29160@what-creek.com> <200610270851.39444.davidxu@freebsd.org> <20061027005733.GA31389@what-creek.com> <200610271006.38851.davidxu@freebsd.org> Cc: John Birrell , current@freebsd.org Subject: Re: HEADSUP: KSE about to become a kernel option X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 27 Oct 2006 06:20:43 -0000 On 10/27/06, David Xu wrote: > I assume that without KSE, the scheduler's code size is reduced, this saves > I-CACHE and execution time. > > David Xu Is SCHED_CORE compatible with this change? I get cc -c -mtune=pentium4 -march=pentium2 -std=c99 -g -Wall -Wredundant-decls -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual -Wundef -fformat-extensions -nostdinc -I- -I. -I/usr/src/sys -I/usr/src/sys/contrib/altq -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common -finline-limit=8000 --param inline-unit-growth=100 --param large-function-growth=1000 -mno-align-long-strings -mpreferred-stack-boundary=2 -mno-mmx -mno-3dnow -mno-sse -mno-sse2 -mno-sse3 -ffreestanding -Werror /usr/src/sys/kern/sched_core.c /usr/src/sys/kern/sched_core.c:356: warning: "struct ksegrp" declared inside parameter list /usr/src/sys/kern/sched_core.c:356: warning: its scope is only this definition or declaration, which is probably not what you want /usr/src/sys/kern/sched_core.c:372: warning: "struct ksegrp" declared inside parameter list /usr/src/sys/kern/sched_core.c:374: warning: "struct ksegrp" declared inside parameter list /usr/src/sys/kern/sched_core.c:618: warning: "struct ksegrp" declared inside parameter list /usr/src/sys/kern/sched_core.c:619: error: conflicting types for 'sched_is_timeshare' /usr/src/sys/kern/sched_core.c:372: error: previous declaration of 'sched_is_timeshare' was here /usr/src/sys/kern/sched_core.c:619: error: conflicting types for 'sched_is_timeshare' /usr/src/sys/kern/sched_core.c:372: error: previous declaration of 'sched_is_timeshare' was here /usr/src/sys/kern/sched_core.c: In function `sched_is_timeshare': /usr/src/sys/kern/sched_core.c:620: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c: At top level: /usr/src/sys/kern/sched_core.c:624: warning: "struct ksegrp" declared inside parameter list /usr/src/sys/kern/sched_core.c:625: error: conflicting types for 'sched_calc_pri' /usr/src/sys/kern/sched_core.c:374: error: previous declaration of 'sched_calc_pri' was here /usr/src/sys/kern/sched_core.c:625: error: conflicting types for 'sched_calc_pri' /usr/src/sys/kern/sched_core.c:374: error: previous declaration of 'sched_calc_pri' was here /usr/src/sys/kern/sched_core.c: In function `sched_calc_pri': /usr/src/sys/kern/sched_core.c:629: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:630: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:630: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:637: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c: In function `sched_recalc_pri': /usr/src/sys/kern/sched_core.c:647: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:649: warning: passing arg 1 of `sched_is_timeshare' from incompatible pointer type /usr/src/sys/kern/sched_core.c:650: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:661: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:663: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:671: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:673: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:675: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:683: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:686: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:687: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:691: warning: passing arg 1 of `sched_calc_pri' from incompatible pointer type /usr/src/sys/kern/sched_core.c: In function `sched_update_runtime': /usr/src/sys/kern/sched_core.c:698: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:700: warning: passing arg 1 of `sched_is_timeshare' from incompatible pointer type /usr/src/sys/kern/sched_core.c:708: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:709: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c: In function `sched_commit_runtime': /usr/src/sys/kern/sched_core.c:717: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:719: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:719: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:720: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:722: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:722: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:723: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c: In function `schedinit': /usr/src/sys/kern/sched_core.c:815: error: `ksegrp0' undeclared (first use in this function) /usr/src/sys/kern/sched_core.c:815: error: (Each undeclared identifier is reported only once /usr/src/sys/kern/sched_core.c:815: error: for each function it appears in.) /usr/src/sys/kern/sched_core.c: In function `sched_unlend_prio': /usr/src/sys/kern/sched_core.c:911: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c: In function `sched_prio': /usr/src/sys/kern/sched_core.c:926: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c: At top level: /usr/src/sys/kern/sched_core.c:952: warning: "struct ksegrp" declared inside parameter list /usr/src/sys/kern/sched_core.c:953: error: conflicting types for 'sched_user_prio' /usr/src/sys/sys/sched.h:83: error: previous declaration of 'sched_user_prio' was here /usr/src/sys/kern/sched_core.c:953: error: conflicting types for 'sched_user_prio' /usr/src/sys/sys/sched.h:83: error: previous declaration of 'sched_user_prio' was here /usr/src/sys/kern/sched_core.c: In function `sched_user_prio': /usr/src/sys/kern/sched_core.c:957: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:961: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:963: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:967: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:970: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:971: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c: In function `sched_lend_user_prio': /usr/src/sys/kern/sched_core.c:984: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:985: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c: In function `sched_unlend_user_prio': /usr/src/sys/kern/sched_core.c:994: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:997: error: dereferencing pointer to incomplete type /usr/src/sys/kern/sched_core.c:1000: warning: passing arg 1 of `sched_user_prio' from incompatible pointer type /usr/src/sys/kern/sched_core.c: In function `sched_switch': /usr/src/sys/kern/sched_core.c:1017: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:1030: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:1039: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:1039: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:1046: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c:1057: error: structure has no member named `td_ksegrp' /usr/src/sys/kern/sched_core.c: In function `sched_nice': /usr/src/sys/kern/sched_core.c:1094: warning: implicit declaration of function `FOREACH_KSEGRP_IN_PROC' /usr/src/sys/kern/sched_core.c:1094: warning: nested extern declaration of `FOREACH_KSEGRP_IN_PROC' /usr/src/sys/kern/sched_core.c:1094: error: syntax error before '{' token /usr/src/sys/kern/sched_core.c:1097: warning: implicit declaration of function `FOREACH_THREAD_IN_GROUP' /usr/src/sys/kern/sched_core.c:1097: warning: nested extern declaration of `FOREACH_THREAD_IN_GROUP' /usr/src/sys/kern/sched_core.c:1098: error: syntax error before "td" /usr/src/sys/kern/sched_core.c: At top level: /usr/src/sys/kern/sched_core.c:356: warning: 'slot_fill' declared `static' but never defined /usr/src/sys/kern/sched_core.c:578: warning: 'kseq_choose' defined but not used /usr/src/sys/kern/sched_core.c:372: warning: 'sched_is_timeshare' declared `static' but never defined /usr/src/sys/kern/sched_core.c:373: warning: 'sched_choose' declared `static' but never defined /usr/src/sys/kern/sched_core.c:374: warning: 'sched_calc_pri' declared `static' but never defined /usr/src/sys/kern/sched_core.c:375: warning: 'sched_starving' declared `static' but never defined /usr/src/sys/kern/sched_core.c:837: warning: 'sched_pctcpu_update' defined but not used /usr/src/sys/kern/sched_core.c:642: warning: 'sched_recalc_pri' defined but not used /usr/src/sys/kern/sched_core.c:716: warning: 'sched_commit_runtime' defined but not used /usr/src/sys/kern/sched_core.c:433: warning: 'krunq_check' defined but not used *** Error code 1 Stop in /usr/obj/usr/src/sys/MAIL. *** Error code 1 Stop in /usr/src. *** Error code 1 Stop in /usr/src. Jiawei Ye -- "If it looks like a duck, walks like a duck, and quacks like a duck, then to the end user it's a duck, and end users have made it pretty clear they want a duck; whether the duck drinks hot chocolate or coffee is irrelevant."