02 Oct, 2009

1 commit


24 Sep, 2009

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
    lguest: don't force VIRTIO_F_NOTIFY_ON_EMPTY
    lguest: cleanup for map_switcher()
    lguest: use PGDIR_SHIFT for PAE code to allow different PAGE_OFFSET
    lguest: use set_pte/set_pmd uniformly for real page table entries
    lguest: move panic notifier registration to its expected place.
    virtio_blk: add support for cache flush
    virtio: add virtio IDs file
    virtio: get rid of redundant VIRTIO_ID_9P definition
    virtio: make add_buf return capacity remaining
    virtio_pci: minor MSI-X cleanups

    Linus Torvalds
     

23 Sep, 2009

5 commits

  • Make all seq_operations structs const, to help mitigate against
    revectoring user-triggerable function pointers.

    This is derived from the grsecurity patch, although generated from scratch
    because it's simpler than extracting the changes from there.

    Signed-off-by: James Morris
    Acked-by: Serge Hallyn
    Acked-by: Casey Schaufler
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    James Morris
     
  • Fix undefined behavior due to a buffer underrun if an empty string is
    written to the proc file.

    Signed-off-by: Michael Buesch
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Michael Buesch
     
  • Recent qemu has added a VIRTIO_BLK_F_FLUSH flag to advertise that the
    virtual disk has a volatile write cache that needs to be flushed. In case
    we see this feature implement tell the Linux block layer about the fact
    and use the new VIRTIO_BLK_T_FLUSH to flush the cache when required. This
    allows for an correct and simple implementation of write barriers.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Rusty Russell

    Christoph Hellwig
     
  • Virtio IDs are spread all over the tree which makes assigning new IDs
    bothersome. Putting them together should make the process less error-prone.

    Signed-off-by: Fernando Luis Vazquez Cao
    Signed-off-by: Rusty Russell

    Fernando Luis Vazquez Cao
     
  • This API change means that virtio_net can tell how much capacity
    remains for buffers. It's necessarily fuzzy, since
    VIRTIO_RING_F_INDIRECT_DESC means we can fit any number of descriptors
    in one, *if* we can kmalloc.

    Signed-off-by: Rusty Russell
    Cc: Dinesh Subhraveti

    Rusty Russell
     

22 Sep, 2009

2 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial: (34 commits)
    trivial: fix typo in aic7xxx comment
    trivial: fix comment typo in drivers/ata/pata_hpt37x.c
    trivial: typo in kernel-parameters.txt
    trivial: fix typo in tracing documentation
    trivial: add __init/__exit macros in drivers/gpio/bt8xxgpio.c
    trivial: add __init macro/ fix of __exit macro location in ipmi_poweroff.c
    trivial: remove unnecessary semicolons
    trivial: Fix duplicated word "options" in comment
    trivial: kbuild: remove extraneous blank line after declaration of usage()
    trivial: improve help text for mm debug config options
    trivial: doc: hpfall: accept disk device to unload as argument
    trivial: doc: hpfall: reduce risk that hpfall can do harm
    trivial: SubmittingPatches: Fix reference to renumbered step
    trivial: fix typos "man[ae]g?ment" -> "management"
    trivial: media/video/cx88: add __init/__exit macros to cx88 drivers
    trivial: fix typo in CONFIG_DEBUG_FS in gcov doc
    trivial: fix missing printk space in amd_k7_smp_check
    trivial: fix typo s/ketymap/keymap/ in comment
    trivial: fix typo "to to" in multiple files
    trivial: fix typos in comments s/DGBU/DBGU/
    ...

    Linus Torvalds
     
  • Signed-off-by: Alexey Dobriyan
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     

21 Sep, 2009

2 commits


20 Sep, 2009

1 commit

  • This allows subsytems to provide devtmpfs with non-default permissions
    for the device node. Instead of the default mode of 0600, null, zero,
    random, urandom, full, tty, ptmx now have a mode of 0666, which allows
    non-privileged processes to access standard device nodes in case no
    other userspace process applies the expected permissions.

    This also fixes a wrong assignment in pktcdvd and a checkpatch.pl complain.

    Signed-off-by: Kay Sievers
    Signed-off-by: Greg Kroah-Hartman

    Kay Sievers
     

16 Sep, 2009

4 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core-2.6:
    Driver Core: devtmpfs - kernel-maintained tmpfs-based /dev
    debugfs: Modify default debugfs directory for debugging pktcdvd.
    debugfs: Modified default dir of debugfs for debugging UHCI.
    debugfs: Change debugfs directory of IWMC3200
    debugfs: Change debuhgfs directory of trace-events-sample.h
    debugfs: Fix mount directory of debugfs by default in events.txt
    hpilo: add poll f_op
    hpilo: add interrupt handler
    hpilo: staging for interrupt handling
    driver core: platform_device_add_data(): use kmemdup()
    Driver core: Add support for compatibility classes
    uio: add generic driver for PCI 2.3 devices
    driver-core: move dma-coherent.c from kernel to driver/base
    mem_class: fix bug
    mem_class: use minor as index instead of searching the array
    driver model: constify attribute groups
    UIO: remove 'default n' from Kconfig
    Driver core: Add accessor for device platform data
    Driver core: move dev_get/set_drvdata to drivers/base/dd.c
    Driver core: add new device to bus's list before probing

    Linus Torvalds
     
  • * 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (134 commits)
    powerpc/nvram: Enable use Generic NVRAM driver for different size chips
    powerpc/iseries: Fix oops reading from /proc/iSeries/mf/*/cmdline
    powerpc/ps3: Workaround for flash memory I/O error
    powerpc/booke: Don't set DABR on 64-bit BookE, use DAC1 instead
    powerpc/perf_counters: Reduce stack usage of power_check_constraints
    powerpc: Fix bug where perf_counters breaks oprofile
    powerpc/85xx: Fix SMP compile error and allow NULL for smp_ops
    powerpc/irq: Improve nanodoc
    powerpc: Fix some late PowerMac G5 with PCIe ATI graphics
    powerpc/fsl-booke: Use HW PTE format if CONFIG_PTE_64BIT
    powerpc/book3e: Add missing page sizes
    powerpc/pseries: Fix to handle slb resize across migration
    powerpc/powermac: Thermal control turns system off too eagerly
    powerpc/pci: Merge ppc32 and ppc64 versions of phb_scan()
    powerpc/405ex: support cuImage via included dtb
    powerpc/405ex: provide necessary fixup function to support cuImage
    powerpc/40x: Add support for the ESTeem 195E (PPC405EP) SBC
    powerpc/44x: Add Eiger AMCC (AppliedMicro) PPC460SX evaluation board support.
    powerpc/44x: Update Arches defconfig
    powerpc/44x: Update Arches dts
    ...

    Fix up conflicts in drivers/char/agp/uninorth-agp.c

    Linus Torvalds
     
  • As we all know, We need change default directory for consistency of
    debugfs by Greg K-H

    Signed-off-by: GeunSik Lim
    Signed-off-by: Greg Kroah-Hartman

    GeunSik Lim
     
  • Let attribute group vectors be declared "const". We'd
    like to let most attribute metadata live in read-only
    sections... this is a start.

    Signed-off-by: David Brownell
    Signed-off-by: Greg Kroah-Hartman

    David Brownell
     

15 Sep, 2009

3 commits

  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/suspend-2.6: (23 commits)
    at_hdmac: Rework suspend_late()/resume_early()
    PM: Reset transition_started at dpm_resume_noirq
    PM: Update kerneldoc comments in drivers/base/power/main.c
    PM: Add convenience macro to make switching to dev_pm_ops less error-prone
    hp-wmi: Switch driver to dev_pm_ops
    floppy: Switch driver to dev_pm_ops
    PM: Trivial fixes
    PM / Hibernate / Memory hotplug: Always use for_each_populated_zone()
    PM/Hibernate: Do not try to allocate too much memory too hard (rev. 2)
    PM/Hibernate: Do not release preallocated memory unnecessarily (rev. 2)
    PM/Hibernate: Rework shrinking of memory
    PM: Fix typo in label name s/Platofrm_finish/Platform_finish/
    PM: Run-time PM platform device bus support
    PM: Introduce core framework for run-time PM of I/O devices (rev. 17)
    Driver Core: Make PM operations a const pointer
    PM: Remove platform device suspend_late()/resume_early() V2
    USB: Rework musb suspend()/resume_early()
    I2C: Rework i2c-s3c2410 suspend_late()/resume() V2
    I2C: Rework i2c-pxa suspend_late()/resume_early()
    DMA: Rework txx9dmac suspend_late()/resume_early()
    ...

    Fix trivial conflict in drivers/base/platform.c (due to same
    constification patch being merged in both sides, along with some other
    PM work in the PM branch)

    Linus Torvalds
     
  • * 'for-2.6.32' of git://git.kernel.dk/linux-2.6-block: (29 commits)
    block: use blkdev_issue_discard in blk_ioctl_discard
    Make DISCARD_BARRIER and DISCARD_NOBARRIER writes instead of reads
    block: don't assume device has a request list backing in nr_requests store
    block: Optimal I/O limit wrapper
    cfq: choose a new next_req when a request is dispatched
    Seperate read and write statistics of in_flight requests
    aoe: end barrier bios with EOPNOTSUPP
    block: trace bio queueing trial only when it occurs
    block: enable rq CPU completion affinity by default
    cfq: fix the log message after dispatched a request
    block: use printk_once
    cciss: memory leak in cciss_init_one()
    splice: update mtime and atime on files
    block: make blk_iopoll_prep_sched() follow normal 0/1 return convention
    cfq-iosched: get rid of must_alloc flag
    block: use interrupts disabled version of raise_softirq_irqoff()
    block: fix comment in blk-iopoll.c
    block: adjust default budget for blk-iopoll
    block: fix long lines in block/blk-iopoll.c
    block: add blk-iopoll, a NAPI like approach for block devices
    ...

    Linus Torvalds
     
  • Gets rid of the following warning:
    Platform driver 'floppy' needs updating - please use dev_pm_ops

    [rjw: Fixed up the definition of floppy_pm_ops.]

    Signed-off-by: Frans Pop
    Signed-off-by: Andrew Morton
    Signed-off-by: Rafael J. Wysocki

    Frans Pop
     

14 Sep, 2009

1 commit

  • BugLink: http://bugzilla.kernel.org/show_bug.cgi?id=13942

    Bruno Premont noticed that aoe throws a BUG during umount of an XFS in
    2.6.31:

    [ 5259.349897] aoe: bi_io_vec is NULL
    [ 5259.349940] ------------[ cut here ]------------
    [ 5259.349958] kernel BUG at /usr/src/linux-2.6/drivers/block/aoe/aoeblk.c:177!
    [ 5259.349990] invalid opcode: 0000 [#1]

    The bio in question is a barrier. Jens Axboe suggested that such bios
    need to be recognized and ended with -EOPNOTSUPP by any driver that
    provides its own ->make_request_fn handler and does not handle
    barriers.

    In testing the changes below eliminate the BUG.

    (Better would be real barrier support, something that Ed says he'll add
    for later in the .32 cycle. For now, this at least gets rid of a bug
    with crashing on an empty barrier. Jens)

    Signed-off-by: Ed L. Cashin
    Signed-off-by: Jens Axboe

    Ed Cashin
     

11 Sep, 2009

4 commits


09 Sep, 2009

1 commit

  • Andy Whitcroft reported an oops in aoe triggered by use of an
    incorrectly initialised request_queue object:

    [ 2645.959090] kobject '' (ffff880059ca22c0): tried to add
    an uninitialized object, something is seriously wrong.
    [ 2645.959104] Pid: 6, comm: events/0 Not tainted 2.6.31-5-generic #24-Ubuntu
    [ 2645.959107] Call Trace:
    [ 2645.959139] [] kobject_add+0x5f/0x70
    [ 2645.959151] [] blk_register_queue+0x8b/0xf0
    [ 2645.959155] [] add_disk+0x8f/0x160
    [ 2645.959161] [] aoeblk_gdalloc+0x164/0x1c0 [aoe]

    The request queue of an aoe device is not used but can be allocated in
    code that does not sleep.

    Bruno bisected this regression down to

    cd43e26f071524647e660706b784ebcbefbd2e44

    block: Expose stacked device queues in sysfs

    "This seems to generate /sys/block/$device/queue and its contents for
    everyone who is using queues, not just for those queues that have a
    non-NULL queue->request_fn."

    Addresses http://bugs.launchpad.net/bugs/410198
    Addresses http://bugzilla.kernel.org/show_bug.cgi?id=13942

    Note that embedding a queue inside another object has always been
    an illegal construct, since the queues are reference counted and
    must persist until the last reference is dropped. So aoe was
    always buggy in this respect (Jens).

    Signed-off-by: Ed Cashin
    Cc: Andy Whitcroft
    Cc: "Rafael J. Wysocki"
    Cc: Bruno Premont
    Cc: Martin K. Petersen
    Cc: Andrew Morton
    Signed-off-by: Jens Axboe

    Ed Cashin
     

20 Aug, 2009

1 commit


28 Jul, 2009

4 commits


23 Jul, 2009

1 commit


19 Jul, 2009

1 commit

  • The variable virtio_blk references the function virtblk_probe() (which
    is in .devinit section) and also references the function
    virtblk_remove() ( which is in .devexit section). So, virtio_blk
    simultaneously refers .devinit and .devexit section. To avoid this
    messup, we mark virtio_blk as __refdata.

    We were warned by the following warning:

    LD drivers/block/built-in.o
    WARNING: drivers/block/built-in.o(.data+0xc8dc): Section mismatch in
    reference from the variable virtio_blk to the function
    .devinit.text:virtblk_probe()
    The variable virtio_blk references
    the function __devinit virtblk_probe()
    If the reference is valid then annotate the
    variable with __init* or __refdata (see linux/init.h) or name the variable:
    *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

    WARNING: drivers/block/built-in.o(.data+0xc8e0): Section mismatch in
    reference from the variable virtio_blk to the function
    .devexit.text:virtblk_remove()
    The variable virtio_blk references
    the function __devexit virtblk_remove()
    If the reference is valid then annotate the
    variable with __exit* (see linux/init.h) or name the variable:
    *driver, *_template, *_timer, *_sht, *_ops, *_probe, *_probe_one, *_console,

    Signed-off-by: Rakib Mullick
    Signed-off-by: Tejun Heo

    Rakib Mullick
     

17 Jul, 2009

3 commits

  • Block driver ioctl methods must return ENOTTY and not -ENOIOCTLCMD if
    they expect the block layer to handle generic ioctls.

    This triggered a BLKROSET failure in xfsqa #200.

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Rusty Russell

    Christoph Hellwig
     
  • By default a block driver bounces highmem requests, but virtio-blk is
    perfectly fine with any request that fit into it's 64 bit addressing scheme,
    mapped in the kernel virtual space or not.

    Besides improving performance on highmem systems this also makes the
    reproducible oops in __bounce_end_io go away (but hiding the real cause).

    Signed-off-by: Christoph Hellwig
    Signed-off-by: Rusty Russell

    Christoph Hellwig
     
  • dtp is derefenced on the lines above the test !dtp, and so it cannot be
    NULL at this point.

    A simplified version of the semantic match that finds this problem is as
    follows: (http://www.emn.fr/x-info/coccinelle/)

    //
    @r@
    expression x,E,E1;
    identifier f,l;
    position p1,p2;
    @@

    *x@p1->f = E1;
    ... when != x = E
    when != goto l;
    (
    *x@p2 == NULL
    |
    *x@p2 != NULL
    )
    //

    Signed-off-by: Julia Lawall
    Signed-off-by: Tejun Heo

    Julia Lawall
     

15 Jul, 2009

1 commit


13 Jul, 2009

1 commit

  • * Remove smp_lock.h from files which don't need it (including some headers!)
    * Add smp_lock.h to files which do need it
    * Make smp_lock.h include conditional in hardirq.h
    It's needed only for one kernel_locked() usage which is under CONFIG_PREEMPT

    This will make hardirq.h inclusion cheaper for every PREEMPT=n config
    (which includes allmodconfig/allyesconfig, BTW)

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Linus Torvalds

    Alexey Dobriyan
     

11 Jul, 2009

2 commits


09 Jul, 2009

1 commit

  • Commit 5fd29d6ccbc98884569d6f3105aeca70858b3e0f ("printk: clean up
    handling of log-levels and newlines") changed printk semantics. printk
    lines with multiple KERN_ prefixes are no longer emitted as
    before the patch.

    is now included in the output on each additional use.

    Remove all uses of multiple KERN_s in formats.

    Signed-off-by: Joe Perches
    Signed-off-by: Linus Torvalds

    Joe Perches