Skip to contentSkip to conversation

Make User Mode Linux compile in 2.6.11-rc3

PATCH In review Rob Landley 2 participants 3 messages Feb 5, 2005 – Feb 6, 2005 User-mode Linux (UML)

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Make User Mode Linux compile in 2.6.11-rc3

As of yesterday afternoon, the UML build still breaks in sys_call_table.c, here's the patch I submitted earlier (which got me past the break when I tried it). Last week, this produced what seemed like a working UML.

Now there's a second break in mm/memory.c: the move to four level page tables conflicts with a stub in our headers. Not quite sure how to fix that. Jeff?

(Yeah, I know Andrew's tree works. But wouldn't it be nice if the kernel.org tree to worked too, before 2.6.11 release.)

Rob

---------- Forwarded Message ----------

Subject: [uml-devel] [patch] Make User Mode Linux compile in 2.6.11-rc2-bk6.
Date: Saturday 29 January 2005 05:51 am
From: Rob Landley <[email protected]>
To: [email protected], [email protected]

User Mode Linux doesn't compile in 2.6.11-rc2-bk6. Here's the change I made to sys_call_table.c to make it compile. (I ran the result and brought up a shell.)

We're really close to finally having a usable UML kernel in mainline. 2.6.9's ARCH=um built but was very unstable, 2.6.10 didn't even build for me, but 2.6.11-rc1-mm2 builds fine unmodified, and ran my tests correctly to completion.

Here's the patch. Nothing fancy, it simply removes or stubs out all the syscalls the compiler complains about.

Rob

--- linux-2.6.10/arch/um/kernel/sys_call_table.c 2005-01-28
21:20:38.000000000 -0600 +++
linux-2.6.10-um/arch/um/kernel/sys_call_table.c 2005-01-28
21:40:30.735892144 -0600 @@ -20,7 +20,7 @@
#define NFSSERVCTL sys_ni_syscall
#endif

-#define LAST_GENERIC_SYSCALL __NR_vperfctr_read
+#define LAST_GENERIC_SYSCALL (NR_syscalls-1)

#if LAST_GENERIC_SYSCALL > LAST_ARCH_SYSCALL
#define LAST_SYSCALL LAST_GENERIC_SYSCALL
@@ -52,13 +52,7 @@
extern syscall_handler_t sys_mbind;
extern syscall_handler_t sys_get_mempolicy;
extern syscall_handler_t sys_set_mempolicy;
-extern syscall_handler_t sys_sys_kexec_load;
extern syscall_handler_t sys_sys_setaltroot;
-extern syscall_handler_t sys_vperfctr_open;
-extern syscall_handler_t sys_vperfctr_control;
-extern syscall_handler_t sys_vperfctr_unlink;
-extern syscall_handler_t sys_vperfctr_iresume;
-extern syscall_handler_t sys_vperfctr_read;

syscall_handler_t *sys_call_table[] = {
[ __NR_restart_syscall ] = (syscall_handler_t *) sys_restart_syscall,
@@ -273,7 +267,7 @@
[ __NR_mq_timedreceive ] = (syscall_handler_t *) sys_mq_timedreceive, [ __NR_mq_notify ] = (syscall_handler_t *) sys_mq_notify, [ __NR_mq_getsetattr ] = (syscall_handler_t *) sys_mq_getsetattr,
- [ __NR_sys_kexec_load ] = (syscall_handler_t *) sys_kexec_load,
+ [ __NR_sys_kexec_load ] = (syscall_handler_t *) sys_ni_syscall,
[ __NR_waitid ] = (syscall_handler_t *) sys_waitid,
#if 0
[ __NR_sys_setaltroot ] = (syscall_handler_t *) sys_sys_setaltroot,
@@ -281,11 +275,6 @@
[ __NR_add_key ] = (syscall_handler_t *) sys_add_key,
[ __NR_request_key ] = (syscall_handler_t *) sys_request_key, [ __NR_keyctl ] = (syscall_handler_t *) sys_keyctl,
- [ __NR_vperfctr_open ] = (syscall_handler_t *) sys_vperfctr_open,
- [ __NR_vperfctr_control ] = (syscall_handler_t *) sys_vperfctr_control,
- [ __NR_vperfctr_unlink ] = (syscall_handler_t *) sys_vperfctr_unlink,
- [ __NR_vperfctr_iresume ] = (syscall_handler_t *) sys_vperfctr_iresume,
- [ __NR_vperfctr_read ] = (syscall_handler_t *) sys_vperfctr_read,

ARCH_SYSCALLS
[ LAST_SYSCALL + 1 ... NR_syscalls ] =

-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
User-mode-linux-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

#1 lore raw

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Rob Landley wrote:
| As of yesterday afternoon, the UML build still breaks in sys_call_table.c,

| here's the patch I submitted earlier (which got me past the break when I
| tried it).  Last week, this produced what seemed like a working UML.
|
| Now there's a second break in mm/memory.c: the move to four level page
| tables conflicts with a stub in our headers.  Not quite sure how to
fix that.
| Jeff?
|
| (Yeah, I know Andrew's tree works.  But wouldn't it be nice if the

kernel.org
| tree to worked too, before 2.6.11 release.)

This patch for sys_call_table.c was merged into the main tree in this changeset:
http://linux.bkbits.net:8080/linux-2.5/[email protected]?nav=index.html|ChangeSet@-2d

The patch fixes both the sys_call_table and the pud_alloc breakage, and as of 2.6.11-rc3-bk2, the main tree compiles again for UML.

Andrew's tree, however, (at least 2.6.11-rc3-mm1) requires the patch I sent out yesterday in the message titled "Fix compilation of UML after the stack-randomization patches."

Frank
- --
Frank Sorenson - KD7TZK
Systems Manager, Computer Science Department
Brigham Young University
[email protected]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFCBQlRaI0dwg4A47wRAjJ8AJ9CKD/aXaz1TS9QfOO11vcsv+57BACg1CdJ GR0ukCKAabFtJs5rVsPItGg=
=h/on
-----END PGP SIGNATURE-----

-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
User-mode-linux-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel

#2 lore raw
Quoted 6 lines · Frank Sorenson

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Rob Landley wrote:
| As of yesterday afternoon, the UML build still breaks in | sys_call_table.c,

...

Quoted 7 lines

This patch for sys_call_table.c was merged into the main tree in this changeset:
http://linux.bkbits.net:8080/linux-2.5/[email protected]?nav=index.html|ChangeSet
@-2d

The patch fixes both the sys_call_table and the pud_alloc breakage, and as of 2.6.11-rc3-bk2, the main tree compiles again for UML.

Verified. 2.6.11-rc3-bk2 does indeed build, and the result is chugging through my big compile script. It seems to be working fine, although ye olde display glitch is still there:

binutils-2.14/ld/testsuite/ld-sparc/tlssunbin64.rd binutils-2.14/ld/testsuite/lde/ld-/ld-sld-spd-spa-sparsparcparc/arc/trc/tlc/tls/tlsstlssulssunssunbsunbiunbinnbin6bin64in64.n64.s64.s4.s.ss binubinutinutinutilutilstils-ils-2ls-2.s-2.1-2.142.14/.14/l14/ld4/ld//ld/tld/ted/tes/testtestsestsustsuitsuitsuiteuite/ite/lte/lde/ld-/ld-sld-spd-spa-sparsparcparc/tlssunbin64.sd binutils-2.14/ld/testsuite/ld-sparc/tlssunbin64.td

But that's a purely cosmetic bug.

Thanks,

Rob

-------------------------------------------------------
This SF.Net email is sponsored by: IntelliVIEW -- Interactive Reporting Tool for open source databases. Create drag-&-drop reports. Save time by over 75%! Publish reports on the web. Export to DOC, XLS, RTF, etc. Download a FREE copy at http://www.intelliview.com/go/osdn_nl
_______________________________________________
User-mode-linux-devel mailing list [email protected]
https://lists.sourceforge.net/lists/listinfo/user-mode-linux-devel