Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Commits on Aug 26, 2010
  1. @NigelCunningham

    TuxOnIce 3.2-rc1

    NigelCunningham authored
    First release candidate for TuxOnIce 3.2.
    Signed-off-by: Nigel Cunningham <>
  2. @NigelCunningham

    Compression config storage readability.

    NigelCunningham authored
    Improve the readability of these functions by using an
    offset variable that is updated as we go. While at it,
    convert the length and expected compression to be stored
    as integers rather than unsigned longs.
    Signed-off-by: Nigel Cunningham <>
  3. @NigelCunningham

    Compression config serialise: Variable cleanup

    NigelCunningham authored
    Cleanup the variables used in toi_compress_save_config_info and the
    load function. Rename namelen to just len and remove the total_len
    variable in the save function.
    Signed-off-by: Nigel Cunningham <>
  4. @NigelCunningham

    New debugging messages (compression, i/o)

    NigelCunningham authored
    Add new debugging messages, aimed at checking everything is
    right in the area of compression and reading the image.
    Signed-off-by: Nigel Cunningham <>
  5. @NigelCunningham

    Separate kernel parameter for pausing.

    NigelCunningham authored
    Add toi_pause, a separate parameter for enabling pausing from
    the commandline. This is useful for scripted testing where you
    want to enable the verbose debugging at resume without having
    TuxOnIce also require interaction before continuing resuming.
    Signed-off-by: Nigel Cunningham <>
  6. @NigelCunningham

    First filter doesn't need to be passed around

    NigelCunningham authored
    Prior to this commit, each thread figured out what the first
    module is (the one to receive data from the core), and passed
    it around in function parameters. Just calculate it once and
    store it in a file level variable.
    Signed-off-by: Nigel Cunningham <>
  7. @NigelCunningham

    Remove compression checking code.

    NigelCunningham authored
    Now that I've found the cause of those -22 errors, remove the
    compression checking code. Cryptoapi never was at fault, even
    though I was unsure at times.
    Signed-off-by: Nigel Cunningham <>
  8. @NigelCunningham

    Improve handling at end of reading data.

    NigelCunningham authored
    Improve the handling when finishing reading data. Particularly in
    multithreaded operation, there are lots of possible places that
    each thread can be in. Most of these changes were done while working
    on the code that tried making everything lockless. That code won't
    be merged (it actually slowed things down), but this is some fruit
    that will see the light of day.
    Signed-off-by: Nigel Cunningham <>
  9. @NigelCunningham

    Replace char* with u8* in compression code.

    NigelCunningham authored
    Replace char* with u8* for consistency in the compression code.
    Signed-off-by: Nigel Cunningham <>
  10. @NigelCunningham

    Add pagedir debugging code.

    NigelCunningham authored
    Add code to make debugging pageset 1 load addresses simpler in future.
    Signed-off-by: Nigel Cunningham <>
  11. @NigelCunningham

    Small pageset1 highmem load address cleanup

    NigelCunningham authored
    A small cleanup to the code recording what pages we'll use for
    loading pageset1.
    Signed-off-by: Nigel Cunningham <>
  12. @NigelCunningham

    Make bitmaps more multithread friendly.

    NigelCunningham authored
    Make our modifications to swsusp's bitmap support more friendly
    to multithreading, by modifying support to allow for more than
    two state structures that can be used for iterating over a bitmap.
    We then use the changes to avoid duplicating bitmaps when finding
    where to load pageset1 pages, and when doing I/O.
    Signed-off-by: Nigel Cunningham <>
Commits on Aug 23, 2010
  1. @NigelCunningham

    Still read when test_bio is enabled.

    NigelCunningham authored
    Still do reads when test_bio is enabled, so we properly check
    for image headers and set ourselves up for it being disabled.
    Signed-off-by: Nigel Cunningham <>
  2. @NigelCunningham

    Don't do md_check_recovery if freezing.

    NigelCunningham authored
    Don't let the md_check_recovery thread do its work if the freezer is on.
    Signed-off-by: Nigel Cunningham <>
  3. @NigelCunningham

    Rename bitmap allocation/freeing functions

    NigelCunningham authored
    Rename the TuxOnIce functions for allocating and freeing
    individual bitmaps so they follow the toi_* pattern.
    Signed-off-by: Nigel Cunningham <>
  4. @NigelCunningham

    Correct usm header storage functions.

    NigelCunningham authored
    The userspace storage manager needs some love. The functions
    for storing configuration in the image header weren't taking
    account of the NULL on the end, and didn't also store the
    length of the usm's path. I know it's not being used at the
    moment, but it should still be right!
    Signed-off-by: Nigel Cunningham <>
  5. @NigelCunningham

    Avoid possibility of a negative storage available

    NigelCunningham authored
    Make sure we avoid all possibility of returning a negative number
    (unsigned!) for the amount of storage available after overhead
    is taken into account.
    Signed-off-by: Nigel Cunningham <>
  6. @NigelCunningham

    Improve end of storage handling.

    NigelCunningham authored
    If we're writing the image and run out of storage, we should record
    that we're aborting immediately (rather than in higher levels) and
    give a clearer message regarding the problem.
    Signed-off-by: Nigel Cunningham <>
  7. @NigelCunningham

    Fix BIO debugging printk formatting.

    NigelCunningham authored
    We want to print the dev_t, not the address of the struct bdev,
    and a sector is a long int, not int.
    Signed-off-by: Nigel Cunningham <>
  8. @NigelCunningham

    Correct format in uiid debugging code

    NigelCunningham authored
    Change formats in uuid debugging code from %x to %lx.
    Signed-off-by: Nigel Cunningham <>
  9. @NigelCunningham

    Use KERN_INFO not KERN_ERR if no userui enabled

    NigelCunningham authored
    Fix Bug 461, which reports that logs are spammed by TuxOnIce
    if no userui is enabled. Fix that by logging at level KERN_INFO
    rather than KERN_ERR.
    Signed-off-by: Nigel Cunningham <>
Commits on Aug 20, 2010
  1. @NigelCunningham
  2. @gregkh


    gregkh authored
  3. @gregkh

    vmware: fix build error in vmware.c

    gregkh authored
    This fixes a build error reported in vmware.c due to commit
    Reported-by: Sven Joachim <>
    Cc: Alok Kataria <>
    Signed-off-by: Greg Kroah-Hartman <>
  4. @torvalds @gregkh

    mm: fix up some user-visible effects of the stack guard page

    torvalds authored gregkh committed
    commit d782437 upstream.
    This commit makes the stack guard page somewhat less visible to user
    space. It does this by:
     - not showing the guard page in /proc/<pid>/maps
       It looks like lvm-tools will actually read /proc/self/maps to figure
       out where all its mappings are, and effectively do a specialized
       "mlockall()" in user space.  By not showing the guard page as part of
       the mapping (by just adding PAGE_SIZE to the start for grows-up
       pages), lvm-tools ends up not being aware of it.
     - by also teaching the _real_ mlock() functionality not to try to lock
       the guard page.
       That would just expand the mapping down to create a new guard page,
       so there really is no point in trying to lock it in place.
    It would perhaps be nice to show the guard page specially in
    /proc/<pid>/maps (or at least mark grow-down segments some way), but
    let's not open ourselves up to more breakage by user space from programs
    that depends on the exact deails of the 'maps' file.
    Special thanks to Henrique de Moraes Holschuh for diving into lvm-tools
    source code to see what was going on with the whole new warning.
    Reported-and-tested-by: François Valenduc <
    Reported-by: Henrique de Moraes Holschuh <>
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Greg Kroah-Hartman <>
  5. @torvalds @gregkh

    mm: fix page table unmap for stack guard page properly

    torvalds authored gregkh committed
    commit 11ac552 upstream.
    We do in fact need to unmap the page table _before_ doing the whole
    stack guard page logic, because if it is needed (mainly 32-bit x86 with
    PAE and CONFIG_HIGHPTE, but other architectures may use it too) then it
    will do a kmap_atomic/kunmap_atomic.
    And those kmaps will create an atomic region that we cannot do
    allocations in.  However, the whole stack expand code will need to do
    anon_vma_prepare() and vma_lock_anon_vma() and they cannot do that in an
    atomic region.
    Now, a better model might actually be to do the anon_vma_prepare() when
    _creating_ a VM_GROWSDOWN segment, and not have to worry about any of
    this at page fault time.  But in the meantime, this is the
    straightforward fix for the issue.
    See for details.
    Reported-by: Wylda <>
    Reported-by: Sedat Dilek <>
    Reported-by: Mike Pagano <>
    Reported-by: François Valenduc <>
    Tested-by: Ed Tomlinson <>
    Cc: Pekka Enberg <>
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Greg Kroah-Hartman <>
Commits on Aug 19, 2010
  1. @NigelCunningham

    TuxOnIce: Fix compress read error.

    NigelCunningham authored
    Fix the occasionally seen bug in which we fail to decompress data,
    but retrying the resume works. It was caused by insufficient locking
    around the readahead list, causing us to sometimes forget pages of
    readahead. Ouch.
    Signed-off-by: Nigel Cunningham <>
Commits on Aug 13, 2010
  1. @NigelCunningham

    Merge branch 'stable' into combined

    NigelCunningham authored
  2. @gregkh


    gregkh authored
  3. @torvalds @gregkh

    x86: don't send SIGBUS for kernel page faults

    torvalds authored gregkh committed
    commit 9605456 upstream.
    It's wrong for several reasons, but the most direct one is that the
    fault may be for the stack accesses to set up a previous SIGBUS.  When
    we have a kernel exception, the kernel exception handler does all the
    fixups, not some user-level signal handler.
    Even apart from the nested SIGBUS issue, it's also wrong to give out
    kernel fault addresses in the signal handler info block, or to send a
    SIGBUS when a system call already returns EFAULT.
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Greg Kroah-Hartman <>
  4. @torvalds @gregkh

    mm: fix missing page table unmap for stack guard page failure case

    torvalds authored gregkh committed
    commit 5528f91 upstream.
    .. which didn't show up in my tests because it's a no-op on x86-64 and
    most other architectures.  But we enter the function with the last-level
    page table mapped, and should unmap it at exit.
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Greg Kroah-Hartman <>
  5. @torvalds @gregkh

    mm: keep a guard page below a grow-down stack segment

    torvalds authored gregkh committed
    commit 320b2b8 upstream.
    This is a rather minimally invasive patch to solve the problem of the
    user stack growing into a memory mapped area below it.  Whenever we fill
    the first page of the stack segment, expand the segment down by one
    Now, admittedly some odd application might _want_ the stack to grow down
    into the preceding memory mapping, and so we may at some point need to
    make this a process tunable (some people might also want to have more
    than a single page of guarding), but let's try the minimal approach
    Tested with trivial application that maps a single page just below the
    stack, and then starts recursing.  Without this, we will get a SIGSEGV
    _after_ the stack has smashed the mapping.  With this patch, we'll get a
    nice SIGBUS just as the stack touches the page just above the mapping.
    Requested-by: Keith Packard <>
    Signed-off-by: Linus Torvalds <>
    Signed-off-by: Greg Kroah-Hartman <>
  6. @sandeen @gregkh

    ext4: fix freeze deadlock under IO

    sandeen authored gregkh committed
    commit 437f88c upstream.
    Commit 6b0310f caused a regression resulting in deadlocks
    when freezing a filesystem which had active IO; the vfs_check_frozen
    level (SB_FREEZE_WRITE) did not let the freeze-related IO syncing
    through.  Duh.
    Changing the test to FREEZE_TRANS should let the normal freeze
    syncing get through the fs, but still block any transactions from
    starting once the fs is completely frozen.
    I tested this by running fsstress in the background while periodically
    snapshotting the fs and running fsck on the result.  I ran into
    occasional deadlocks, but different ones.  I think this is a
    fine fix for the problem at hand, and the other deadlocky things
    will need more investigation.
    Reported-by: Phillip Susi <>
    Signed-off-by: Eric Sandeen <>
    Signed-off-by: "Theodore Ts'o" <>
    Signed-off-by: Greg Kroah-Hartman <>
  7. @virtuoso @gregkh

    crypto: testmgr - add an option to disable cryptoalgos' self-tests

    virtuoso authored gregkh committed
    commit 0b767f9 upstream.
    By default, CONFIG_CRYPTO_MANAGER_TESTS will be enabled and thus
    self-tests will still run, but it is now possible to disable them
    to gain some time during bootup.
    Signed-off-by: Alexander Shishkin <>
    Signed-off-by: Herbert Xu <>
    Signed-off-by: Greg Kroah-Hartman <>
  8. @gregkh

    xen: Do not suspend IPI IRQs.

    Ian Campbell authored gregkh committed
    commit 4877c73 upstream.
    In general the semantics of IPIs are that they are are expected to
    continue functioning after dpm_suspend_noirq().
    Specifically I have seen a deadlock between the callfunc IPI and the
    stop machine used by xen's do_suspend() routine. If one CPU has already
    called dpm_suspend_noirq() then there is a window where it can be sent
    a callfunc IPI before all the other CPUs have entered stop_cpu().
    If this happens then the first CPU ends up spinning in stop_cpu()
    waiting for the other to rendezvous in state STOPMACHINE_PREPARE while
    the other is spinning in csd_lock_wait().
    Signed-off-by: Ian Campbell <>
    Cc: Jeremy Fitzhardinge <>
    LKML-Reference: <>
    Signed-off-by: Thomas Gleixner <>
    Signed-off-by: Greg Kroah-Hartman <>
Something went wrong with that request. Please try again.