[kbuild-devel] Re: kbuild 2.5 problems with netfilter linking

2002-04-09 Thread Rusty Russell

On Sat, 06 Apr 2002 14:48:02 +1000
Keith Owens [EMAIL PROTECTED] wrote:

 AKA - Rusty shoots himself in the foot :)
 
 kbuild 2.5 defines
 
  -DKBUILD_OBJECT=module, the name of the module the object is linked
 into, without the trailing '.o' and without any paths.  If the
 object is a free standing module or is linked into vmlinux then the
 module name is the object itself.  Automatically generated.
 
 This variable is aimed at standardizing boot and module parameters, so
 'insmod foo option=value' and booting with 'foo.option=value' will have
 exactly the same effect.  Rusty already has code to do this and is
 waiting for kbuild 2.5 to go in.
 
 Alas netfilter has objects that are linked into multiple modules,
 $(ip_nf_compat-objs) is linked into both ipfwadm and ipchains so
 KBUILD_OBJECT is ambiguous.  Two possible solutions -
 
 * Change netfilter so the objects are not linked twice.  That will
   require $(ip_nf_compat-objs) to be a module in its own right with
   extra exported symbols.

I considered this very carefully when I wrote the code, but the interface
exposed by it is quite ugly: it really is an internal interface between
the two.

 * Change kbuild 2.5 to detect multi linked objects and not set
   KBUILD_OBJECT for those objects.  It follows that multi linked
   objects cannot have module or boot parameters, so change modules.h to
   barf on MODULE_PARM() and __setup() when KBUILD_OBJECT is not
   defined.
 
 I am tending towards the second solution.

You missed #include foo.c as a possible workaround.  Note that it's
a waste of disk space, not memory, since these cannot be loaded at the
same time.

Rusty.
-- 
   there are those who do and those who hang on and you don't see too
   many doers quoting their contemporaries.  -- Larry McVoy

___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel



[kbuild-devel] Re: Announce: Kernel Build for 2.5, Release 2.0 is available

2002-04-09 Thread Keith Owens

New core, common and ia64 code for kbuild 2.5 is available in
http://sourceforge.net/project/showfiles.php?group_id=18813release_id=83065

Changes from core-2 to core-3.

  Ensure that database records are aligned.  Do not assume that keys
  are aligned (all the world is not a 386).

Changes from common-2.4.18-1 to common-2.4.18-2.

  Minor changes to common code to suit ia64.

New, ia64-020226-2.4.18-1.

core-3 works on ia64, it should work on other architectures that have
alignment requirements such as sparc.

Other architecture maintainers can use core-3 and common-2.4.18-2 as a
starting point for porting this release of kbuild 2.5 to their
architecture.  The existing arch patches from Release 1.12 are a good
starting point, ia64 was almost unchanged from Release 1.12 to 2.0.

I have not tested any of the kbuild 2.5 code on big endian machines.
It should work as is but it would be nice to have it confirmed.


___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel



Re: [kbuild-devel] kbuild PowerPC port

2002-04-09 Thread Tom Rini

On Tue, Apr 09, 2002 at 01:21:03PM +1000, Keith Owens wrote:
 On Tue, 09 Apr 2002 12:43:07 +1000, 
 Brendan J Simon [EMAIL PROTECTED] wrote:
 Anyone working on the PowerPC ports for Kbuild-2.5 release 2 ??
 
 I will be asking the arch maintainers to do kbuild 2.5 patches for
 their architecture, after I have done ia64 to make sure there are no
 arch dependent funnies luring about.  In most cases, the arch dependent
 patches from release 1.12 should work just as well, I rewrote the core
 logic but barely changed the makefiles.

It's on my to-do list, but probably only for 2.5 kernels.  And it'll be
a quick BE test of the v2.0 stuffs :)

-- 
Tom Rini (TR1265)
http://gate.crashing.org/~trini/

___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel



Re: [kbuild-devel] 2048 max variables in xconfig?

2002-04-09 Thread Tom Rini

On Sun, Jan 20, 2002 at 10:22:42AM +1100, Keith Owens wrote:

 On Sat, 19 Jan 2002 12:39:16 -0700, 
 Tom Rini [EMAIL PROTECTED] wrote:
 Hey all.  I've just run into a situation where xconfig won't run because
 there's  2048 variables for it to deal with.  If I'm reading the source
 right, I should just be able to bump VARTABLE_SIZE in scripts/tkparse.c
 and everything should just work (and from my quick testing, it does).
 But I figured I'd check with more knowledgeable people, so is this
 right?  Thanks.
 
 No good reason to make vartable a fixed size.  This makes it dynamic
 and removes the limit problem.  Added to my kbuild-2.5 tree, along with
 Bernd Petrovitsch's patch for mouse wheel.

Okay. Some bad news is that this breaks running xconfig on a Solaris
host.  I'm trying to get gdb on the system so I can try and debug it.
Any ideas tho?

-- 
Tom Rini (TR1265)
http://gate.crashing.org/~trini/

___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel



[kbuild-devel] aic7xxx build issue

2002-04-09 Thread Thomas Duffy

OK, gonna try to post to the list using this email now, since it appears
sourceforge is being a bitch about my brown email :(

Anyways...I am seeing an issue in one of your favorite areas, Keith.  It
seems that aic7xxx now won't build if you do *not* have
AIC7XXX_BUILD_FIRMWARE config'ed on and you are using separate SRC and
BUILD trees.  It gives this error:

Starting phase 5 (build) for installable
make[1]: *** No rule to make target
`/tmp/tduffy/drivers/scsi/aic7xxx/aic7xxx_reg.h', needed by
`drivers/scsi/aic7xxx/aic7xxx_reg.h'.  Stop.

this is the relevent part of the Makefile.in (that used to work AFIAK)

ifsel(CONFIG_AIC7XXX_BUILD_FIRMWARE)
  user_command(aic7xxx_seq.h
($(srcfile aic7xxx.seq) $(srcfile aic7xxx.reg) $(objfile aicasm/aicasm))   
 ($(objfile aicasm/aicasm) $(src_includelist .) -r $(objfile aic7xxx_reg.h) -o 
$(objfile aic7xxx_seq.h) $(srcfile aic7xxx.seq))
()
)
  side_effect(aic7xxx_reg.h aic7xxx_seq.h)
else
  ifneq ($(KBUILD_SRCTREE_000),$(KBUILD_OBJTREE))
user_command(aic7xxx_seq.h
($(srcfile aic7xxx_seq.h))
(cp -a $ $@)
()
)
user_command(aic7xxx_reg.h
($(srcfile aic7xxx_reg.h))
(cp -a $ $@)
()
)
  endif
endif

does kbuild not see the user_command's now cause they are ifneq'ed?

-tduffy


___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel



[kbuild-devel] Re: Announce: Kernel Build for 2.5, Release 2.0 is available

2002-04-09 Thread Keith Owens

On 09 Apr 2002 12:00:55 -0700, 
Thomas Duffy [EMAIL PROTECTED] wrote:
Ok, with core-3, now kbuild 2.5 v2.0 works on sparc64.  There was one
typo in one sparc64 Makefile.in from 1.12.  Attached is the patch to fix
this.

Also attached is the full kbuild 2.0 patch for sparc64 2.4.18 tree.

Thanks Tom.  Uploaded as
http://prdownloads.sourceforge.net/kbuild/kbuild-2.5-sparc64-2.4.18-1.bz2

I will get 2.5.8-pre2 working and upload that then wait for a couple of
days to see if any other arch maintainers have kbuild 2.5 patches.
Then it will be time for Release 2.1 which will be a candidate to go to
Linus.


___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel



Re: [kbuild-devel] aic7xxx build issue

2002-04-09 Thread Thomas Duffy

On Tue, 2002-04-09 at 16:09, Keith Owens wrote:

 Temporary workaround, while I think about the real fix.

hrm...still not working...time to shoot the aic7xxx maintainer :)

snip

  CC drivers/scsi/aic7xxx/aic7xxx_core.o
pp_makefile5: stat (drivers/scsi/aic7xxx/aic7xxx_seq.h) failed: No such file or 
directory
pp_makefile5: open(/tmp/tduffy/drivers/scsi/aic7xxx/aic7xxx_seq.h) failed: No such 
file or directory
pp_makefile5: dependencies (pid 2702) did not exit normally due to signal 11
make[1]: *** [drivers/scsi/aic7xxx/aic7xxx_core.o] Error 1

-tduffy


___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel



Re: [kbuild-devel] aic7xxx build issue

2002-04-09 Thread Keith Owens

On 09 Apr 2002 18:16:34 -0700, 
Thomas Duffy [EMAIL PROTECTED] wrote:
On Tue, 2002-04-09 at 16:09, Keith Owens wrote:

 Temporary workaround, while I think about the real fix.

hrm...still not working...time to shoot the aic7xxx maintainer :)

snip

  CC drivers/scsi/aic7xxx/aic7xxx_core.o
pp_makefile5: stat (drivers/scsi/aic7xxx/aic7xxx_seq.h) failed: No such file or 
directory
pp_makefile5: open(/tmp/tduffy/drivers/scsi/aic7xxx/aic7xxx_seq.h) failed: No such 
file or directory
pp_makefile5: dependencies (pid 2702) did not exit normally due to signal 11
make[1]: *** [drivers/scsi/aic7xxx/aic7xxx_core.o] Error 1

It works for me.  It looks like the USER command to copy the .h files
from source to object has failed.  There might be some crud lying
around that is confusing the timestamps.

$ grep AIC7XXX .config
CONFIG_SCSI_AIC7XXX=y
CONFIG_AIC7XXX_CMDS_PER_DEVICE=253
CONFIG_AIC7XXX_RESET_DELAY_MS=15000
# CONFIG_AIC7XXX_BUILD_FIRMWARE is not set

$ env | grep KB
KBUILD_OBJTREE=/build/kaos/object-2.4.18
KBUILD_SRCTREE_000=/build/kaos/2.4.18-kbuild-2.5

$ rm -rf $KBUILD_OBJTREE/drivers/scsi/aic7xxx
$ make -f $KBUILD_SRCTREE_000/Makefile-2.5 drivers/scsi/aic7xxx
Using ARCH='i386' AS='as' LD='ld' CC='/usr/bin/kgcc' CPP='/usr/bin/kgcc -E' AR='ar' 
HOSTAS='as' HOSTLD='gcc' HOSTCC='gcc' HOSTAR='ar'
Generating global Makefile
  phase 1 (find all inputs)
  phase 2 (convert all Makefile.in files)
  phase 3 (evaluate selections)
  phase 4 (write global makefile)
Starting phase 5 (build) for drivers/scsi/aic7xxx
  USER drivers/scsi/aic7xxx/aic7xxx_reg.h
  USER drivers/scsi/aic7xxx/aic7xxx_seq.h
  CC drivers/scsi/aic7xxx/aic7xxx_linux.o
  CC drivers/scsi/aic7xxx/aic7xxx_proc.o
  CC drivers/scsi/aic7xxx/aic7770_linux.o
  CC drivers/scsi/aic7xxx/aic7xxx_core.o
  CC drivers/scsi/aic7xxx/aic7xxx_93cx6.o
  CC drivers/scsi/aic7xxx/aic7770.o
  LD drivers/scsi/aic7xxx/aic7xxx.o
Phase 5 complete for drivers/scsi/aic7xxx

$ ls -l $KBUILD_OBJTREE/drivers/scsi/aic7xxx
-rw-r--r--1 kaos ocs  2080 Apr 10 11:56 aic7770_linux.o
-rw-r--r--1 kaos ocs  3644 Apr 10 11:56 aic7770.o
-rw-r--r--1 kaos ocs  3108 Apr 10 11:56 aic7xxx_93cx6.o
-rw-r--r--1 kaos ocs 76384 Apr 10 11:56 aic7xxx_core.o
-rw-r--r--1 kaos ocs 26124 Apr 10 11:56 aic7xxx_linux.o
-rw-r--r--1 kaos ocs108754 Apr 10 11:56 aic7xxx.o
-rw-r--r--1 kaos ocs  3412 Apr 10 11:56 aic7xxx_proc.o
-rw-r--r--1 kaos ocs 17532 Oct 26 15:50 aic7xxx_reg.h
-rw-r--r--1 kaos ocs 32921 Oct 26 15:50 aic7xxx_seq.h
drwxr-xr-x2 kaos ocs  4096 Apr 10 11:56 aicasm/


___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel



Re: [kbuild-devel] aic7xxx build issue

2002-04-09 Thread Thomas Duffy

On Tue, 2002-04-09 at 19:02, Keith Owens wrote:

 It works for me.  It looks like the USER command to copy the .h files
 from source to object has failed.  There might be some crud lying
 around that is confusing the timestamps.

It was still failing for me after deleting the aic7xxx obj directory,
running make mrproper, etc.  The USER command was not being run for
aic7xxx_seq.h, however it was running for aic7xxx_reg.h, so I figured it
was not getting the dependencies correct.  This patch made it work for
me.  (cause it really is aic7xxx_core.o that is depends on
aic7xxx_seq.h)

Now, the USER for aic7xxx_seq.h gets run right before aic7xxx_core.o is
CC'ed.

Did you change your Makefile.in from the one in common-2?

-tduffy


--- linux-2.4.18+kbuild-v2.0/drivers/scsi/aic7xxx/Makefile.in.orig  Tue Apr  9 
11:27:30 2002
+++ linux-2.4.18+kbuild-v2.0/drivers/scsi/aic7xxx/Makefile.in   Tue Apr  9 19:40:26 
+2002
 -29,7 +29,7 
 
 # Only aic7xxx.c includes aic7xxx_seq.h.
 
-$(objfile aic7xxx.o): $(objfile aic7xxx_seq.h)
+$(objfile aic7xxx_core.o): $(objfile aic7xxx_seq.h)
 
 # aic7xxx_reg.h is messy.  It is included by aic7xxx.h which is included by
 # aic7xxx_osm.h which is included by several .c files.  Play safe and make all



Re: [kbuild-devel] 2048 max variables in xconfig?

2002-04-09 Thread Keith Owens

On Tue, 9 Apr 2002 13:43:44 -0700, 
Tom Rini [EMAIL PROTECTED] wrote:
Okay. Some bad news is that this breaks running xconfig on a Solaris
host.  I'm trying to get gdb on the system so I can try and debug it.
Any ideas tho?

Fencepost error.  I have a fix, together with the removal of several
GNUisms, it will be in core-4.  Building on SunOS 5.8 sun4m
SPARCstation-10 is _slow_.


___
kbuild-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/kbuild-devel