17 Oct, 2007

5 commits

  • Enable tickless support.

    CONFIG_TICK_ONESHOT and CONFIG_NO_HZ are enabled.

    itimer_clockevent gets CLOCK_EVT_FEAT_ONESHOT and an implementation of
    .set_next_event.

    CONFIG_UML_REAL_TIME_CLOCK goes away because it only makes sense when there is
    a clock ticking away all the time. timer_handler now just calls do_IRQ once
    without trying to figure out how many ticks to emulate.

    The idle loop now needs to turn ticking on and off.

    Userspace ticks keep happening as usual. However, the userspace loop keep
    track of when the next wakeup should happen and suppresses process ticks until
    that happens.

    Signed-off-by: Jeff Dike
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Enable CONFIG_GENERIC_CLOCKEVENTS.

    timer_irq gets its name changed to timer_handler, and becomes the recipient of
    timer signals.

    The clock_event_device is set up to imitate the current ticking clock, i.e.
    CLOCK_EVT_FEAT_ONESHOT is not enabled yet.

    disable_timer now doesn't ignore SIGALRM and SIGVTALRM because that breaks
    delay calibration.

    Signed-off-by: Jeff Dike
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Enable CONFIG_GENERIC_TIME.

    As a side-effect of this, the UML implementations of do_gettimeofday and
    do_settimeofday go away, as these are provided by generic code. set_time also
    goes away since it was only used by do_settimeofday.

    Signed-off-by: Jeff Dike
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • Formatting changes in the files which have been changed in the
    tt-removal patchset so far. These include:
    copyright updates
    header file trimming
    style fixes
    adding severity to printks
    indenting Kconfig help according to the predominant kernel style

    These changes should be entirely non-functional.

    Signed-off-by: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • This patchset throws out tt mode, which has been non-functional for a while.

    This is done in phases, interspersed with code cleanups on the affected files.

    The removal is done as follows:
    remove all code, config options, and files which depend on
    CONFIG_MODE_TT
    get rid of the CHOOSE_MODE macro, which decided whether to
    call tt-mode or skas-mode code, and replace invocations with their
    skas portions
    replace all now-trivial procedures with their skas equivalents

    There are now a bunch of now-redundant pieces of data structures, including
    mode-specific pieces of the thread structure, pt_regs, and mm_context. These
    are all replaced with their skas-specific contents.

    As part of the ongoing style compliance project, I made a style pass over all
    files that were changed. There are three such patches, one for each phase,
    covering the files affected by that phase but no later ones.

    I noticed that we weren't freeing the LDT state associated with a process when
    it exited, so that's fixed in one of the later patches.

    The last patch is a tidying patch which I've had for a while, but which caused
    inexplicable crashes under tt mode. Since that is no longer a problem, this
    can now go in.

    This patch:

    Start getting rid of tt mode support.

    This patch throws out CONFIG_MODE_TT and all config options, code, and files
    which depend on it.

    CONFIG_MODE_SKAS is gone and everything that depends on it is included
    unconditionally.

    The few changed lines are in re-written Kconfig help, lines which needed
    something skas-related removed from them, and a few more which weren't
    strictly deletions.

    Signed-off-by: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     

09 Jun, 2007

1 commit


11 May, 2007

1 commit

  • Make kernel stacks be 1 page on i386 and 2 pages on x86_64. These match the
    host values.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     

10 May, 2007

1 commit

  • Enable (i)SCSI on UML, dunno why SCSI was deemed broken, it works like a
    charm.

    Signed-off-by: Peter Zijlstra
    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Peter Zijlstra
     

15 Mar, 2007

1 commit


12 Feb, 2007

1 commit

  • * Split the implementation-agnostic stuff in separate files.
    * Make sure that targets using non-default request_irq() pull
    kernel/irq/devres.o
    * Introduce new symbols (HAS_IOPORT and HAS_IOMEM) defaulting to positive;
    allow architectures to turn them off (we needed these symbols anyway for
    dependencies of quite a few drivers).
    * protect the ioport-related parts of lib/devres.o with CONFIG_HAS_IOPORT.

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     

09 Dec, 2006

1 commit

  • The BUG changes in -mm3 need some arch support. This patch adds the UML
    support needed. For the most part, it was stolen from the underlying
    architecture. The exception is the kernel eip < PAGE_OFFSET test, which is
    wrong for skas mode UMLs.

    Signed-off-by: Jeff Dike
    Cc: Jeremy Fitzhardinge
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     

21 Oct, 2006

2 commits

  • This should make sure that, for UML, host's configuration files are not
    considered, which avoids various pains to the user. Our dependency are such
    that the obtained Kconfig will be valid and will lead to successful
    compilation - however they cannot prevent an user from disabling any boot
    device, and if an option is not set in the read .config (say
    /boot/config-XXX), with make menuconfig ARCH=um, it is not set. This always
    disables UBD and all console I/O channels, which leads to non-working UML
    kernels, so this bothers users - especially now, since it will happen on
    almost every machine (/boot/config-`uname -r` exists almost on every machine).
    It can be workarounded with make defconfig ARCH=um, but it is non-obvious and
    can be avoided, so please _do_ merge this patch.

    Given the existence of options, it could be interesting to implement
    (additionally) "option required" - with it, Kconfig will refuse reading a
    .config file (from wherever it comes) if the given option is not set. With
    this, one could mark with it the option characteristic of the given
    architecture (it was an old proposal of Roman Zippel, when I pointed out our
    problem):

    config UML
    option required
    default y

    However this should be further discussed:
    *) for x86, it must support constructs like:

    ==arch/i386/Kconfig==
    config 64BIT
    option required
    default n
    where Kconfig must require that CONFIG_64BIT is disabled or not present in the
    read .config.

    *) do we want to do such checks only for the starting defconfig or also for
    .config? Which leads to:
    *) I may want to port a x86_64 .config to x86 and viceversa, or even among more
    different archs. Should that be allowed, and in which measure (the user may
    force skipping the check for a .config or it is only given a warning by
    default)?

    Cc: Roman Zippel
    Cc:
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Cc: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paolo 'Blaisorblade' Giarrusso
     
  • arch/um/sys-x86_64/ptrace.c:20:1: warning: "SC_SS" redefined
    In file included from arch/um/include/sysdep/ptrace.h:18,
    from include/asm/ptrace-generic.h:12,
    from include/asm/ptrace.h:15,
    from arch/um/sys-x86_64/ptrace.c:8:
    arch/um/include/sysdep/sc.h:38:1: warning: this is the location of the previous definition
    arch/um/sys-x86_64/ptrace.c: In function 'putreg':
    arch/um/sys-x86_64/ptrace.c:63: warning: implicit declaration of function 'SC_FS_BASE'
    arch/um/sys-x86_64/ptrace.c:63: error: invalid lvalue in unary '&'
    arch/um/sys-x86_64/ptrace.c:63: warning: implicit declaration of function 'SC_GS_BASE'
    arch/um/sys-x86_64/ptrace.c:63: error: invalid lvalue in unary '&'
    arch/um/sys-x86_64/ptrace.c: In function 'getreg':
    arch/um/sys-x86_64/ptrace.c:101: error: invalid lvalue in unary '&'
    arch/um/sys-x86_64/ptrace.c:101: error: invalid lvalue in unary '&'

    I'd have to say that the fix for this, for now, is this:

    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     

12 Oct, 2006

2 commits


04 Oct, 2006

1 commit


02 May, 2006

1 commit


01 Apr, 2006

1 commit

  • kconfig sanitized around drivers/net

    Signed-off-by: Al Viro
    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Al Viro
     

19 Jan, 2006

1 commit

  • *) mark as "EXPERIMENTAL" various items that either aren't very stable or
    that are actively crashing the setup of users which don't really need them
    (i.e. HIGHMEM and 3-level pagetables on x86 - nobody needs either,
    everybody reports "I'm using it and getting trouble").

    *) move net/Kconfig near to the rest of network configurations, and
    drivers/block/Kconfig near "Block layer" submenu.

    *) it's useless and doesn't work well to force NETDEVICES on and to disable
    the prompt like it's done. Better remove the attempt, and change that to a
    simple "default y if UML".

    *) drop the warning about "report problems about HPPFS" - it's redundant
    anyway, as that's the usual procedure, and HPPFS users are especially
    technical (i.e. they know reporting bugs is _good_).

    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Cc: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paolo 'Blaisorblade' Giarrusso
     

12 Jan, 2006

1 commit

  • The MODE_TT help was a little outdated. This updates it in light of the
    existence of skas0 mode. It's also turned off by default since it is mostly
    obsoleted by skas0 mode.

    Signed-off-by: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     

09 Jan, 2006

2 commits

  • Configurable 16-bit UID and friends support

    This allows turning off the legacy 16 bit UID interfaces on embedded platforms.

    text data bss dec hex filename
    3330172 529036 190556 4049764 3dcb64 vmlinux-baseline
    3328268 529040 190556 4047864 3dc3f8 vmlinux

    From: Adrian Bunk

    UID16 was accidentially disabled for !EMBEDDED.

    Signed-off-by: Matt Mackall
    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Matt Mackall
     
  • If MODE_TT=n, MODE_SKAS must be y.

    Signed-off-by: Adrian Bunk
    Acked-by: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Adrian Bunk
     

19 Dec, 2005

1 commit

  • So you may have seen the miniconfig stuff wander by, which means that my
    build script exits if there's a .config error, and we have this:

    fs/Kconfig:1749:warning: 'select' used by config symbol 'CIFS_UPCALL'
    refer to undefined symbol 'CONNECTOR'

    This makes it shut up.

    Signed-off-by: Rob Landley
    [ Verified it makes sense. ]
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Linus Torvalds

    Paolo 'Blaisorblade' Giarrusso
     

14 Nov, 2005

2 commits


07 Nov, 2005

1 commit


31 Oct, 2005

2 commits

  • Remove RWSEM_GENERIC_SPINLOCK, it's now defined (only if needed) by the
    underlying arch/i386/Kconfig.cpu. Leave it only for x86_64. Even there, it's
    totally wrong, as they even have the code to support XCHG_ADD.

    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paolo 'Blaisorblade' Giarrusso
     
  • Make UML share the underlying cpu-specific tuning done on i386.

    Actually, for now many config options aren't used a lot - but that can be done
    later. Also, UML relies on GCC optimization for things like memcpy and such
    more than i386, so specifying the correct -march and -mtune should be enough.
    Later, we may want to correct some other stuff.

    For instance, since FPU context switching, for us, is done (at least
    partially, i.e. between our kernelspace and userspace) by the host, we may
    allow usage of FPU operations by GCC. This doesn't hold for kernelspace vs.
    kernelspace, but we don't support preemption.

    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paolo 'Blaisorblade' Giarrusso
     

05 Sep, 2005

2 commits

  • Noticed by Al Viro - SMP on x86_64 is
    fundamentally broken due to UML's reuse of the host arch's percpu stuff. This
    is OK on x86, but the x86_64 pda stuff just won't work for UML.

    Signed-off-by: Jeff Dike
    Cc: Paolo Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     
  • To the extent that sub-Kconfig files exist elsewhere in the tree, they are
    named Kconfig.foo, rather than the Kconfig_foo that UML has. This patch
    brings the names in line with the rest of the tree.

    Signed-off-by: Jeff Dike
    Cc: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Dike
     

12 Jul, 2005

1 commit

  • Create a new top-level menu named "Networking" thus moving
    net related options and protocol selection way from the drivers
    menu and up on the top-level where they belong.

    To implement this all architectures has to source "net/Kconfig" before
    drivers/*/Kconfig in their Kconfig file. This change has been
    implemented for all architectures.

    Device drivers for ordinary NIC's are still to be found
    in the Device Drivers section, but Bluetooth, IrDA and ax25
    are located with their corresponding menu entries under the new
    networking menu item.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Sam Ravnborg
     

08 Jul, 2005

1 commit

  • Some time ago a trivial patch broke HPPFS (one var became a pointer, not
    all uses were updated). It wasn't fixed at that time because not very
    used, now it's been requested so I've fixed this, and it has been tested
    positively (at least partially).

    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Cc: Jeff Dike
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paolo 'Blaisorblade' Giarrusso
     

24 Jun, 2005

1 commit

  • For all architectures, this just means that you'll see a "Memory Model"
    choice in your architecture menu. For those that implement DISCONTIGMEM,
    you may eventually want to make your ARCH_DISCONTIGMEM_ENABLE a "def_bool
    y" and make your users select DISCONTIGMEM right out of the new choice
    menu. The only disadvantage might be if you have some specific things that
    you need in your help option to explain something about DISCONTIGMEM.

    Signed-off-by: Dave Hansen
    Signed-off-by: Adrian Bunk
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dave Hansen
     

22 Jun, 2005

1 commit


01 May, 2005

1 commit

  • We want to make possible, for the user, to enable the i586 AES implementation.
    This requires a restructure.

    - Add a CONFIG_UML_X86 to notify that we are building a UML for i386.

    - Rename CONFIG_64_BIT to CONFIG_64BIT as is used for all other archs

    - Tell crypto/Kconfig that UML_X86 is as good as X86

    - Tell it that it must exclude not X86_64 but 64BIT, which will give the
    same results.

    - Tell kbuild to descend down into arch/i386/crypto/ to build what's needed.

    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Paolo 'Blaisorblade' Giarrusso
     

17 Apr, 2005

1 commit

  • Initial git repository build. I'm not bothering with the full history,
    even though we have it. We can create a separate "historical" git
    archive of that later if we want to, and in the meantime it's about
    3.2GB when imported into git - space that would just make the early
    git days unnecessarily complicated, when we don't have a lot of good
    infrastructure for it.

    Let it rip!

    Linus Torvalds