03 Jul, 2006

22 commits


02 Jul, 2006

18 commits

  • The 64 bits resource patches did a bit of damage on PowerMac causing a
    buffer overflow in macio_asic and a warning in a sound driver. The
    former is fixed by reverting the sprintf of the bus_id to %08x as it was
    before. The bus_id used for macio devices is always a 32 bits value
    (macio always sits in 32 bits space) and since it's exposed to userland,
    the format of the string shouldn't be changed like that anyway. The
    second by using the proper type for printk.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Linus Torvalds

    Benjamin Herrenschmidt
     
  • * 'audit.b22' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current:
    [PATCH] audit syscall classes
    [PATCH] audit: support for object context filters
    [PATCH] audit: rename AUDIT_SE_* constants
    [PATCH] add rule filterkey

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:
    kbuild: documentation change on allowing checkers besides sparse
    kbuild: warn when a moduled uses a symbol marked UNUSED
    kbuild: fix segv in modpost
    kconfig: enhancing accessibility of lxdialog
    kbuild: fix ia64 breakage after introducing make -rR

    Linus Torvalds
     
  • Suppress the "setup_irq: irq handler mismatch" coming out of pnp_check_irq():
    failures are expected here.

    Cc:
    Cc: Santiago Garcia Mantinan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • The Network Block Device driver doesn't compile if NDEBUG is defined.

    Signed-off-by: Ingo van Lil
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ingo van Lil
     
  • Make output of function descriptions in text mode match contents of 'man'
    mode by adding Name: plus function-short-description ("purpose") and
    changing Function: to Synopsis:.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Missing variable initialisation would mean it would sometimes not put ATAPI
    devices into DMA by default.

    Signed-off-by: Alan Cox
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Add a space between data type and struct field name in man-mode
    bitfield struct output so that they don't run together.

    For text-mode struct output, print the struct 'purpose' or
    short description (as done in man-mode output).

    For text-mode enum output, print the enum 'purpose' or
    short description (as done in man-mode output).

    For text-mode typedef output, print the typedef 'purpose' or
    short description (as done in man-mode output).

    Signed-off-by: Randy Dunlap
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy.Dunlap
     
  • Reiserfs does not update ctime and mtime on expanding truncate via
    truncate(). This patch fixes it.

    Signed-off-by: Vladimir Saveliev
    Cc: Hans Reiser
    Cc: Michael Kerrisk
    Cc: Chris Mason
    Cc: Jeff Mahoney
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Vladimir Saveliev
     
  • Put s390's syscall tables into .rodata section and write protect this
    section to prevent misuse of it. Suggested by Arjan van de Ven
    .

    Cc: Arjan van de Ven
    Cc: Martin Schwidefsky
    Signed-off-by: Heiko Carstens
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Heiko Carstens
     
  • Add __start_rodata and __end_rodata to sections.h to avoid extern
    declarations. Needed by s390 code (see following patch).

    [akpm@osdl.org: update architectures]
    Cc: Arjan van de Ven
    Cc: Martin Schwidefsky
    Signed-off-by: Heiko Carstens
    Cc: Andi Kleen
    Acked-by: Kyle McMartin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Heiko Carstens
     
  • Always use do {} while (0). Failing to do so can cause subtle compile
    failures or bugs.

    Cc: Chandra Seetharaman
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • This is a renamed and tested version of the previous S3C24XX RTC class
    driver.

    The driver has been renamed from the original s3c2410-rtc, which is now too
    narrow for the range of devices supported.

    The rtc-s3c has been chosen as there is the distinct possibility of this
    driver being carried forward into newer Samsung SoC silicon.

    Signed-off-by: Ben Dooks
    Cc: Alessandro Zummo
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ben Dooks
     
  • o Raise the maximum error number in IS_ERR_VALUE to 4095.
    o Make that number available as a new constant MAX_ERRNO.

    Signed-off-by: Ralf Baechle
    Cc: "H. Peter Anvin"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ralf Baechle
     
  • This patch fixes buggy behaviour of UFS
    in such kind of scenario:
    open(, O_TRUNC...)
    ftruncate(, 1024)
    ftruncate(, 0)

    Such a scenario causes ufs_panic and remount read-only. This happen
    because of according to specification UFS should always allocate block for
    last byte, and many parts of our implementation rely on this, but
    `ufs_truncate' doesn't care about this.

    To make possible return error code and to know about old size, this patch
    removes `truncate' from ufs inode_operations and uses `setattr' method to
    call ufs_truncate.

    Signed-off-by: Evgeniy Dushistov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Evgeniy Dushistov
     
  • Rename actually_do_remove() to remove_files_and_dir(), make it call
    closedir(), make it ignore ENOENT (I see it frequently enough).

    ENOENT is probably due to multiple threads calling the exitcall functions
    together*, but fixing that is non-trivial; and ignoring it is perfectly ok
    in any case.

    * it can surely happen: last_ditch_exit() is installed as SIGTERM handler
    at boot, and it's not removed on thread creation. So killall vmlinux
    (which I do) surely causes that. I've seen also a crash which seems to
    do the same.

    Installing the handler on only the main thread would make UML do no cleanup
    when another thread exits, and we're not sure we want that. And mutual
    exclusion in that context is tricky - we can't use spinlock in code not on
    a kernel stack (spinlock debugging uses "current" a lot).

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

    Paolo 'Blaisorblade' Giarrusso
     
  • The bug occurred to me when a UML left an empty ~/.uml/Sarge-norm folder -
    when trying to reuse not_dead_yet() failed one of its check. The comment
    says that's ok and means that we can take the directory, but while normally
    not_dead_yet() removes it and returns 0 (i.e. go on, use this), on failure
    it returns 0 but forgets to remove it. The fix is to remove it anytime
    we're going to return 0.

    But since "not_dead_yet" didn't make the interface so clear, causing this
    bug, and I couldn't find a convenient name for the mix of things it did, I
    split it into two parts:

    is_umdir_used() - returns a boolean, contains all checks of not_dead_yet()
    umdir_take_if_dead - tries to remove the dir unless it's used - returns
    whether it removed it, that is we now own it.

    With this changes the control flow is IMHO a bit clearer and needs less
    comment for control flow.

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

    Paolo 'Blaisorblade' Giarrusso
     
  • Make __copy_*_user_inatomic really atomic to avoid "Sleeping function called in
    atomic context" warnings, especially from futex code.

    This is made by adding another kmap_atomic slot and making copy_*_user_skas
    use kmap_atomic; also copy_*_user() becomes atomic, but that's true and is not
    a problem for i386 (and we can always add might_sleep there as done
    elsewhere). For TT mode kmap is not used, so there's no need for this.

    I've had to use another slot since both KM_USER0 and KM_USER1 are used
    elsewhere and could cause conflicts. Till now we reused the kmap_atomic slot
    list from the subarch, but that's not needed as that list must contain the
    common ones (used by generic code) + the ones used in architecture specific
    code (and Uml till now used none); so I've taken the i386 one after comparing
    it with ones from other archs, and added KM_UML_USERCOPY.

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

    Paolo 'Blaisorblade' Giarrusso