* [PATCH] Fix ARCH=um segfault on x86-64.
@ 2009-03-06 6:42 Rob Landley
2009-03-06 8:48 ` Américo Wang
0 siblings, 1 reply; 9+ messages in thread
From: Rob Landley @ 2009-03-06 6:42 UTC (permalink / raw)
To: user-mode-linux-devel; +Cc: linux-kernel
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #1: Type: text/plain; charset="us-ascii", Size: 8554 bytes --]
Apparently, nobody other than me has ever attempted to use User Mode Linux built from 2.6.28 on x86-64, because it doesn't work. It still doesn't work in current git. I complained about it not working back in January:
http://sourceforge.net/mailarchive/forum.php?thread_name=200901130159.04389.rob%40landley.net&forum_name=user-mode-linux-develhttp://lkml.indiana.edu/hypermail/linux/kernel/0901.2/00669.html
And today, I bothered to track down why.
This is the commit that broke it, when Peter Anvin merged x86 and x86-64 for ARCH=um: http://kernel.org/hg/linux-2.6/rev/117978
Here's a patch that fixes it for me:
Signed-off-by: Rob Landley <rob@landley.net>
diff -r 178a096e9e38 arch/um/Kconfig.x86--- a/arch/um/Kconfig.x86 Fri Feb 27 16:49:46 2009 -0800+++ b/arch/um/Kconfig.x86 Thu Mar 05 23:35:55 2009 -0600@@ -26,9 +26,8 @@ def_bool !X86_XADD config 3_LEVEL_PGTABLES- bool "Three-level pagetables (EXPERIMENTAL)" if !64BIT+ bool default 64BIT- depends on EXPERIMENTAL help Three-level pagetables will let UML have more than 4G of physical memory. All the memory that can't be mapped directly will be treated\0What changed is that the resulting .config no longer contains the line "CONFIG_3_LEVEL_PGTABLES=y" (it's not visible, and thus not written out into the config file file). Without that symbol defined, x86-64 dies trying to boot. If you tweak the Kconfig so the symbol gets written out, it starts working again.
I have no idea how ANYBODY has EVER managed to use 2.6.28 User Mode Linux on an x86-64 host. My theory is that nobody ever did. I suspect that very few people use UML anymore now that KVM and the rustyvisor and such are available, and those legacy users still fiddling with it are apparently all either using old versions or 32-bit hosts. (I still like being able to stick printfs into the kernel.)
Here's the panic, in case you're wondering:
$ ./linux rw init=/bin/bash rootfstype=hostfsCore dump limits : soft - 0 hard - NONEChecking that ptrace can change system call numbers...OKChecking syscall emulation patch for ptrace...OKChecking advanced syscall emulation patch for ptrace...OKChecking for tmpfs mount on /dev/shm...OKChecking PROT_EXEC mmap in /dev/shm/...OKChecking for the skas3 patch in the host: - /proc/mm...not found: No such file or directory - PTRACE_FAULTINFO...not found - PTRACE_LDT...not foundUML running in SKAS0 modeAdding 4390912 bytes to physical memory to account for exec-shield gapLinux version 2.6.29-rc7 (landley@driftwood) (gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu11) ) #1 Thu Mar 5 21:20:14 CST 2009Built 1 zonelists in Zone order, mobility grouping on. Total pages: 9137Kernel command line: rw init=/bin/bash rootfstype=hostfs root=98:0PID hash table entries: 256 (order: 8, 2048 bytes)Dentry cache hash table entries: 8192 (order: 4, 65536 bytes)Inode-cache hash table entries: 4096 (order: 3, 32768 bytes)Memory: 29244k availableSLUB: Genslabs=12, HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1Calibrating delay loop... 209.30 BogoMIPS (lpj=1046528)Mount-cache hash table entries: 256Checking that host ptys support output SIGIO...YesChecking that host ptys support SIGIO on close...No, enabling workaroundUsing 2.6 host AIObio: create slab <bio-0> at 0Switched to NOHz mode on CPU #0io scheduler noop registered (default)loop: module loadedInitialized stdio console driverUsing a channel type which is configured out of UMLparse_chan_pair failed for device 1 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 2 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 3 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 4 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 5 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 6 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 7 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 8 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 9 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 10 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 11 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 12 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 13 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 14 : Configuration failedUsing a channel type which is configured out of UMLparse_chan_pair failed for device 15 : Configuration failedConsole initialized on /dev/tty0console [tty0] enabledVFS: Mounted root (hostfs filesystem) on device 0:8.IRQ 3/console-write: IRQF_DISABLED is not guaranteed on shared IRQsIRQ 2/console: IRQF_DISABLED is not guaranteed on shared IRQsIRQ 10/winch: IRQF_DISABLED is not guaranteed on shared IRQs
Pid: 1, comm: swapper Not tainted 2.6.29-rc7RIP: 0033:[<000000006001b342>]RSP: 0000000062029dd0 EFLAGS: 00010216RAX: 00000000622af800 RBX: 00000000621b0000 RCX: 0000000003ffc09fRDX: fffffffffff02800 RSI: 0000000060313900 RDI: 00000000622af800RBP: 0000000060d10048 R08: 0000000000000000 R09: 0000000000100000R10: 0000000000000000 R11: 0000000060197a00 R12: 000000006211f300R13: 000000006211f300 R14: 0000000060206440 R15: 0000000062020300Call Trace: 602058f8: [<600160c5>] timer_one_shot+0x55/0x8060205908: [<6000e4b9>] segv+0x2a9/0x2d060205918: [<6001b342>] __memcpy+0xe/0xac60205928: [<6003f376>] tick_dev_program_event+0x36/0xb060205958: [<6003f5c4>] tick_check_oneshot_change+0xf4/0x10060205968: [<6002bc6d>] run_timer_softirq+0x1cd/0x210602059e8: [<6000e530>] segv_handler+0x50/0xe060205a08: [<6003f250>] tick_handle_periodic+0x10/0x6060205a48: [<60026a7d>] do_softirq+0x4d/0x7060205a68: [<60026bf2>] irq_exit+0x42/0xa060205a88: [<6000aecf>] do_IRQ+0x2f/0x5060205aa8: [<600154e4>] sig_handler_common+0x64/0xe060205b30: [<6001b342>] __memcpy+0xe/0xac60205b50: [<600ae3de>] sysfs_new_dirent+0xfe/0x12060205bd8: [<600156aa>] sig_handler+0x1a/0x4060205be8: [<60015983>] handle_signal+0x73/0xb060205c28: [<60100140>] __restore_rt+0x0/0x1060205cd8: [<6001b342>] __memcpy+0xe/0xac
Kernel panic - not syncing: Segfault with no mm
Pid: 1, comm: swapper Not tainted 2.6.29-rc7RIP: 0033:[<00000000601003a7>]RSP: 00007fff8026e2a8 EFLAGS: 00000246RAX: 0000000000000000 RBX: 0000000000001cc4 RCX: ffffffffffffffffRDX: 0000000000000000 RSI: 0000000000000013 RDI: 0000000000001cc4RBP: 0000000000001cc0 R08: 00007fff8026e1f0 R09: 0000000000000000R10: 0000000000000000 R11: 0000000000000246 R12: 00007fff8026e3b8R13: 0000000000000004 R14: 00007fff8026e580 R15: 00007fff8026e414Call Trace: 602057b8: [<6003aacd>] up+0x1d/0x50602057c8: [<6000e77d>] panic_exit+0x2d/0x50602057d8: [<600214ac>] release_console_sem+0x19c/0x1e0602057e8: [<6003ac87>] notifier_call_chain+0x37/0x7060205818: [<60167cd7>] panic+0xd0/0x16460205858: [<60100370>] __sigprocmask+0x10/0x4060205878: [<60167df6>] printk+0x8b/0x9560205898: [<6001604e>] os_nsecs+0xe/0x30602058b8: [<6001b342>] __memcpy+0xe/0xac602058c8: [<6000d080>] show_trace+0x60/0xc0602058e8: [<6001b148>] show_regs+0x28/0x3060205908: [<6000e4c5>] segv+0x2b5/0x2d060205918: [<6001b342>] __memcpy+0xe/0xac60205928: [<6003f376>] tick_dev_program_event+0x36/0xb060205958: [<6003f5c4>] tick_check_oneshot_change+0xf4/0x10060205968: [<6002bc6d>] run_timer_softirq+0x1cd/0x210602059e8: [<6000e530>] segv_handler+0x50/0xe060205a08: [<6003f250>] tick_handle_periodic+0x10/0x6060205a48: [<60026a7d>] do_softirq+0x4d/0x7060205a68: [<60026bf2>] irq_exit+0x42/0xa060205a88: [<6000aecf>] do_IRQ+0x2f/0x5060205aa8: [<600154e4>] sig_handler_common+0x64/0xe060205b30: [<6001b342>] __memcpy+0xe/0xac60205b50: [<600ae3de>] sysfs_new_dirent+0xfe/0x12060205bd8: [<600156aa>] sig_handler+0x1a/0x4060205be8: [<60015983>] handle_signal+0x73/0xb060205c28: [<60100140>] __restore_rt+0x0/0x1060205cd8: [<6001b342>] __memcpy+0xe/0xac
Segmentation fault
Robÿôèº{.nÇ+·®+%Ëÿ±éݶ\x17¥wÿº{.nÇ+·¥{±þG«éÿ{ayº\x1dÊÚë,j\a¢f£¢·hïêÿêçz_è®\x03(éÝ¢j"ú\x1a¶^[m§ÿÿ¾\a«þG«éÿ¢¸?¨èÚ&£ø§~á¶iOæ¬z·vØ^\x14\x04\x1a¶^[m§ÿÿÃ\fÿ¶ìÿ¢¸?I¥
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Fix ARCH=um segfault on x86-64.
2009-03-06 6:42 [PATCH] Fix ARCH=um segfault on x86-64 Rob Landley
@ 2009-03-06 8:48 ` Américo Wang
2009-03-06 9:50 ` Geert Uytterhoeven
0 siblings, 1 reply; 9+ messages in thread
From: Américo Wang @ 2009-03-06 8:48 UTC (permalink / raw)
To: Rob Landley; +Cc: user-mode-linux-devel, linux-kernel
On Fri, Mar 06, 2009 at 12:42:14AM -0600, Rob Landley wrote:
>Apparently, nobody other than me has ever attempted to use User Mode Linux
>built from 2.6.28 on x86-64, because it doesn't work. It still doesn't work
>in current git. I complained about it not working back in January:
>
>http://sourceforge.net/mailarchive/forum.php?thread_name=200901130159.04389.rob%40landley.net&forum_name=user-
>mode-linux-devel
>http://lkml.indiana.edu/hypermail/linux/kernel/0901.2/00669.html
>
>And today, I bothered to track down why.
>
>This is the commit that broke it, when Peter Anvin merged x86 and x86-64 for
>ARCH=um: http://kernel.org/hg/linux-2.6/rev/117978
>
>Here's a patch that fixes it for me:
Thanks, Bob!
>
>Signed-off-by: Rob Landley <rob@landley.net>
>
>diff -r 178a096e9e38 arch/um/Kconfig.x86
>--- a/arch/um/Kconfig.x86 Fri Feb 27 16:49:46 2009 -0800
>+++ b/arch/um/Kconfig.x86 Thu Mar 05 23:35:55 2009 -0600
>@@ -26,9 +26,8 @@
> def_bool !X86_XADD
>
> config 3_LEVEL_PGTABLES
>- bool "Three-level pagetables (EXPERIMENTAL)" if !64BIT
>+ bool
> default 64BIT
>- depends on EXPERIMENTAL
So, on i386, it will not depend on EXPERIMENTAL any more, right?
How about changing it to the following?
depends on 64BIT || EXPERIMENTAL
> help
> Three-level pagetables will let UML have more than 4G of physical
> memory. All the memory that can't be mapped directly will be treated
>>What changed is that the resulting .config no longer contains the line
>"CONFIG_3_LEVEL_PGTABLES=y" (it's not visible, and thus not written out into
>the config file file). Without that symbol defined, x86-64 dies trying to
>boot. If you tweak the Kconfig so the symbol gets written out, it starts
>working again.
>
>I have no idea how ANYBODY has EVER managed to use 2.6.28 User Mode Linux on
>an x86-64 host. My theory is that nobody ever did. I suspect that very few
>people use UML anymore now that KVM and the rustyvisor and such are available,
>and those legacy users still fiddling with it are apparently all either using
>old versions or 32-bit hosts. (I still like being able to stick printfs into
>the kernel.)
>
I am sorry that I never have an x86_64 machine to use. :(
--
Do what you love, f**k the rest! F**k the regulations!
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Fix ARCH=um segfault on x86-64.
2009-03-06 8:48 ` Américo Wang
@ 2009-03-06 9:50 ` Geert Uytterhoeven
2009-03-06 9:51 ` Geert Uytterhoeven
2009-03-06 22:20 ` Rob Landley
0 siblings, 2 replies; 9+ messages in thread
From: Geert Uytterhoeven @ 2009-03-06 9:50 UTC (permalink / raw)
To: Américo Wang; +Cc: Rob Landley, user-mode-linux-devel, linux-kernel
[-- Attachment #1: Type: text/plain, Size: 1264 bytes --]
On Fri, Mar 6, 2009 at 09:48, Américo Wang <xiyou.wangcong@gmail.com> wrote:
> On Fri, Mar 06, 2009 at 12:42:14AM -0600, Rob Landley wrote:
>>Apparently, nobody other than me has ever attempted to use User Mode Linux
>>built from 2.6.28 on x86-64, because it doesn't work. It still doesn't work
>>in current git. I complained about it not working back in January:
>>
>>http://sourceforge.net/mailarchive/forum.php?thread_name=200901130159.04389.rob%40landley.net&forum_name=user-
>>mode-linux-devel
>>http://lkml.indiana.edu/hypermail/linux/kernel/0901.2/00669.html
>>
>>And today, I bothered to track down why.
>>
>>This is the commit that broke it, when Peter Anvin merged x86 and x86-64 for
>>ARCH=um: http://kernel.org/hg/linux-2.6/rev/117978
>>
>>Here's a patch that fixes it for me:
>
> Thanks, Bob!
I've just did a build of plain v2.6.28 on amd64 aka x86-64. The
resulting image ran fine.
I attached my .config.
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
[-- Attachment #2: config --]
[-- Type: application/octet-stream, Size: 16786 bytes --]
#
# Automatically generated make config: don't edit
# Linux kernel version: 2.6.28
# Fri Mar 6 10:41:29 2009
#
CONFIG_DEFCONFIG_LIST="arch/$ARCH/defconfig"
CONFIG_GENERIC_HARDIRQS=y
CONFIG_UML=y
CONFIG_MMU=y
CONFIG_NO_IOMEM=y
# CONFIG_TRACE_IRQFLAGS_SUPPORT is not set
CONFIG_LOCKDEP_SUPPORT=y
# CONFIG_STACKTRACE_SUPPORT is not set
CONFIG_GENERIC_CALIBRATE_DELAY=y
CONFIG_GENERIC_BUG=y
CONFIG_GENERIC_TIME=y
CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_IRQ_RELEASE_METHOD=y
CONFIG_HZ=100
#
# UML-specific options
#
#
# Host processor type and features
#
# CONFIG_M386 is not set
# CONFIG_M486 is not set
# CONFIG_M586 is not set
# CONFIG_M586TSC is not set
# CONFIG_M586MMX is not set
# CONFIG_M686 is not set
# CONFIG_MPENTIUMII is not set
# CONFIG_MPENTIUMIII is not set
# CONFIG_MPENTIUMM is not set
# CONFIG_MPENTIUM4 is not set
# CONFIG_MK6 is not set
# CONFIG_MK7 is not set
CONFIG_MK8=y
# CONFIG_MCRUSOE is not set
# CONFIG_MEFFICEON is not set
# CONFIG_MWINCHIPC6 is not set
# CONFIG_MWINCHIP3D is not set
# CONFIG_MGEODEGX1 is not set
# CONFIG_MGEODE_LX is not set
# CONFIG_MCYRIXIII is not set
# CONFIG_MVIAC3_2 is not set
# CONFIG_MVIAC7 is not set
# CONFIG_MPSC is not set
# CONFIG_MCORE2 is not set
# CONFIG_GENERIC_CPU is not set
CONFIG_X86_CPU=y
# CONFIG_X86_CMPXCHG is not set
CONFIG_X86_L1_CACHE_SHIFT=6
CONFIG_X86_WP_WORKS_OK=y
CONFIG_X86_INTEL_USERCOPY=y
CONFIG_X86_USE_PPRO_CHECKSUM=y
CONFIG_X86_TSC=y
CONFIG_X86_CMOV=y
CONFIG_X86_MINIMUM_CPU_FAMILY=3
CONFIG_X86_DEBUGCTLMSR=y
CONFIG_CPU_SUP_INTEL=y
CONFIG_CPU_SUP_AMD=y
CONFIG_CPU_SUP_CENTAUR_64=y
# CONFIG_X86_DS is not set
CONFIG_UML_X86=y
CONFIG_64BIT=y
# CONFIG_X86_32 is not set
# CONFIG_RWSEM_XCHGADD_ALGORITHM is not set
CONFIG_RWSEM_GENERIC_SPINLOCK=y
CONFIG_3_LEVEL_PGTABLES=y
# CONFIG_ARCH_HAS_SC_SIGNALS is not set
# CONFIG_ARCH_REUSE_HOST_VSYSCALL_AREA is not set
CONFIG_SMP_BROKEN=y
CONFIG_GENERIC_HWEIGHT=y
# CONFIG_STATIC_LINK is not set
CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_FLATMEM_MANUAL=y
# CONFIG_DISCONTIGMEM_MANUAL is not set
# CONFIG_SPARSEMEM_MANUAL is not set
CONFIG_FLATMEM=y
CONFIG_FLAT_NODE_MEM_MAP=y
CONFIG_PAGEFLAGS_EXTENDED=y
CONFIG_SPLIT_PTLOCK_CPUS=4
CONFIG_RESOURCES_64BIT=y
CONFIG_PHYS_ADDR_T_64BIT=y
CONFIG_ZONE_DMA_FLAG=0
CONFIG_VIRT_TO_BUS=y
CONFIG_UNEVICTABLE_LRU=y
CONFIG_TICK_ONESHOT=y
CONFIG_NO_HZ=y
CONFIG_HIGH_RES_TIMERS=y
CONFIG_GENERIC_CLOCKEVENTS_BUILD=y
CONFIG_LD_SCRIPT_DYN=y
CONFIG_BINFMT_ELF=y
# CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set
# CONFIG_HAVE_AOUT is not set
CONFIG_BINFMT_MISC=m
CONFIG_HOSTFS=y
# CONFIG_HPPFS is not set
CONFIG_MCONSOLE=y
CONFIG_MAGIC_SYSRQ=y
CONFIG_KERNEL_STACK_ORDER=1
#
# General setup
#
CONFIG_EXPERIMENTAL=y
CONFIG_BROKEN_ON_SMP=y
CONFIG_INIT_ENV_ARG_LIMIT=128
CONFIG_LOCALVERSION=""
CONFIG_LOCALVERSION_AUTO=y
CONFIG_SWAP=y
CONFIG_SYSVIPC=y
CONFIG_SYSVIPC_SYSCTL=y
CONFIG_POSIX_MQUEUE=y
CONFIG_BSD_PROCESS_ACCT=y
# CONFIG_BSD_PROCESS_ACCT_V3 is not set
# CONFIG_TASKSTATS is not set
# CONFIG_AUDIT is not set
CONFIG_IKCONFIG=y
CONFIG_IKCONFIG_PROC=y
CONFIG_LOG_BUF_SHIFT=14
# CONFIG_CGROUPS is not set
# CONFIG_GROUP_SCHED is not set
CONFIG_SYSFS_DEPRECATED=y
CONFIG_SYSFS_DEPRECATED_V2=y
# CONFIG_RELAY is not set
CONFIG_NAMESPACES=y
# CONFIG_UTS_NS is not set
# CONFIG_IPC_NS is not set
# CONFIG_USER_NS is not set
# CONFIG_PID_NS is not set
# CONFIG_BLK_DEV_INITRD is not set
CONFIG_CC_OPTIMIZE_FOR_SIZE=y
CONFIG_SYSCTL=y
# CONFIG_EMBEDDED is not set
CONFIG_UID16=y
CONFIG_SYSCTL_SYSCALL=y
CONFIG_KALLSYMS=y
# CONFIG_KALLSYMS_ALL is not set
CONFIG_KALLSYMS_EXTRA_PASS=y
CONFIG_HOTPLUG=y
CONFIG_PRINTK=y
CONFIG_BUG=y
CONFIG_ELF_CORE=y
CONFIG_COMPAT_BRK=y
CONFIG_BASE_FULL=y
CONFIG_FUTEX=y
CONFIG_ANON_INODES=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
CONFIG_TIMERFD=y
CONFIG_EVENTFD=y
CONFIG_SHMEM=y
CONFIG_AIO=y
CONFIG_VM_EVENT_COUNTERS=y
CONFIG_SLAB=y
# CONFIG_SLUB is not set
# CONFIG_SLOB is not set
# CONFIG_PROFILING is not set
# CONFIG_MARKERS is not set
# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set
CONFIG_SLABINFO=y
CONFIG_RT_MUTEXES=y
# CONFIG_TINY_SHMEM is not set
CONFIG_BASE_SMALL=0
CONFIG_MODULES=y
# CONFIG_MODULE_FORCE_LOAD is not set
CONFIG_MODULE_UNLOAD=y
# CONFIG_MODULE_FORCE_UNLOAD is not set
# CONFIG_MODVERSIONS is not set
# CONFIG_MODULE_SRCVERSION_ALL is not set
CONFIG_KMOD=y
CONFIG_BLOCK=y
# CONFIG_BLK_DEV_IO_TRACE is not set
# CONFIG_BLK_DEV_BSG is not set
# CONFIG_BLK_DEV_INTEGRITY is not set
#
# IO Schedulers
#
CONFIG_IOSCHED_NOOP=y
CONFIG_IOSCHED_AS=y
CONFIG_IOSCHED_DEADLINE=y
CONFIG_IOSCHED_CFQ=y
CONFIG_DEFAULT_AS=y
# CONFIG_DEFAULT_DEADLINE is not set
# CONFIG_DEFAULT_CFQ is not set
# CONFIG_DEFAULT_NOOP is not set
CONFIG_DEFAULT_IOSCHED="anticipatory"
CONFIG_CLASSIC_RCU=y
# CONFIG_FREEZER is not set
CONFIG_BLK_DEV=y
CONFIG_BLK_DEV_UBD=y
# CONFIG_BLK_DEV_UBD_SYNC is not set
CONFIG_BLK_DEV_COW_COMMON=y
CONFIG_BLK_DEV_LOOP=y
# CONFIG_BLK_DEV_CRYPTOLOOP is not set
CONFIG_BLK_DEV_NBD=m
# CONFIG_BLK_DEV_RAM is not set
# CONFIG_ATA_OVER_ETH is not set
#
# Character Devices
#
CONFIG_STDERR_CONSOLE=y
CONFIG_STDIO_CONSOLE=y
CONFIG_SSL=y
CONFIG_NULL_CHAN=y
CONFIG_PORT_CHAN=y
CONFIG_PTY_CHAN=y
CONFIG_TTY_CHAN=y
CONFIG_XTERM_CHAN=y
# CONFIG_NOCONFIG_CHAN is not set
CONFIG_CON_ZERO_CHAN="fd:0,fd:1"
CONFIG_CON_CHAN="xterm"
CONFIG_SSL_CHAN="pts"
CONFIG_UNIX98_PTYS=y
CONFIG_LEGACY_PTYS=y
# CONFIG_RAW_DRIVER is not set
CONFIG_LEGACY_PTY_COUNT=32
# CONFIG_WATCHDOG is not set
CONFIG_UML_SOUND=m
CONFIG_SOUND=m
CONFIG_SOUND_OSS_CORE=y
CONFIG_HOSTAUDIO=m
# CONFIG_HW_RANDOM is not set
CONFIG_UML_RANDOM=y
# CONFIG_MMAPPER is not set
#
# Generic Driver Options
#
CONFIG_UEVENT_HELPER_PATH="/sbin/hotplug"
CONFIG_STANDALONE=y
CONFIG_PREVENT_FIRMWARE_BUILD=y
CONFIG_FW_LOADER=y
# CONFIG_FIRMWARE_IN_KERNEL is not set
CONFIG_EXTRA_FIRMWARE=""
# CONFIG_DEBUG_DRIVER is not set
# CONFIG_DEBUG_DEVRES is not set
# CONFIG_SYS_HYPERVISOR is not set
CONFIG_NET=y
#
# Networking options
#
CONFIG_PACKET=y
CONFIG_PACKET_MMAP=y
CONFIG_UNIX=y
CONFIG_XFRM=y
# CONFIG_XFRM_USER is not set
# CONFIG_XFRM_SUB_POLICY is not set
# CONFIG_XFRM_MIGRATE is not set
# CONFIG_XFRM_STATISTICS is not set
# CONFIG_NET_KEY is not set
CONFIG_INET=y
# CONFIG_IP_MULTICAST is not set
# CONFIG_IP_ADVANCED_ROUTER is not set
CONFIG_IP_FIB_HASH=y
# CONFIG_IP_PNP is not set
# CONFIG_NET_IPIP is not set
# CONFIG_NET_IPGRE is not set
# CONFIG_ARPD is not set
# CONFIG_SYN_COOKIES is not set
# CONFIG_INET_AH is not set
# CONFIG_INET_ESP is not set
# CONFIG_INET_IPCOMP is not set
# CONFIG_INET_XFRM_TUNNEL is not set
# CONFIG_INET_TUNNEL is not set
CONFIG_INET_XFRM_MODE_TRANSPORT=y
CONFIG_INET_XFRM_MODE_TUNNEL=y
CONFIG_INET_XFRM_MODE_BEET=y
# CONFIG_INET_LRO is not set
CONFIG_INET_DIAG=y
CONFIG_INET_TCP_DIAG=y
# CONFIG_TCP_CONG_ADVANCED is not set
CONFIG_TCP_CONG_CUBIC=y
CONFIG_DEFAULT_TCP_CONG="cubic"
# CONFIG_TCP_MD5SIG is not set
# CONFIG_IPV6 is not set
# CONFIG_NETWORK_SECMARK is not set
# CONFIG_NETFILTER is not set
# CONFIG_IP_DCCP is not set
# CONFIG_IP_SCTP is not set
# CONFIG_TIPC is not set
# CONFIG_ATM is not set
# CONFIG_BRIDGE is not set
# CONFIG_NET_DSA is not set
# CONFIG_VLAN_8021Q is not set
# CONFIG_DECNET is not set
# CONFIG_LLC2 is not set
# CONFIG_IPX is not set
# CONFIG_ATALK is not set
# CONFIG_X25 is not set
# CONFIG_LAPB is not set
# CONFIG_ECONET is not set
# CONFIG_WAN_ROUTER is not set
# CONFIG_NET_SCHED is not set
#
# Network testing
#
# CONFIG_NET_PKTGEN is not set
# CONFIG_HAMRADIO is not set
# CONFIG_CAN is not set
# CONFIG_IRDA is not set
# CONFIG_BT is not set
# CONFIG_AF_RXRPC is not set
# CONFIG_PHONET is not set
# CONFIG_WIRELESS is not set
# CONFIG_RFKILL is not set
# CONFIG_NET_9P is not set
#
# UML Network Devices
#
CONFIG_UML_NET=y
CONFIG_UML_NET_ETHERTAP=y
CONFIG_UML_NET_TUNTAP=y
CONFIG_UML_NET_SLIP=y
CONFIG_UML_NET_DAEMON=y
# CONFIG_UML_NET_VDE is not set
CONFIG_UML_NET_MCAST=y
# CONFIG_UML_NET_PCAP is not set
CONFIG_UML_NET_SLIRP=y
CONFIG_NETDEVICES=y
CONFIG_DUMMY=m
# CONFIG_BONDING is not set
# CONFIG_MACVLAN is not set
# CONFIG_EQUALIZER is not set
CONFIG_TUN=m
# CONFIG_VETH is not set
#
# Wireless LAN
#
# CONFIG_WLAN_PRE80211 is not set
# CONFIG_WLAN_80211 is not set
# CONFIG_IWLWIFI_LEDS is not set
# CONFIG_WAN is not set
CONFIG_PPP=m
# CONFIG_PPP_MULTILINK is not set
# CONFIG_PPP_FILTER is not set
# CONFIG_PPP_ASYNC is not set
# CONFIG_PPP_SYNC_TTY is not set
# CONFIG_PPP_DEFLATE is not set
# CONFIG_PPP_BSDCOMP is not set
# CONFIG_PPP_MPPE is not set
# CONFIG_PPPOE is not set
# CONFIG_PPPOL2TP is not set
CONFIG_SLIP=m
# CONFIG_SLIP_COMPRESSED is not set
CONFIG_SLHC=m
# CONFIG_SLIP_SMART is not set
# CONFIG_SLIP_MODE_SLIP6 is not set
# CONFIG_NETCONSOLE is not set
# CONFIG_NETPOLL is not set
# CONFIG_NET_POLL_CONTROLLER is not set
# CONFIG_CONNECTOR is not set
#
# File systems
#
CONFIG_EXT2_FS=y
# CONFIG_EXT2_FS_XATTR is not set
# CONFIG_EXT2_FS_XIP is not set
CONFIG_EXT3_FS=y
# CONFIG_EXT3_FS_XATTR is not set
# CONFIG_EXT4_FS is not set
CONFIG_JBD=y
CONFIG_REISERFS_FS=y
# CONFIG_REISERFS_CHECK is not set
# CONFIG_REISERFS_PROC_INFO is not set
# CONFIG_REISERFS_FS_XATTR is not set
# CONFIG_JFS_FS is not set
# CONFIG_FS_POSIX_ACL is not set
CONFIG_FILE_LOCKING=y
# CONFIG_XFS_FS is not set
# CONFIG_GFS2_FS is not set
# CONFIG_OCFS2_FS is not set
CONFIG_DNOTIFY=y
CONFIG_INOTIFY=y
CONFIG_INOTIFY_USER=y
CONFIG_QUOTA=y
# CONFIG_QUOTA_NETLINK_INTERFACE is not set
CONFIG_PRINT_QUOTA_WARNING=y
# CONFIG_QFMT_V1 is not set
# CONFIG_QFMT_V2 is not set
CONFIG_QUOTACTL=y
CONFIG_AUTOFS_FS=m
CONFIG_AUTOFS4_FS=m
# CONFIG_FUSE_FS is not set
#
# CD-ROM/DVD Filesystems
#
CONFIG_ISO9660_FS=m
CONFIG_JOLIET=y
# CONFIG_ZISOFS is not set
# CONFIG_UDF_FS is not set
#
# DOS/FAT/NT Filesystems
#
# CONFIG_MSDOS_FS is not set
# CONFIG_VFAT_FS is not set
# CONFIG_NTFS_FS is not set
#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
CONFIG_PROC_SYSCTL=y
CONFIG_PROC_PAGE_MONITOR=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
# CONFIG_TMPFS_POSIX_ACL is not set
# CONFIG_HUGETLB_PAGE is not set
# CONFIG_CONFIGFS_FS is not set
#
# Miscellaneous filesystems
#
# CONFIG_ADFS_FS is not set
# CONFIG_AFFS_FS is not set
# CONFIG_HFS_FS is not set
# CONFIG_HFSPLUS_FS is not set
# CONFIG_BEFS_FS is not set
# CONFIG_BFS_FS is not set
# CONFIG_EFS_FS is not set
# CONFIG_CRAMFS is not set
# CONFIG_VXFS_FS is not set
# CONFIG_MINIX_FS is not set
# CONFIG_OMFS_FS is not set
# CONFIG_HPFS_FS is not set
# CONFIG_QNX4FS_FS is not set
# CONFIG_ROMFS_FS is not set
# CONFIG_SYSV_FS is not set
# CONFIG_UFS_FS is not set
CONFIG_NETWORK_FILESYSTEMS=y
CONFIG_NFS_FS=y
CONFIG_NFS_V3=y
# CONFIG_NFS_V3_ACL is not set
# CONFIG_NFS_V4 is not set
# CONFIG_NFSD is not set
CONFIG_LOCKD=y
CONFIG_LOCKD_V4=y
CONFIG_NFS_COMMON=y
CONFIG_SUNRPC=y
# CONFIG_SUNRPC_REGISTER_V4 is not set
# CONFIG_RPCSEC_GSS_KRB5 is not set
# CONFIG_RPCSEC_GSS_SPKM3 is not set
# CONFIG_SMB_FS is not set
# CONFIG_CIFS is not set
# CONFIG_NCP_FS is not set
# CONFIG_CODA_FS is not set
# CONFIG_AFS_FS is not set
#
# Partition Types
#
# CONFIG_PARTITION_ADVANCED is not set
CONFIG_MSDOS_PARTITION=y
CONFIG_NLS=y
CONFIG_NLS_DEFAULT="iso8859-1"
# CONFIG_NLS_CODEPAGE_437 is not set
# CONFIG_NLS_CODEPAGE_737 is not set
# CONFIG_NLS_CODEPAGE_775 is not set
# CONFIG_NLS_CODEPAGE_850 is not set
# CONFIG_NLS_CODEPAGE_852 is not set
# CONFIG_NLS_CODEPAGE_855 is not set
# CONFIG_NLS_CODEPAGE_857 is not set
# CONFIG_NLS_CODEPAGE_860 is not set
# CONFIG_NLS_CODEPAGE_861 is not set
# CONFIG_NLS_CODEPAGE_862 is not set
# CONFIG_NLS_CODEPAGE_863 is not set
# CONFIG_NLS_CODEPAGE_864 is not set
# CONFIG_NLS_CODEPAGE_865 is not set
# CONFIG_NLS_CODEPAGE_866 is not set
# CONFIG_NLS_CODEPAGE_869 is not set
# CONFIG_NLS_CODEPAGE_936 is not set
# CONFIG_NLS_CODEPAGE_950 is not set
# CONFIG_NLS_CODEPAGE_932 is not set
# CONFIG_NLS_CODEPAGE_949 is not set
# CONFIG_NLS_CODEPAGE_874 is not set
# CONFIG_NLS_ISO8859_8 is not set
# CONFIG_NLS_CODEPAGE_1250 is not set
# CONFIG_NLS_CODEPAGE_1251 is not set
# CONFIG_NLS_ASCII is not set
# CONFIG_NLS_ISO8859_1 is not set
# CONFIG_NLS_ISO8859_2 is not set
# CONFIG_NLS_ISO8859_3 is not set
# CONFIG_NLS_ISO8859_4 is not set
# CONFIG_NLS_ISO8859_5 is not set
# CONFIG_NLS_ISO8859_6 is not set
# CONFIG_NLS_ISO8859_7 is not set
# CONFIG_NLS_ISO8859_9 is not set
# CONFIG_NLS_ISO8859_13 is not set
# CONFIG_NLS_ISO8859_14 is not set
# CONFIG_NLS_ISO8859_15 is not set
# CONFIG_NLS_KOI8_R is not set
# CONFIG_NLS_KOI8_U is not set
# CONFIG_NLS_UTF8 is not set
# CONFIG_DLM is not set
#
# Security options
#
# CONFIG_KEYS is not set
# CONFIG_SECURITY is not set
# CONFIG_SECURITYFS is not set
# CONFIG_SECURITY_FILE_CAPABILITIES is not set
CONFIG_CRYPTO=y
#
# Crypto core or helper
#
# CONFIG_CRYPTO_FIPS is not set
CONFIG_CRYPTO_ALGAPI2=m
CONFIG_CRYPTO_AEAD2=m
CONFIG_CRYPTO_BLKCIPHER2=m
CONFIG_CRYPTO_HASH2=m
CONFIG_CRYPTO_RNG2=m
CONFIG_CRYPTO_MANAGER=m
CONFIG_CRYPTO_MANAGER2=m
# CONFIG_CRYPTO_GF128MUL is not set
# CONFIG_CRYPTO_NULL is not set
# CONFIG_CRYPTO_CRYPTD is not set
# CONFIG_CRYPTO_AUTHENC is not set
CONFIG_CRYPTO_TEST=m
#
# Authenticated Encryption with Associated Data
#
# CONFIG_CRYPTO_CCM is not set
# CONFIG_CRYPTO_GCM is not set
# CONFIG_CRYPTO_SEQIV is not set
#
# Block modes
#
# CONFIG_CRYPTO_CBC is not set
# CONFIG_CRYPTO_CTR is not set
# CONFIG_CRYPTO_CTS is not set
# CONFIG_CRYPTO_ECB is not set
# CONFIG_CRYPTO_LRW is not set
# CONFIG_CRYPTO_PCBC is not set
# CONFIG_CRYPTO_XTS is not set
#
# Hash modes
#
# CONFIG_CRYPTO_HMAC is not set
# CONFIG_CRYPTO_XCBC is not set
#
# Digest
#
# CONFIG_CRYPTO_CRC32C is not set
# CONFIG_CRYPTO_MD4 is not set
# CONFIG_CRYPTO_MD5 is not set
# CONFIG_CRYPTO_MICHAEL_MIC is not set
# CONFIG_CRYPTO_RMD128 is not set
# CONFIG_CRYPTO_RMD160 is not set
# CONFIG_CRYPTO_RMD256 is not set
# CONFIG_CRYPTO_RMD320 is not set
# CONFIG_CRYPTO_SHA1 is not set
# CONFIG_CRYPTO_SHA256 is not set
# CONFIG_CRYPTO_SHA512 is not set
# CONFIG_CRYPTO_TGR192 is not set
# CONFIG_CRYPTO_WP512 is not set
#
# Ciphers
#
# CONFIG_CRYPTO_AES is not set
# CONFIG_CRYPTO_AES_X86_64 is not set
# CONFIG_CRYPTO_ANUBIS is not set
# CONFIG_CRYPTO_ARC4 is not set
# CONFIG_CRYPTO_BLOWFISH is not set
# CONFIG_CRYPTO_CAMELLIA is not set
# CONFIG_CRYPTO_CAST5 is not set
# CONFIG_CRYPTO_CAST6 is not set
# CONFIG_CRYPTO_DES is not set
# CONFIG_CRYPTO_FCRYPT is not set
# CONFIG_CRYPTO_KHAZAD is not set
# CONFIG_CRYPTO_SALSA20 is not set
# CONFIG_CRYPTO_SALSA20_X86_64 is not set
# CONFIG_CRYPTO_SEED is not set
# CONFIG_CRYPTO_SERPENT is not set
# CONFIG_CRYPTO_TEA is not set
# CONFIG_CRYPTO_TWOFISH is not set
# CONFIG_CRYPTO_TWOFISH_X86_64 is not set
#
# Compression
#
# CONFIG_CRYPTO_DEFLATE is not set
# CONFIG_CRYPTO_LZO is not set
#
# Random Number Generation
#
# CONFIG_CRYPTO_ANSI_CPRNG is not set
CONFIG_CRYPTO_HW=y
#
# Library routines
#
CONFIG_BITREVERSE=m
CONFIG_GENERIC_FIND_FIRST_BIT=y
CONFIG_GENERIC_FIND_NEXT_BIT=y
# CONFIG_CRC_CCITT is not set
# CONFIG_CRC16 is not set
# CONFIG_CRC_T10DIF is not set
# CONFIG_CRC_ITU_T is not set
CONFIG_CRC32=m
# CONFIG_CRC7 is not set
# CONFIG_LIBCRC32C is not set
CONFIG_PLIST=y
CONFIG_HAS_DMA=y
#
# SCSI device support
#
# CONFIG_RAID_ATTRS is not set
# CONFIG_SCSI is not set
# CONFIG_SCSI_DMA is not set
# CONFIG_SCSI_NETLINK is not set
# CONFIG_MD is not set
# CONFIG_NEW_LEDS is not set
# CONFIG_INPUT is not set
#
# Kernel hacking
#
# CONFIG_PRINTK_TIME is not set
CONFIG_ENABLE_WARN_DEPRECATED=y
CONFIG_ENABLE_MUST_CHECK=y
CONFIG_FRAME_WARN=2048
# CONFIG_UNUSED_SYMBOLS is not set
# CONFIG_DEBUG_FS is not set
CONFIG_DEBUG_KERNEL=y
# CONFIG_DEBUG_SHIRQ is not set
CONFIG_DETECT_SOFTLOCKUP=y
# CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set
CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0
CONFIG_SCHED_DEBUG=y
# CONFIG_SCHEDSTATS is not set
# CONFIG_TIMER_STATS is not set
# CONFIG_DEBUG_OBJECTS is not set
# CONFIG_DEBUG_SLAB is not set
# CONFIG_DEBUG_RT_MUTEXES is not set
# CONFIG_RT_MUTEX_TESTER is not set
# CONFIG_DEBUG_SPINLOCK is not set
# CONFIG_DEBUG_MUTEXES is not set
# CONFIG_DEBUG_SPINLOCK_SLEEP is not set
# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set
# CONFIG_DEBUG_KOBJECT is not set
CONFIG_DEBUG_BUGVERBOSE=y
CONFIG_DEBUG_INFO=y
# CONFIG_DEBUG_VM is not set
# CONFIG_DEBUG_WRITECOUNT is not set
CONFIG_DEBUG_MEMORY_INIT=y
# CONFIG_DEBUG_LIST is not set
# CONFIG_DEBUG_SG is not set
CONFIG_FRAME_POINTER=y
# CONFIG_BOOT_PRINTK_DELAY is not set
# CONFIG_RCU_TORTURE_TEST is not set
CONFIG_RCU_CPU_STALL_DETECTOR=y
# CONFIG_BACKTRACE_SELF_TEST is not set
# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set
# CONFIG_FAULT_INJECTION is not set
CONFIG_SYSCTL_SYSCALL_CHECK=y
#
# Tracers
#
# CONFIG_SCHED_TRACER is not set
# CONFIG_CONTEXT_SWITCH_TRACER is not set
# CONFIG_BOOT_TRACER is not set
# CONFIG_DYNAMIC_PRINTK_DEBUG is not set
# CONFIG_SAMPLES is not set
# CONFIG_GPROF is not set
# CONFIG_GCOV is not set
# CONFIG_DEBUG_STACK_USAGE is not set
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Fix ARCH=um segfault on x86-64.
2009-03-06 9:50 ` Geert Uytterhoeven
@ 2009-03-06 9:51 ` Geert Uytterhoeven
2009-03-06 11:18 ` Américo Wang
2009-03-06 22:20 ` Rob Landley
1 sibling, 1 reply; 9+ messages in thread
From: Geert Uytterhoeven @ 2009-03-06 9:51 UTC (permalink / raw)
To: Américo Wang; +Cc: Rob Landley, user-mode-linux-devel, linux-kernel
On Fri, Mar 6, 2009 at 10:50, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
> On Fri, Mar 6, 2009 at 09:48, Américo Wang <xiyou.wangcong@gmail.com> wrote:
>> On Fri, Mar 06, 2009 at 12:42:14AM -0600, Rob Landley wrote:
>>>Apparently, nobody other than me has ever attempted to use User Mode Linux
>>>built from 2.6.28 on x86-64, because it doesn't work. It still doesn't work
>>>in current git. I complained about it not working back in January:
>>>
>>>http://sourceforge.net/mailarchive/forum.php?thread_name=200901130159.04389.rob%40landley.net&forum_name=user-
>>>mode-linux-devel
>>>http://lkml.indiana.edu/hypermail/linux/kernel/0901.2/00669.html
>>>
>>>And today, I bothered to track down why.
>>>
>>>This is the commit that broke it, when Peter Anvin merged x86 and x86-64 for
>>>ARCH=um: http://kernel.org/hg/linux-2.6/rev/117978
>>>
>>>Here's a patch that fixes it for me:
>>
>> Thanks, Bob!
>
> I've just did a build of plain v2.6.28 on amd64 aka x86-64. The
> resulting image ran fine.
So I'm wondering: why does it work for me and not for you?
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Fix ARCH=um segfault on x86-64.
2009-03-06 9:51 ` Geert Uytterhoeven
@ 2009-03-06 11:18 ` Américo Wang
2009-03-06 14:35 ` Jeff Dike
0 siblings, 1 reply; 9+ messages in thread
From: Américo Wang @ 2009-03-06 11:18 UTC (permalink / raw)
To: Geert Uytterhoeven
Cc: Américo Wang, Rob Landley, user-mode-linux-devel,
linux-kernel
On Fri, Mar 06, 2009 at 10:51:12AM +0100, Geert Uytterhoeven wrote:
>On Fri, Mar 6, 2009 at 10:50, Geert Uytterhoeven <geert@linux-m68k.org> wrote:
>> On Fri, Mar 6, 2009 at 09:48, Américo Wang <xiyou.wangcong@gmail.com> wrote:
>>> On Fri, Mar 06, 2009 at 12:42:14AM -0600, Rob Landley wrote:
>>>>Apparently, nobody other than me has ever attempted to use User Mode Linux
>>>>built from 2.6.28 on x86-64, because it doesn't work. It still doesn't work
>>>>in current git. I complained about it not working back in January:
>>>>
>>>>http://sourceforge.net/mailarchive/forum.php?thread_name=200901130159.04389.rob%40landley.net&forum_name=user-
>>>>mode-linux-devel
>>>>http://lkml.indiana.edu/hypermail/linux/kernel/0901.2/00669.html
>>>>
>>>>And today, I bothered to track down why.
>>>>
>>>>This is the commit that broke it, when Peter Anvin merged x86 and x86-64 for
>>>>ARCH=um: http://kernel.org/hg/linux-2.6/rev/117978
>>>>
>>>>Here's a patch that fixes it for me:
>>>
>>> Thanks, Bob!
>>
>> I've just did a build of plain v2.6.28 on amd64 aka x86-64. The
>> resulting image ran fine.
>
>So I'm wondering: why does it work for me and not for you?
>
It does work well x86_64, but my question is that whether this will
break i386 or not, since before, CONFIG_3_LEVEL_PGTABLES depends on
EXPERIMENTAL on i386, this patch removes it.
--
Do what you love, f**k the rest! F**k the regulations!
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Fix ARCH=um segfault on x86-64.
2009-03-06 11:18 ` Américo Wang
@ 2009-03-06 14:35 ` Jeff Dike
2009-03-06 22:22 ` Rob Landley
2009-03-10 14:29 ` Américo Wang
0 siblings, 2 replies; 9+ messages in thread
From: Jeff Dike @ 2009-03-06 14:35 UTC (permalink / raw)
To: Am??rico Wang
Cc: Geert Uytterhoeven, Rob Landley, user-mode-linux-devel,
linux-kernel
On Fri, Mar 06, 2009 at 07:18:34PM +0800, Am??rico Wang wrote:
> It does work well x86_64, but my question is that whether this will
> break i386 or not, since before, CONFIG_3_LEVEL_PGTABLES depends on
> EXPERIMENTAL on i386, this patch removes it.
As long as CONFIG_3_LEVEL_PGTABLES is off on 32-bit, it should be fine.
It did work, last I checked, but 3-level page tables on 32-bit is a
very rarely used combination, and not useful.
Jeff
--
Work email - jdike at linux dot intel dot com
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Fix ARCH=um segfault on x86-64.
2009-03-06 9:50 ` Geert Uytterhoeven
2009-03-06 9:51 ` Geert Uytterhoeven
@ 2009-03-06 22:20 ` Rob Landley
1 sibling, 0 replies; 9+ messages in thread
From: Rob Landley @ 2009-03-06 22:20 UTC (permalink / raw)
To: Geert Uytterhoeven; +Cc: Américo Wang, user-mode-linux-devel, linux-kernel
On Friday 06 March 2009 03:50:38 Geert Uytterhoeven wrote:
> On Fri, Mar 6, 2009 at 09:48, Américo Wang <xiyou.wangcong@gmail.com> wrote:
> > On Fri, Mar 06, 2009 at 12:42:14AM -0600, Rob Landley wrote:
> >>Apparently, nobody other than me has ever attempted to use User Mode
> >> Linux built from 2.6.28 on x86-64, because it doesn't work. It still
> >> doesn't work in current git. I complained about it not working back in
> >> January:
> >>
> >>http://sourceforge.net/mailarchive/forum.php?thread_name=200901130159.043
> >>89.rob%40landley.net&forum_name=user- mode-linux-devel
> >>http://lkml.indiana.edu/hypermail/linux/kernel/0901.2/00669.html
> >>
> >>And today, I bothered to track down why.
> >>
> >>This is the commit that broke it, when Peter Anvin merged x86 and x86-64
> >> for ARCH=um: http://kernel.org/hg/linux-2.6/rev/117978
> >>
> >>Here's a patch that fixes it for me:
> >
> > Thanks, Bob!
>
> I've just did a build of plain v2.6.28 on amd64 aka x86-64. The
> resulting image ran fine.
>
> I attached my .config.
Which contains:
CONFIG_3_LEVEL_PGTABLES=y
So the question is, why is your config saving that value, and mine isn't?
Ah, I found it. You enabled CONFIG_EXPERIMENTAL, and I didn't. That's the
difference.
Ok, CONFIG_EXPERIMENTAL is required in order for UML to initialize its memory
management. That makes a bit more sense why other people haven't seen this...
Rob
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Fix ARCH=um segfault on x86-64.
2009-03-06 14:35 ` Jeff Dike
@ 2009-03-06 22:22 ` Rob Landley
2009-03-10 14:29 ` Américo Wang
1 sibling, 0 replies; 9+ messages in thread
From: Rob Landley @ 2009-03-06 22:22 UTC (permalink / raw)
To: Jeff Dike
Cc: Am??rico Wang, Geert Uytterhoeven, user-mode-linux-devel,
linux-kernel
On Friday 06 March 2009 08:35:43 Jeff Dike wrote:
> On Fri, Mar 06, 2009 at 07:18:34PM +0800, Am??rico Wang wrote:
> > It does work well x86_64, but my question is that whether this will
> > break i386 or not, since before, CONFIG_3_LEVEL_PGTABLES depends on
> > EXPERIMENTAL on i386, this patch removes it.
>
> As long as CONFIG_3_LEVEL_PGTABLES is off on 32-bit, it should be fine.
>
> It did work, last I checked, but 3-level page tables on 32-bit is a
> very rarely used combination, and not useful.
I have no idea if my patch is the _right_ fix, I just know I couldn't use UML
for 2 months and now I can.
If you enable CONFIG_EXPERIMENTAL, then it writes it out to the config file.
If you don't, it hides it and doesn't write it out even though the value would
be y. (The visibility predicates affect the resulting data.)
Rob
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [PATCH] Fix ARCH=um segfault on x86-64.
2009-03-06 14:35 ` Jeff Dike
2009-03-06 22:22 ` Rob Landley
@ 2009-03-10 14:29 ` Américo Wang
1 sibling, 0 replies; 9+ messages in thread
From: Américo Wang @ 2009-03-10 14:29 UTC (permalink / raw)
To: Jeff Dike
Cc: Am??rico Wang, Geert Uytterhoeven, Rob Landley,
user-mode-linux-devel, linux-kernel
On Fri, Mar 06, 2009 at 09:35:43AM -0500, Jeff Dike wrote:
>On Fri, Mar 06, 2009 at 07:18:34PM +0800, Am??rico Wang wrote:
>> It does work well x86_64, but my question is that whether this will
>> break i386 or not, since before, CONFIG_3_LEVEL_PGTABLES depends on
>> EXPERIMENTAL on i386, this patch removes it.
>
>As long as CONFIG_3_LEVEL_PGTABLES is off on 32-bit, it should be fine.
>
>It did work, last I checked, but 3-level page tables on 32-bit is a
>very rarely used combination, and not useful.
>
So this patch should be fine, right? :)
Thanks for your comments!
--
Do what you love, f**k the rest! F**k the regulations!
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2009-03-10 14:29 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-03-06 6:42 [PATCH] Fix ARCH=um segfault on x86-64 Rob Landley
2009-03-06 8:48 ` Américo Wang
2009-03-06 9:50 ` Geert Uytterhoeven
2009-03-06 9:51 ` Geert Uytterhoeven
2009-03-06 11:18 ` Américo Wang
2009-03-06 14:35 ` Jeff Dike
2009-03-06 22:22 ` Rob Landley
2009-03-10 14:29 ` Américo Wang
2009-03-06 22:20 ` Rob Landley
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox