From: Jeff D. <jd...@ka...> - 2002-07-17 20:15:16
|
After a long, relaxing period of ignoring 2.5, I decided that it was about to catch up. So, UML 2.5.26 is available. It is the same code as the current UML - 2.4.18-40. This went through my testing without major problems. However, it was a quick merge (I started on Thursday with 2.5.3-pre5 and finished on Monday with 2.5.25), so there may be lurking problems. Any problems should be reported to the uml-devel list (user-mode-linux-user at lists dot sourceforge dot net). At some point in the near future, I am going to split this up a bit and send it to Linus. The patch is available at http://uml-pub.ists.dartmouth.edu/uml/uml-patch-2.5.26-1.bz2 For the other UML mirrors and other downloads, see http://user-mode-linux.sourceforge.net/dl-sf.html Other links of interest: The UML project home page : http://user-mode-linux.sourceforge.net The UML Community site : http://usermodelinux.org Jeff |
From: Werner A. <wa...@al...> - 2002-07-18 11:13:04
|
Jeff Dike wrote: > After a long, relaxing period of ignoring 2.5, I decided that it was about > to catch up. So, UML 2.5.26 is available. It is the same code as the current > UML - 2.4.18-40. Yipee !! Unfortunately, this patch doesn't seem to work at all :-( I did tar xfj linux-2.5.26.tar.bz2 bzcat uml-patch-2.5.26-1.bz2 | patch -d linux-2.5.26 -p1 -s cd linux-2.5.26 make oldconfig ARCH=um make linux ARCH=um and was first greeted by tons of redefinition warnings (e.g. page_to_pfn of asm/arch/page.h redefined in asm/page.h), until the build eventually died with mconsole_kern.c:216: too many arguments to function `handle_sysrq' I didn't try to fix all the individual problems, as this looks like a more fundamental problem. The same build procedure worked perfectly with UML 0.58-2.4.18-36. I'm using gcc 3.1 with ccache 1.9. By the way, the uml-user and uml-devel archives at geocrawler seem to be broken :-( (uml-user has the latest posting 7/7, while uml-devel ends 7/8 with 13 copies of my umlsim-2 announcement.) - Werner -- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina wa...@al... / /_http://icapeople.epfl.ch/almesber/_____________________________________/ |
From: Jeff D. <jd...@ka...> - 2002-07-18 13:29:33
|
wa...@al... said: > and was first greeted by tons of redefinition warnings (e.g. > page_to_pfn of asm/arch/page.h redefined in asm/page.h), How about some of the first errors? I don't see anything resembling that here. > until the > build eventually died with mconsole_kern.c:216: too many arguments to > function `handle_sysrq' This cropped up at the last minute, I'm not sure why. I just decided to screw it and turn CONFIG_MAGIC_SYSRQ off. Jeff |
From: Werner A. <wa...@al...> - 2002-07-18 14:46:35
|
Jeff Dike wrote: > How about some of the first errors? I don't see anything resembling that > here. I've put two batches of them below. (The main.c output is with the trivial page.h things already removed. Patch at the end.) > This cropped up at the last minute, I'm not sure why. I just decided to screw > it and turn CONFIG_MAGIC_SYSRQ off. Ah okay, that was the one that convinced me that it wouldn't be worth trying ;-) With CONFIG_MAGIC_SYSRQ removed, UML builds, and seems to work despite all those warnings. BTW, you posted "[PATCH] UML - part 1 of 2" to linux-kernel, but I seems the second part never made it to the list. Is there a second part ? - Werner ---------------------------------- cut here ----------------------------------- make[1]: Entering directory `/home/k/umlsim/linux-2.5.26/arch/um/sys-i386/util' gcc -Wp,-MD,./.mk_thread_kern.o.d -D__KERNEL__ -I/home/k/umlsim/linux-2.5.26/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -g -U__i386__ -Ui386 -D__arch_um__ -DSUBARCH=\"i386\" -D_LARGEFILE64_SOURCE -I/home/k/umlsim/linux-2.5.26/arch/um/include -Derrno=kernel_errno -nostdinc -iwithprefix include -DKBUILD_BASENAME=mk_thread_kern -c -o mk_thread_kern.o mk_thread_kern.c In file included from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/page.h:44:1: warning: "pfn_to_page" redefined In file included from /home/k/umlsim/linux-2.5.26/include/asm/page.h:6, from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/arch/page.h:137:1: warning: this is the location of the previous definition In file included from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/page.h:45:1: warning: "page_to_pfn" redefined In file included from /home/k/umlsim/linux-2.5.26/include/asm/page.h:6, from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/arch/page.h:138:1: warning: this is the location of the previous definition In file included from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/page.h:50:1: warning: "pfn_valid" redefined In file included from /home/k/umlsim/linux-2.5.26/include/asm/page.h:6, from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/arch/page.h:141:1: warning: this is the location of the previous definition In file included from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/page.h:51:1: warning: "virt_addr_valid" redefined In file included from /home/k/umlsim/linux-2.5.26/include/asm/page.h:6, from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/arch/page.h:142:1: warning: this is the location of the previous definition In file included from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/linux/sched.h:369:1: warning: "get_task_struct" redefined In file included from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:22, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/capability.h:44, from /home/k/umlsim/linux-2.5.26/include/linux/sched.h:9, from mk_thread_kern.c:2: /home/k/umlsim/linux-2.5.26/include/asm/processor-generic.h:91:1: warning: this is the location of the previous definition gcc -Wp,-MD,./.main.o.d -D__KERNEL__ -I/home/k/umlsim/linux-2.5.26/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -g -U__i386__ -Ui386 -D__arch_um__ -DSUBARCH=\"i386\" -D_LARGEFILE64_SOURCE -I/home/k/umlsim/linux-2.5.26/arch/um/include -Derrno=kernel_errno -nostdinc -iwithprefix include -DKBUILD_BASENAME=main -c -o main.o main.c In file included from /home/k/umlsim/linux-2.5.26/include/asm/uaccess.h:10, from /home/k/umlsim/linux-2.5.26/include/asm/unistd.h:10, from /home/k/umlsim/linux-2.5.26/include/linux/unistd.h:9, from main.c:17: /home/k/umlsim/linux-2.5.26/include/linux/sched.h:369:1: warning: "get_task_struct" redefined In file included from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:22, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/mmzone.h:8, from /home/k/umlsim/linux-2.5.26/include/linux/gfp.h:4, from /home/k/umlsim/linux-2.5.26/include/linux/slab.h:14, from /home/k/umlsim/linux-2.5.26/include/linux/proc_fs.h:5, from main.c:15: /home/k/umlsim/linux-2.5.26/include/asm/processor-generic.h:92:1: warning: this is the location of the previous definition In file included from /home/k/umlsim/linux-2.5.26/include/linux/mm.h:27, from /home/k/umlsim/linux-2.5.26/include/linux/pagemap.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/blkdev.h:9, from /home/k/umlsim/linux-2.5.26/include/linux/blk.h:4, from main.c:25: /home/k/umlsim/linux-2.5.26/include/asm/pgtable.h:186:1: warning: "virt_to_page" redefined In file included from /home/k/umlsim/linux-2.5.26/include/asm/arch/user.h:4, from /home/k/umlsim/linux-2.5.26/include/asm/processor.h:20, from /home/k/umlsim/linux-2.5.26/include/asm/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/thread_info.h:11, from /home/k/umlsim/linux-2.5.26/include/linux/spinlock.h:7, from /home/k/umlsim/linux-2.5.26/include/linux/mmzone.h:8, from /home/k/umlsim/linux-2.5.26/include/linux/gfp.h:4, from /home/k/umlsim/linux-2.5.26/include/linux/slab.h:14, from /home/k/umlsim/linux-2.5.26/include/linux/proc_fs.h:5, from main.c:15: /home/k/umlsim/linux-2.5.26/include/asm/page.h:50:1: warning: this is the location of the previous definition ---------------------------------- cut here ----------------------------------- --- include/asm-um/page.h.orig Thu Jul 18 11:25:39 2002 +++ include/asm-um/page.h Thu Jul 18 11:33:51 2002 @@ -9,7 +9,11 @@ #undef PAGE_BUG #undef __pa #undef __va +#undef pfn_to_page +#undef page_to_pfn #undef virt_to_page +#undef pfn_valid +#undef virt_addr_valid #undef VALID_PAGE #undef PAGE_OFFSET #undef KERNELBASE -- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina wa...@al... / /_http://icapeople.epfl.ch/almesber/_____________________________________/ |
From: Jeff D. <jd...@ka...> - 2002-07-18 15:04:25
|
wa...@al... said: > With CONFIG_MAGIC_SYSRQ removed, UML builds, and seems to work despite > all those warnings. Hmmm, it's still pretty nasty. > BTW, you posted "[PATCH] UML - part 1 of 2" to linux-kernel, but I > seems the second part never made it to the list. Is there a second > part ? Those were the patch to Linus. They weren't meant for general consumption. I posted the generic piece to LKML in case anyone was interested in what UML does in generic code. The second part was ~800K and went only to Linus. It wouldn't have made it past the size filter of LKML. Jeff |
From: Werner A. <wa...@al...> - 2002-07-18 15:55:30
|
Jeff Dike wrote: > Hmmm, it's still pretty nasty. Do you get the warnings too ? > Those were the patch to Linus. They weren't meant for general consumption. > I posted the generic piece to LKML in case anyone was interested in what > UML does in generic code. The second part was ~800K and went only to Linus. > It wouldn't have made it past the size filter of LKML. Okay, I see. I just thought that this later posting may have contained some fixes that were missing in uml-patch-2.5.26-1.bz2 I've attached a patch that should solve the sysrq problem. Not sure if my unRaw fix is correct, though. I've also changed the implicit newlines to explicit ones (gcc 3.1 complains bitterly about the former kind). - Werner ---------------------------------- cut here ----------------------------------- --- linux-2.5.26/drivers/char/sysrq.c.orig Thu Jul 18 12:55:09 2002 +++ linux-2.5.26/drivers/char/sysrq.c Thu Jul 18 12:55:15 2002 @@ -74,7 +74,6 @@ help_msg: "saK", action_msg: "SAK", }; -#endif /* unraw sysrq handler */ @@ -91,6 +90,7 @@ help_msg: "unRaw", action_msg: "Keyboard mode set to XLATE", }; +#endif /* reboot sysrq handler */ @@ -371,7 +371,9 @@ as 'Off' at init time */ /* p */ &sysrq_showregs_op, /* q */ NULL, +#ifdef CONFIG_VT /* r */ &sysrq_unraw_op, +#endif /* s */ &sysrq_sync_op, /* t */ &sysrq_showstate_op, /* u */ &sysrq_mountro_op, --- linux-2.5.26/arch/um/drivers/mconsole_kern.c.orig Thu Jul 18 12:30:01 2002 +++ linux-2.5.26/arch/um/drivers/mconsole_kern.c Thu Jul 18 12:31:50 2002 @@ -95,17 +95,16 @@ } #define UML_MCONSOLE_HELPTEXT \ -"Commands: - version - Get kernel version - help - Print this message - halt - Halt UML - reboot - Reboot UML - config <dev>=<config> - Add a new device to UML; - same syntax as command line - remove <dev> - Remove a device from UML - sysrq <letter> - Performs the SysRq action controlled by the letter - cad - invoke the Ctl-Alt-Del handler -" +"Commands:\n" \ +" version - Get kernel version\n" \ +" help - Print this message\n" \ +" halt - Halt UML\n" \ +" reboot - Reboot UML\n" \ +" config <dev>=<config> - Add a new device to UML;\n" \ +" same syntax as command line\n" \ +" remove <dev> - Remove a device from UML\n" \ +" sysrq <letter> - Performs the SysRq action controlled by the letter\n" \ +" cad - invoke the Ctl-Alt-Del handler\n" void mconsole_help(struct mc_request *req) { @@ -213,7 +212,7 @@ ptr += strlen("sysrq"); while(isspace(*ptr)) ptr++; - handle_sysrq(*ptr, ¤t->thread.regs, NULL, NULL); + handle_sysrq(*ptr, ¤t->thread.regs, NULL); mconsole_reply(req, "", 0, 0); } #else -- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina wa...@al... / /_http://icapeople.epfl.ch/almesber/_____________________________________/ |
From: Jeff D. <jd...@ka...> - 2002-07-18 17:15:10
|
wa...@al... said: > Do you get the warnings too ? No. I get a fairly clean build. > I've attached a patch that should solve the sysrq problem. Not sure if > my unRaw fix is correct, though. I've also changed the implicit > newlines to explicit ones (gcc 3.1 complains bitterly about the former > kind). I fixed sysrq differently in my pool. I basically declared the missing symbols in um_arch.c. > Only the other trivial ones in page.h (see my patch), plus a glorious > time.c:6:1: warning: "_GNU_SOURCE" redefined for arch/um/kernel/time.c OK, I'll have a look at that. Jeff |
From: Werner A. <wa...@al...> - 2002-07-18 23:22:44
|
Jeff Dike wrote: > I fixed sysrq differently in my pool. I basically declared the missing > symbols in um_arch.c. That's more straightforward, yes :-) But you may want to keep in mind that this is nothing UML-specific - e.g. the "normal" i386 build also fails if you enable Magic SysReq and disable VTs. It's just that this constellation is less common without UML ... - Werner -- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina wa...@al... / /_http://icapeople.epfl.ch/almesber/_____________________________________/ |
From: Jeff D. <jd...@ka...> - 2002-07-19 01:12:21
|
wa...@al... said: > But you may want to keep in mind that this is nothing UML-specific - > e.g. the "normal" i386 build also fails if you enable Magic SysReq and > disable VTs. I know. I'm not happy about this, and I'm going to be keeping an eye out for ways of fixing it. Jeff |
From: Werner A. <wa...@al...> - 2002-07-19 01:38:16
|
Jeff Dike wrote: > I know. I'm not happy about this, and I'm going to be keeping an eye out > for ways of fixing it. I've just sent the non-UML part of my patch to linux-kernel, so if the people hacking the console code don't mind, it may find its way into some future version of 2.5. - Werner -- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina wa...@al... / /_http://icapeople.epfl.ch/almesber/_____________________________________/ |
From: Jeff D. <jd...@ka...> - 2002-07-18 15:46:24
|
wa...@al... said: > I've put two batches of them below. (The main.c output is with the > trivial page.h things already removed. Patch at the end.) OK, those were fairly harmless. I seem to be blessed with a compiler that ignores redefinitions. Were there any other redefined symbols besides pfn_to_page, get_task_struct, and virt_to_page? Jeff |
From: Werner A. <wa...@al...> - 2002-07-18 16:01:45
|
Jeff Dike wrote: > OK, those were fairly harmless. I seem to be blessed with a compiler that > ignores redefinitions. Upgrade to gcc 3.1 and experience a whole new world of pain :-) > Were there any other redefined symbols besides pfn_to_page, get_task_struct, > and virt_to_page? Only the other trivial ones in page.h (see my patch), plus a glorious time.c:6:1: warning: "_GNU_SOURCE" redefined for arch/um/kernel/time.c - Werner -- _________________________________________________________________________ / Werner Almesberger, Buenos Aires, Argentina wa...@al... / /_http://icapeople.epfl.ch/almesber/_____________________________________/ |