svn commit: r206082 - in head: . share/man/man7 share/mk sys/conf

M. Warner Losh imp at bsdimp.com
Fri Apr 9 13:08:12 UTC 2010


In message: <20100409092721.19743kgds231hckg at webmail.leidinger.net>
            Alexander Leidinger <netchild at freebsd.org> writes:
: Quoting "M. Warner Losh" <imp at bsdimp.com> (from Thu, 08 Apr 2010
: 15:12:13 -0600 (MDT)):
: 
: > In message: <20100407100015.117169nw2iu6xp4w at webmail.leidinger.net>
: >             Alexander Leidinger <netchild at freebsd.org> writes:
: > : Quoting "M. Warner Losh" <imp at bsdimp.com> (from Tue, 06 Apr 2010
: > : 10:54:17 -0600 (MDT)):
: > :
: > : > In message:
: > <20100405181450.13494itjj2ehj5og at webmail.leidinger.net>
: > : >             Alexander Leidinger <netchild at FreeBSD.org> writes:
: > : > : Warner, do you mind if I back-out r206082 and change the place
: > where
: > : > : NORMAL_CTFCONVERT is used instead (fist I have to search for it
: > : > : again... not today)? It would make it consistent with all other
: > : > places
: > : > : (SYSTEM_CTFCONVERT and the plain test and use of CTFxxx).
: > : >
: > : > Go ahead.  I just did the fast and dirty fix.  I though it was
: > : > consistent with how other things were done, but if not, feel free
: > to
: > : > correct it.  Also, see bde's commentary :)
: > :
: > : I can not find it, can you please forward it to me?
: >
: > Will do.
: >
: > : Here is what I have ATM (copy&paste, so tabs are probably mangled):
: > : ---snip---
: > : Index: usr.sbin/config/mkmakefile.c
: > : ===================================================================
: > : --- usr.sbin/config/mkmakefile.c        (revision 206031)
: > : +++ usr.sbin/config/mkmakefile.c        (working copy)
: > : @@ -741,7 +741,7 @@
: > : printf("config: don't know rules for %s\n",
: > :                                 np); break;
: > :                         }
: > : -                       snprintf(cmd, sizeof(cmd), "${%s_%c%s}\n.if
: > : -                       defined(NORMAL_CTFCONVERT) &&
: > : - !empty(NORMAL_CTFCONVERT)\n\t${NORMAL_CTFCONVERT}\n.endif",
: > : -                       ftype,
: > : + snprintf(cmd, sizeof(cmd), "${%s_%c%s}\n\t@${NORMAL_CTFCONVERT}",
: > : ftype,
: > :                             toupper(och),
: > : ftp->f_flags & NOWERROR ? "_NOWERROR" : "");
: > :                         compilewith = cmd;
: >
: > Uggg, this should have never been put into mkmakefile.c in the first
: > place.  I'm concerned that a change like this will have bad effects
: > for people that have cross-threaded config and kernels. :(
: 
: You need to have a look at the complete code, there is more than only
: the use of NORMAL_CTFCONVERT. Regarding the cross-case, I think it can
: be done by overriding NORMAL_CTFCONVERT (if needed).

I have looked at the complete code.  config has no business knowing
about these things.  It is a layering violation.  It must be removed
from config.  However, since you didn't put it there, you should do
the next best thing and fix the bug in the current implementation.

: > However, go ahead and fix it.  I worry about people with
: > cross-threaded kernels, but that won't be a huge deal, I don't think.
: > Please monitor the lists to make sure...
: 
: Do I understand this right, that you think I shall do it before I get
: the forwarded mail?

I think you should commit this fix.  I'll forward you bde's mail and
you can work on another fix.  In the mean time (after you commit the
patch we're talking about right now), please monitor hackers@ and
current@ for any problems.

Warner


More information about the svn-src-all mailing list