21 Oct, 2006

37 commits

  • Coverity spotted a superfluous error check in nfs4_open_revalidate(). Remove
    it.

    Coverity: #cid 847

    Test plan:
    Code inspection; another pass through Coverity.

    Signed-off-by: Chuck Lever
    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chuck Lever
     
  • The "!inode" check in __nfs_revalidate_inode() occurs well after the first
    time it is dereferenced, so get rid of it.

    Coverity: #cid 1372, 1373

    Test plan:
    Code review; recheck with Coverity.

    Signed-off-by: Chuck Lever
    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chuck Lever
     
  • The original code confused a zero return code from pagevec_add() as success.

    Test plan:
    None.

    Signed-off-by: Chuck Lever
    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Chuck Lever
     
  • If invalidate_inode_pages2() fails, then it should in principle just be
    because the current process was signalled. In that case, we just want to
    ensure that the inode's page cache remains marked as invalid.

    Also add a helper to allow the O_DIRECT code to simply mark the page cache as
    invalid once it is finished writing, instead of calling
    invalidate_inode_pages2() itself.

    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Trond Myklebust
     
  • The change in semantics for nfs_find_client() introduced by David breaks the
    NFSv4 callback channel.

    Also, replace another completely broken BUG_ON() in nfs_find_client(). In
    initialised clients, clp->cl_cons_state == 0, and callers of that function
    should in any case never want to see clients that are uninitialised.

    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Trond Myklebust
     
  • David forgot to do this. I'm not sure if this is the right place to put
    it....

    Signed-off-by: J. Bruce Fields
    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    J. Bruce Fields
     
  • If the RPC call tanked, we should not be checking the return value
    of data->res.verf->committed, since it is unlikely to even be
    initialised.

    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Trond Myklebust
     
  • Fix two bugs:
    - nfs_inode_remove_request will call nfs_clear_request, so we cannot
    reference req->wb_page after it. Move the call to dec_zone_page_state so
    that it occurs while req->wb_page is still valid.
    - Calling nfs_clear_page_writeback is unnecessary since the radix tree
    tags will have been cleared by the call to nfs_inode_remove_request.
    Replace with a simple call to nfs_unlock_request.

    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Trond Myklebust
     
  • Duh. addr.sin_port should be in network byte order.

    Signed-off-by: Trond Myklebust
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Trond Myklebust
     
  • Make sure all dentries refs are released before calling kill_anon_super()
    so that the assumption that generic_shutdown_super() can completely destroy
    the dentry tree for there will be no external references holds true.

    What was being done in the put_super() superblock op, is now done in the
    kill_sb() filesystem op instead, prior to calling kill_anon_super().

    The call to shrink_dcache_sb() is removed as it is redundant since
    shrink_dcache_for_umount() will now be called after the cleanup routine.

    Signed-off-by: David Howells
    Acked-by: Ian Kent
    Cc: Andi Kleen
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Howells
     
  • GENERIC_ACL shouldn't be under Network File Systems (which made it depend
    on NET) as far as I can tell. Having it there and having many (FS) config
    symbols disabled gives this (which the patch fixes):

    mm/built-in.o: In function `shmem_check_acl':
    shmem_acl.c:(.text.shmem_check_acl+0x33): undefined reference to `posix_acl_permission'
    fs/built-in.o: In function `generic_acl_get':
    (.text.generic_acl_get+0x30): undefined reference to `posix_acl_to_xattr'
    fs/built-in.o: In function `generic_acl_set':
    (.text.generic_acl_set+0x75): undefined reference to `posix_acl_from_xattr'
    fs/built-in.o: In function `generic_acl_set':
    (.text.generic_acl_set+0x94): undefined reference to `posix_acl_valid'
    fs/built-in.o: In function `generic_acl_set':
    (.text.generic_acl_set+0xc1): undefined reference to `posix_acl_equiv_mode'
    fs/built-in.o: In function `generic_acl_init':
    (.text.generic_acl_init+0x7a): undefined reference to `posix_acl_clone'
    fs/built-in.o: In function `generic_acl_init':
    (.text.generic_acl_init+0xb4): undefined reference to `posix_acl_clone'
    fs/built-in.o: In function `generic_acl_init':
    (.text.generic_acl_init+0xc8): undefined reference to `posix_acl_create_masq'
    fs/built-in.o: In function `generic_acl_chmod':
    (.text.generic_acl_chmod+0x49): undefined reference to `posix_acl_clone'
    fs/built-in.o: In function `generic_acl_chmod':
    (.text.generic_acl_chmod+0x76): undefined reference to `posix_acl_chmod_masq'

    Signed-off-by: Randy Dunlap
    Acked-by: Andreas Gruenbacher
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • If CONFIG_PROC_FS=n:

    kernel/sysctl.c:148: warning: 'proc_do_cad_pid' used but never defined
    kernel/built-in.o:(.data+0x1228): undefined reference to `proc_do_cad_pid'
    make: *** [.tmp_vmlinux1] Error 1

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

    Randy Dunlap
     
  • In most cases the return value of WARN_ON() is ignored. If the generic
    definition for the !CONFIG_BUG case is used this will result in a warning:

    CC kernel/sched.o
    In file included from include/linux/bio.h:25,
    from include/linux/blkdev.h:14,
    from kernel/sched.c:39:
    include/linux/ioprio.h: In function ‘task_ioprio’:
    include/linux/ioprio.h:50: warning: statement with no effect
    kernel/sched.c: In function ‘context_switch’:
    kernel/sched.c:1834: warning: statement with no effect

    Signed-off-by: Ralf Baechle
    Cc: Jeremy Fitzhardinge
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ralf Baechle
     
  • Signed-off-by: Alan Cox
    Cc: James Bottomley
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alan Cox
     
  • Despite mm.h is not being exported header, it does contain one thing
    which is part of userspace ABI -- value disabling OOM killer for given
    process. So,
    a) create and export include/linux/oom.h
    b) move OOM_DISABLE define there.
    c) turn bounding values of /proc/$PID/oom_adj into defines and export
    them too.

    Note: mass __KERNEL__ removal will be done later.

    Signed-off-by: Alexey Dobriyan
    Cc: Nick Piggin
    Cc: David Woodhouse
    Cc: Christoph Hellwig
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     
  • I wrote a patch to avoid redundant memory hot-add call at boot time. This
    was cause of strange fail message of memory hotplug like "ACPI: add_memory
    failed". Memory is recognized by early boot code with EFI/E820.

    But, if DSDT describes memory devices for them, then hot-add code is called
    for already recognized memory, and it shows fail messages with -EEXIST.
    So, sys admin will misunderstand this message as something wrong by it.

    This patch avoids them by preventing redundant hot-add call until
    completion of driver initialization.

    [akpm@osdl.org: cleanups]
    Signed-off-by: Yasunori Goto
    Cc: "Brown, Len"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yasunori Goto
     
  • I suppose this message seems quite useless except debugging. It just shows
    "Hotplug Mem Device". System admin can't know anything by this message.
    So, I would like to change it to KERN_DEBUG.

    Signed-off-by: Yasunori Goto
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yasunori Goto
     
  • Signed-off-by: Borislav Petkov
    Acked-by: Ingo Molnar
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Borislav Petkov
     
  • Re-add the set_irq_chip_and_handler() prototype, it's still widely used.

    Signed-off-by: Ingo Molnar
    Cc: Olaf Hering
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     
  • This patch breaks C-state discovery on my IBM IntelliStation Z30 because
    the return value of acpi_processor_get_power_info_fadt is not assigned to
    "result" in the case that acpi_processor_get_power_info_cst returns
    -ENODEV. Thus, if ACPI provides C-state data via the FADT and not _CST (as
    is the case on this machine), we incorrectly exit the function with -ENODEV
    after reading the FADT. The attached patch sets the value of result so
    that we don't exit early.

    Signed-off-by: Darrick J. Wong
    Acked-by: "Pallipadi, Venkatesh"
    Acked-by: "Brown, Len"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Darrick J. Wong
     
  • Fix typo (repeated) in serial Kconfig.

    Signed-off-by: Randy Dunlap
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • When enabling the mmapper driver I got warnings because this "const"
    miscdevice structure is passed to function as non-const pointer; unlike struct
    tty_operations, however, I verified that misc_{de,}register _do_ modify their
    parameter, so this const attribute must be removed.

    Since the purpose of the change was to guarantee that no lock was needed, add
    a comment to prove this differently.

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

    Paolo 'Blaisorblade' Giarrusso
     
  • Silence useless warning about undefined symbol in Kconfig.

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

    Paolo 'Blaisorblade' Giarrusso
     
  • Freeing the stack is left uselessly to the caller of run_helper in some cases
    - this is taken from run_helper_thread, but here it is useless, so no caller
    needs it and the only place where this happens has a potential leak - in case
    of error neither run_helper() nor xterm_open() call free_stack(). At this
    point passing a pointer is not needed - the stack pointer should be passed
    directly, but this change is not done here.

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

    Paolo 'Blaisorblade' Giarrusso
     
  • 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
     
  • CONFIG_MODE_TT does not work there, the UML_ prefixed version must be used -
    this causes a link-time failure when CONFIG_MODE_TT is enabled (i.e. always
    here, never by Jeff).

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

    Paolo 'Blaisorblade' Giarrusso
     
  • Fix coding conventions violations is arch/um/os-Linux/helper.c.

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

    Paolo 'Blaisorblade' Giarrusso
     
  • user.h is too generic a header name. I've split out allocation routines from
    it.

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

    Paolo 'Blaisorblade' Giarrusso
     
  • I happened to notice that this code is a leftover and it should be removed -
    since there are sporadical efforts to revive the PPC port doing such cleanups
    is not useless.

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

    Paolo 'Blaisorblade' Giarrusso
     
  • Fix cut'n'paste typo - &a and &b are used in other examples, in this one
    the doc uses &u and &v.

    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Acked-by: David Howells
    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
     
  • contains the constants for personality(2) but also
    some defintions that are useless or even harmful in userspace such as the
    personality() macro.

    Signed-off-by: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Ralf Baechle
     
  • Separate out the concept of "queue congestion" from "backing-dev congestion".
    Congestion is a backing-dev concept, not a queue concept.

    The blk_* congestion functions are retained, as wrappers around the core
    backing-dev congestion functions.

    This proper layering is needed so that NFS can cleanly use the congestion
    functions, and so that CONFIG_BLOCK=n actually links.

    Cc: "Thomas Maier"
    Cc: "Jens Axboe"
    Cc: Trond Myklebust
    Cc: David Howells
    Cc: Peter Osterlund
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Export the clear_queue_congested() and set_queue_congested() functions
    located in ll_rw_blk.c

    The functions are renamed to blk_clear_queue_congested() and
    blk_set_queue_congested().

    (needed in the pktcdvd driver's bio write congestion control)

    Signed-off-by: Thomas Maier
    Cc: Peter Osterlund
    Cc: Jens Axboe
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Thomas Maier
     
  • Use the special_file() macro to check whether an inode is special instead of
    open-coding it.

    Acked-by: Mike Halcrow
    Cc: Phillip Hellewell
    Signed-off-by: Pekka Enberg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Pekka Enberg
     
  • When direct-io falls back to buffered write, it will just leave the dirty data
    floating about in pagecache, pending regular writeback.

    But normal direct-io semantics are that IO is synchronous, and that it leaves
    no pagecache behind.

    So change the fallback-to-buffered-write code to sync the file region and to
    then strip away the pagecache, just as a regular direct-io write would do.

    Acked-by: Jeff Moyer
    Cc: Zach Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jeff Moyer
     
  • When rebooting with netconsole over e100, the driver shutdown code would
    deadlock with netpoll. Reduce shutdown code to a bare minimum while retaining
    WoL and suspend functionality.

    Signed-off-by: Auke Kok
    Cc: Jeff Garzik
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Auke Kok
     

19 Oct, 2006

3 commits

  • * 'ubuntu-updates' of master.kernel.org:/pub/scm/linux/kernel/git/bcollins/ubuntu-2.6:
    [pci_ids] Add Quicknet XJ vendor/device ID's.
    [valkyriefb] Ifdef for when CONFIG_NVRAM isn't enabled.
    [platinumfb] Ifdef for when CONFIG_NVRAM isn't enabled.
    [igafb] Add pci dev table for module auto loading.
    [controlfb] Ifdef for when CONFIG_NVRAM isn't enabled.
    [hid-core] TurboX Keyboard needs NOGET quirk.
    [ixj] Add pci dev table for module auto loading.
    [initio] Add pci dev table for module auto loading.
    [fdomain] Add pci dev table for module auto loading.
    [BusLogic] Add pci dev table for auto module loading.
    [mv643xx] Add pci device table for auto module loading.
    [alim7101] Add pci dev table for auto module loading.

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/hwmon-2.6:
    hwmon: Fix debug messages in w83781d
    hwmon: Let w83781d and lm78 load again
    w83627ehf: Fix the detection of fan5
    k8temp: Documentation update
    smsc47m1: List the SMSC LPC47M112 as supported
    hwmon: Fix documentation typos
    adm9240: Update Grant Coady's email address
    w83791d: Fix unchecked return status

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/aoe-2.6:
    aoe: fix sysfs_create_file warnings
    aoe: revert printk macros
    aoe: update driver version
    aoe: remove sysfs comment
    aoe: use bio->bi_idx
    aoe: module parameter for device timeout
    aoe: zero copy write 2 of 2
    aoe: improve retransmission heuristics
    aoe: jumbo frame support 2 of 2
    aoe: clean up printks via macros
    aoe: jumbo frame support 1 of 2
    aoe: zero copy write 1 of 2
    aoe: remove unused NARGS enum
    aoe: update copyright date
    aoe: eliminate isbusy message

    Linus Torvalds