31 Dec, 2008

16 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    net: Fix percpu counters deadlock
    cpumask: prepare for iterators to only go to nr_cpu_ids/nr_cpumask_bits: net
    drivers/net/usb: use USB API functions rather than constants
    cls_cgroup: clean up Kconfig
    cls_cgroup: clean up for cgroup part
    cls_cgroup: fix an oops when removing a cgroup
    EtherExpress16: fix printing timed out status
    mlx4_en: Added "set_ringparam" Ethtool interface implementation
    mlx4_en: Always allocate RX ring for each interrupt vector
    mlx4_en: Verify number of RX rings doesn't exceed MAX_RX_RINGS
    IPVS: Make "no destination available" message more consistent between schedulers
    net: KS8695: removed duplicated #include
    tun: Fix SIOCSIFHWADDR error.
    smsc911x: compile fix re netif_rx signature changes
    netns: foreach_netdev_safe is insufficient in default_device_exit
    net: make xfrm_statistics_seq_show use generic snmp_fold_field
    net: Fix more NAPI interface netdev argument drop fallout.
    net: Fix unused variable warnings in pasemi_mac.c and spider_net.c

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/rusty/linux-2.6-for-linus:
    lguest: struct device - replace bus_id with dev_name()
    lguest: move the initial guest page table creation code to the host
    kvm-s390: implement config_changed for virtio on s390
    virtio_console: support console resizing
    virtio: add PCI device release() function
    virtio_blk: fix type warning
    virtio: block: dynamic maximum segments
    virtio: set max_segment_size and max_sectors to infinite.
    virtio: avoid implicit use of Linux page size in balloon interface
    virtio: hand virtio ring alignment as argument to vring_new_virtqueue
    virtio: use KVM_S390_VIRTIO_RING_ALIGN instead of relying on pagesize
    virtio: use LGUEST_VRING_ALIGN instead of relying on pagesize
    virtio: Don't use PAGE_SIZE for vring alignment in virtio_pci.
    virtio: rename 'pagesize' arg to vring_init/vring_size
    virtio: Don't use PAGE_SIZE in virtio_pci.c
    virtio: struct device - replace bus_id with dev_name(), dev_set_name()
    virtio-pci queue allocation not page-aligned

    Linus Torvalds
     
  • * 'devel' of master.kernel.org:/home/rmk/linux-2.6-arm: (407 commits)
    [ARM] pxafb: add support for overlay1 and overlay2 as framebuffer devices
    [ARM] pxafb: cleanup of the timing checking code
    [ARM] pxafb: cleanup of the color format manipulation code
    [ARM] pxafb: add palette format support for LCCR4_PAL_FOR_3
    [ARM] pxafb: add support for FBIOPAN_DISPLAY by dma braching
    [ARM] pxafb: allow pxafb_set_par() to start from arbitrary yoffset
    [ARM] pxafb: allow video memory size to be configurable
    [ARM] pxa: add document on the MFP design and how to use it
    [ARM] sa1100_wdt: don't assume CLOCK_TICK_RATE to be a constant
    [ARM] rtc-sa1100: don't assume CLOCK_TICK_RATE to be a constant
    [ARM] pxa/tavorevb: update board support (smartpanel LCD + keypad)
    [ARM] pxa: Update eseries defconfig
    [ARM] 5352/1: add w90p910-plat config file
    [ARM] s3c: S3C options should depend on PLAT_S3C
    [ARM] mv78xx0: implement GPIO and GPIO interrupt support
    [ARM] Kirkwood: implement GPIO and GPIO interrupt support
    [ARM] Orion: share GPIO IRQ handling code
    [ARM] Orion: share GPIO handling code
    [ARM] s3c: define __io using the typesafe version
    [ARM] S3C64XX: Ensure CPU_V6 is selected
    ...

    Linus Torvalds
     
  • Removed duplicated #include in kernel/trace/trace.c.

    Signed-off-by: Huang Weiyi
    Signed-off-by: Linus Torvalds

    Huang Weiyi
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (33 commits)
    ide-cd: remove dead dsc_overlap setting
    ide: push local_irq_{save,restore}() to do_identify()
    ide: remove superfluous local_irq_{save,restore}() from ide_dump_status()
    ide: move legacy ISA/VLB ports handling to ide-legacy.c (v2)
    ide: move Power Management support to ide-pm.c
    ide: use ATA_DMA_* defines in ide-dma-sff.c
    ide: checkpatch.pl fixes for ide-lib.c
    ide: remove inline tags from ide-probe.c
    ide: remove redundant code from ide_end_drive_cmd()
    ide: struct device - replace bus_id with dev_name(), dev_set_name()
    ide: rework handling of serialized ports (v2)
    cy82c693: remove superfluous ide_cy82c693 chipset type
    trm290: add IDE_HFLAG_TRM290 host flag
    ide: add ->max_sectors field to struct ide_port_info
    rz1000: apply chipset quirks early (v2)
    ide: always set nIEN on idle devices
    ide: fix ->quirk_list checking in ide_do_request()
    gayle: set IDE_HFLAG_SERIALIZE explictly
    cmd64x: set IDE_HFLAG_SERIALIZE explictly for CMD646
    ali14xx: doesn't use shared IRQs
    ...

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/shaggy/jfs-2.6:
    jfs: ensure symlinks are NUL-terminated

    Linus Torvalds
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    sata_sil: add Large Block Transfer support
    [libata] ata_piix: cleanup dmi strings checking
    DMI: add dmi_match
    libata: blacklist NCQ on OCZ CORE 2 SSD (resend)
    [libata] Update kernel-doc comments to match source code
    libata: perform port detach in EH
    libata: when restoring SControl during detach do the PMP links first
    libata: beef up iterators

    Linus Torvalds
     
  • * 'oprofile-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    oprofile: select RING_BUFFER
    ring_buffer: adding EXPORT_SYMBOLs
    oprofile: fix lost sample counter
    oprofile: remove nr_available_slots()
    oprofile: port to the new ring_buffer
    ring_buffer: add remaining cpu functions to ring_buffer.h
    oprofile: moving cpu_buffer_reset() to cpu_buffer.h
    oprofile: adding cpu_buffer_entries()
    oprofile: adding cpu_buffer_write_commit()
    oprofile: adding cpu buffer r/w access functions
    ftrace: remove unused function arg in trace_iterator_increment()
    ring_buffer: update description for ring_buffer_alloc()
    oprofile: set values to default when creating oprofilefs
    oprofile: implement switch/case in buffer_sync.c
    x86/oprofile: cleanup IBS init/exit functions in op_model_amd.c
    x86/oprofile: reordering IBS code in op_model_amd.c
    oprofile: fix typo
    oprofile: whitspace changes only
    oprofile: update comment for oprofile_add_sample()
    oprofile: comment cleanup

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/penberg/slab-2.6:
    slub: avoid leaking caches or refcounts on sysfs error
    slab: Fix comment on #endif
    slab: remove GFP_THISNODE clearing from alloc_slabmgmt()
    slub: Add might_sleep_if() to slab_alloc()
    SLUB: failslab support
    slub: Fix incorrect use of loose
    slab: Update the kmem_cache_create documentation regarding the name parameter
    slub: make early_kmem_cache_node_alloc void
    slab: unsigned slabp->inuse cannot be less than 0
    slub - fix get_object_page comment
    SLUB: Replace __builtin_return_address(0) with _RET_IP_.
    SLUB: cleanup - define macros instead of hardcoded numbers

    Linus Torvalds
     
  • * 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (37 commits)
    drm/i915: fix modeset devname allocation + agp init return check.
    drm/i915: Remove redundant test in error path.
    drm: Add a debug node for vblank state.
    drm: Avoid use-before-null-test on dev in drm_cleanup().
    drm/i915: Don't print to dmesg when taking signal during object_pin.
    drm: pin new and unpin old buffer when setting a mode.
    drm/i915: un-EXPORT and make 'intelfb_panic' static
    drm/i915: Delete unused, pointless i915_driver_firstopen.
    drm/i915: fix sparse warnings: returning void-valued expression
    drm/i915: fix sparse warnings: move 'extern' decls to header file
    drm/i915: fix sparse warnings: make symbols static
    drm/i915: fix sparse warnings: declare one-bit bitfield as unsigned
    drm/i915: Don't double-unpin buffers if we take a signal in evict_everything().
    drm/i915: Fix fbcon setup to align display pitch to 64b.
    drm/i915: Add missing userland definitions for gem init/execbuffer.
    i915/drm: provide compat defines for userspace for certain struct members.
    drm: drop DRM_IOCTL_MODE_REPLACEFB, add+remove works just as well.
    drm: sanitise drm modesetting API + remove unused hotplug
    drm: fix allowing master ioctls on non-master fds.
    drm/radeon: use locked rmmap to remove sarea mapping.
    ...

    Linus Torvalds
     
  • * 'agp-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/agp-2.6:
    agp/intel: Fix broken ® symbol in device name.
    agp/intel: add support for G41 chipset

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next-2.6: (98 commits)
    sparc: move select of ARCH_SUPPORTS_MSI
    sparc: drop SUN_IO
    sparc: unify sections.h
    sparc: use .data.init_task section for init_thread_union
    sparc: fix array overrun check in of_device_64.c
    sparc: unify module.c
    sparc64: prepare module_64.c for unification
    sparc64: use bit neutral Elf symbols
    sparc: unify module.h
    sparc: introduce CONFIG_BITS
    sparc: fix hardirq.h removal fallout
    sparc64: do not export pus_fs_struct
    sparc: use sparc64 version of scatterlist.h
    sparc: Commonize memcmp assembler.
    sparc: Unify strlen assembler.
    sparc: Add asm/asm.h
    sparc: Kill memcmp_32.S code which has been ifdef'd out for centuries.
    sparc: replace for_each_cpu_mask_nr with for_each_cpu
    sparc: fix sparse warnings in irq_32.c
    sparc: add include guards to kernel.h
    ...

    Linus Torvalds
     
  • * 'for-2.6.29' of git://git.kernel.dk/linux-2.6-block: (43 commits)
    bio: get rid of bio_vec clearing
    bounce: don't rely on a zeroed bio_vec list
    cciss: simplify parameters to deregister_disk function
    cfq-iosched: fix race between exiting queue and exiting task
    loop: Do not call loop_unplug for not configured loop device.
    loop: Flush possible running bios when loop device is released.
    alpha: remove dead BIO_VMERGE_BOUNDARY
    Get rid of CONFIG_LSF
    block: make blk_softirq_init() static
    block: use min_not_zero in blk_queue_stack_limits
    block: add one-hit cache for disk partition lookup
    cfq-iosched: remove limit of dispatch depth of max 4 times quantum
    nbd: tell the block layer that it is not a rotational device
    block: get rid of elevator_t typedef
    aio: make the lookup_ioctx() lockless
    bio: add support for inlining a number of bio_vecs inside the bio
    bio: allow individual slabs in the bio_set
    bio: move the slab pointer inside the bio_set
    bio: only mempool back the largest bio_vec slab cache
    block: don't use plugging on SSD devices
    ...

    Linus Torvalds
     
  • * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    x86, sparseirq: clean up Kconfig entry
    x86: turn CONFIG_SPARSE_IRQ off by default
    sparseirq: fix numa_migrate_irq_desc dependency and comments
    sparseirq: add kernel-doc notation for new member in irq_desc, -v2
    locking, irq: enclose irq_desc_lock_class in CONFIG_LOCKDEP
    sparseirq, xen: make sure irq_desc is allocated for interrupts
    sparseirq: fix !SMP building, #2
    x86, sparseirq: move irq_desc according to smp_affinity, v7
    proc: enclose desc variable of show_stat() in CONFIG_SPARSE_IRQ
    sparse irqs: add irqnr.h to the user headers list
    sparse irqs: handle !GENIRQ platforms
    sparseirq: fix !SMP && !PCI_MSI && !HT_IRQ build
    sparseirq: fix Alpha build failure
    sparseirq: fix typo in !CONFIG_IO_APIC case
    x86, MSI: pass irq_cfg and irq_desc
    x86: MSI start irq numbering from nr_irqs_gsi
    x86: use NR_IRQS_LEGACY
    sparse irq_desc[] array: core kernel and x86 changes
    genirq: record IRQ_LEVEL in irq_desc[]
    irq.h: remove padding from irq_desc on 64bits

    Linus Torvalds
     
  • …l/git/tip/linux-2.6-tip

    * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    hrtimers: fix warning in kernel/hrtimer.c
    x86: make sure we really have an hpet mapping before using it
    x86: enable HPET on Fujitsu u9200
    linux/timex.h: cleanup for userspace
    posix-timers: simplify de_thread()->exit_itimers() path
    posix-timers: check ->it_signal instead of ->it_pid to validate the timer
    posix-timers: use "struct pid*" instead of "struct task_struct*"
    nohz: suppress needless timer reprogramming
    clocksource, acpi_pm.c: put acpi_pm_read_slow() under CONFIG_PCI
    nohz: no softirq pending warnings for offline cpus
    hrtimer: removing all ur callback modes, fix
    hrtimer: removing all ur callback modes, fix hotplug
    hrtimer: removing all ur callback modes
    x86: correct link to HPET timer specification
    rtc-cmos: export second NVRAM bank

    Fixed up conflicts in sound/drivers/pcsp/pcsp.c and sound/core/hrtimer.c
    manually.

    Linus Torvalds
     
  • * 'core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: (63 commits)
    stacktrace: provide save_stack_trace_tsk() weak alias
    rcu: provide RCU options on non-preempt architectures too
    printk: fix discarding message when recursion_bug
    futex: clean up futex_(un)lock_pi fault handling
    "Tree RCU": scalable classic RCU implementation
    futex: rename field in futex_q to clarify single waiter semantics
    x86/swiotlb: add default swiotlb_arch_range_needs_mapping
    x86/swiotlb: add default physbus conversion
    x86: unify pci iommu setup and allow swiotlb to compile for 32 bit
    x86: add swiotlb allocation functions
    swiotlb: consolidate swiotlb info message printing
    swiotlb: support bouncing of HighMem pages
    swiotlb: factor out copy to/from device
    swiotlb: add arch hook to force mapping
    swiotlb: allow architectures to override physbusphys conversions
    swiotlb: add comment where we handle the overflow of a dma mask on 32 bit
    rcu: fix rcutorture behavior during reboot
    resources: skip sanity check of busy resources
    swiotlb: move some definitions to header
    swiotlb: allow architectures to override swiotlb pool allocation
    ...

    Fix up trivial conflicts in
    arch/x86/kernel/Makefile
    arch/x86/mm/init_32.c
    include/linux/hardirq.h
    as per Ingo's suggestions.

    Linus Torvalds
     

30 Dec, 2008

24 commits

  • When we converted the protocol atomic counters such as the orphan
    count and the total socket count deadlocks were introduced due to
    the mismatch in BH status of the spots that used the percpu counter
    operations.

    Based on the diagnosis and patch by Peter Zijlstra, this patch
    fixes these issues by disabling BH where we may be in process
    context.

    Reported-by: Jeff Kirsher
    Tested-by: Ingo Molnar
    Signed-off-by: Herbert Xu
    Signed-off-by: David S. Miller

    Herbert Xu
     
  • In future all cpumask ops will only be valid (in general) for bit
    numbers < nr_cpu_ids. So use that instead of NR_CPUS in iterators
    and other comparisons.

    This is always safe: no cpu number can be >= nr_cpu_ids, and
    nr_cpu_ids is initialized to NR_CPUS at boot.

    Signed-off-by: Rusty Russell
    Signed-off-by: Mike Travis
    Acked-by: Ingo Molnar
    Signed-off-by: David S. Miller

    Rusty Russell
     
  • This set of patches introduces calls to the following set of functions:

    usb_endpoint_dir_in(epd)
    usb_endpoint_dir_out(epd)
    usb_endpoint_is_bulk_in(epd)
    usb_endpoint_is_bulk_out(epd)
    usb_endpoint_is_int_in(epd)
    usb_endpoint_is_int_out(epd)
    usb_endpoint_num(epd)
    usb_endpoint_type(epd)
    usb_endpoint_xfer_bulk(epd)
    usb_endpoint_xfer_control(epd)
    usb_endpoint_xfer_int(epd)
    usb_endpoint_xfer_isoc(epd)

    In some cases, introducing one of these functions is not possible, and it
    just replaces an explicit integer value by one of the following constants:

    USB_ENDPOINT_XFER_BULK
    USB_ENDPOINT_XFER_CONTROL
    USB_ENDPOINT_XFER_INT
    USB_ENDPOINT_XFER_ISOC

    In drivers/net/wireless/zd1211rw/zd_usb.c the code:

    (endpoint->bEndpointAddress & USB_TYPE_MASK) == USB_DIR_OUT

    is suspicious. If it is intended to use USB_ENDPOINT_DIR_MASK rather than
    USB_TYPE_MASK, then the whole conditional test could be converted to a call
    to usb_endpoint_is_bulk_in.

    An extract of the semantic patch that makes these changes is as follows:
    (http://www.emn.fr/x-info/coccinelle/)

    //
    @r1@ struct usb_endpoint_descriptor *epd; @@

    - ((epd->bmAttributes & \(USB_ENDPOINT_XFERTYPE_MASK\|3\)) ==
    - \(USB_ENDPOINT_XFER_CONTROL\|0\))
    + usb_endpoint_xfer_control(epd)

    @r5@ struct usb_endpoint_descriptor *epd; @@

    - ((epd->bEndpointAddress & \(USB_ENDPOINT_DIR_MASK\|0x80\)) ==
    - \(USB_DIR_IN\|0x80\))
    + usb_endpoint_dir_in(epd)

    @inc@
    @@

    #include

    @depends on !inc && (r1||r5)@
    @@

    + #include
    #include
    //

    Signed-off-by: Julia Lawall
    Signed-off-by: David S. Miller

    Julia Lawall
     
  • cls_cgroup can't be compiled as a module, since it's not supported by
    cgroup.

    Signed-off-by: Li Zefan
    Signed-off-by: David S. Miller

    Li Zefan
     
  • - It's better to use container_of() instead of casting cgroup_subsys_state *
    to cgroup_cls_state *.
    - Add helper function task_cls_state().
    - Rename net_cls_state() to cgrp_cls_state().

    Signed-off-by: Li Zefan
    Signed-off-by: David S. Miller

    Li Zefan
     
  • When removing a cgroup, an oops was triggered immediately. The cause
    is wrong kfree() in cgrp_destroy().

    Signed-off-by: Li Zefan
    Signed-off-by: David S. Miller

    Li Zefan
     
  • in drivers/net/eexpress.c:558, function unstick_cu()

    while (!SCB_complete(rsst=scb_status(dev))) {
    ...
    if (...)
    printk(KERN_WARNING "%s: Reset timed out status %04x, retrying...\n",
    dev->name,rsst);
    }

    but this will become

    while (!((rsst = scb_status(dev) & 0x8000) != 0) ...

    because of the macro:

    #define SCB_complete(s) ((s&0x8000)!=0)

    so rsst can only become either 0x8000 or 0, but in the latter case the
    loop ends, I think the wrong timed out status is printed. This also
    cleans up similar macros.

    Signed-off-by: Roel Kluin
    Signed-off-by: David S. Miller

    Roel Kluin
     
  • Now using Ethtool to determine ring sizes, removed the module parameters
    that controlled those values.
    Modifying ring size requires restart of the interface.

    Signed-off-by: Yevgeny Petrilin
    Signed-off-by: David S. Miller

    Yevgeny Petrilin
     
  • Removed module parameter specifying number of RX rings

    Signed-off-by: Yevgeny Petrilin
    Signed-off-by: David S. Miller

    Yevgeny Petrilin
     
  • Required in cases were dev->caps.num_comp_vectors > MAX_RX_RINGS.
    For current values this would happen on machines that have more
    then 16 cores.

    Signed-off-by: Yevgeny Petrilin
    Signed-off-by: David S. Miller

    Yevgeny Petrilin
     
  • Acked-by: Graeme Fowler
    Signed-off-by: Simon Horman
    Signed-off-by: David S. Miller

    Simon Horman
     
  • Removed duplicated include in drivers/net/arm/ks8695net.c.

    Signed-off-by: Huang Weiyi
    Signed-off-by: David S. Miller

    Huang Weiyi
     
  • Set proper operations.

    Signed-off-by: Kusanagi Kouichi
    Signed-off-by: David S. Miller

    Kusanagi Kouichi
     
  • Signed-off-by: Alexey Dobriyan
    Signed-off-by: Steve Glendinning
    Signed-off-by: David S. Miller

    Alexey Dobriyan
     
  • During network namespace teardown we either move or delete
    all of the network devices associated with a network namespace.
    In the case of veth devices deleting one will also delete it's
    pair device. If both devices are in the same network namespace
    then for_each_netdev_safe is insufficient as next may point
    to the second veth device we have deleted.

    To avoid problems I do what we do in __rtnl_kill_links and
    restart the scan of the device list, after we have deleted
    a device.

    Currently dev_change_netnamespace does not appear to suffer from
    this problem, but wireless devices are also paired and likely
    should be moved between network namespaces together. So I have
    errored on the side of caution and restart the scan of the network
    devices in that case as well.

    Signed-off-by: Eric W. Biederman
    Signed-off-by: David S. Miller

    Eric W. Biederman
     
  • No reason to roll our own here.

    Signed-off-by: Rusty Russell
    Signed-off-by: David S. Miller

    Rusty Russell
     
  • I hit similar build failure due to the change in the netif_rx_reschedule()

    drivers/net/ehea/ehea_main.c: In function 'ehea_poll':
    drivers/net/ehea/ehea_main.c:844: warning: passing argument 1 of 'netif_rx_reschedule' from incompatible pointer type
    drivers/net/ehea/ehea_main.c:844: error: too many arguments to function 'netif_rx_reschedule'
    make[3]: *** [drivers/net/ehea/ehea_main.o] Error 1

    greping through the sources for the changes missed out, we have

    ./drivers/net/arm/ixp4xx_eth.c:507: netif_rx_reschedule(dev, napi)) {
    ./drivers/net/arm/ep93xx_eth.c:310: if (more && netif_rx_reschedule(dev, napi))
    ./drivers/net/wan/ixp4xx_hss.c:657: netif_rx_reschedule(dev, napi)) {

    Signed-off-by: Kamalesh Babulal
    Acked-by: Neil Horman
    Signed-off-by: David S. Miller

    Kamalesh Babulal
     
  • bus_id is gradually being removed, so use dev_name() instead.

    Signed-off-by: Mark McLoughlin
    Cc: Kay Sievers
    Cc: Greg Kroah-Hartman
    Signed-off-by: Rusty Russell

    Mark McLoughlin
     
  • This patch moves the initial guest page table creation code to the host,
    so the launcher keeps working with PAE enabled configs.

    Signed-off-by: Matias Zabaljauregui
    Signed-off-by: Rusty Russell

    Matias Zabaljauregui
     
  • This patch implements config_changed for the s390 virtio transport.

    We use the least significant bit of the interrupt parameter field
    to decide, if this interrupt should call the virtio virtqueue callback
    or the config_changed callback.

    This method is compatible with old host and guest code. Old 64 bit guests
    will not check the bit and trigger a harmless additional vring_interrupt
    call. Old host code will never set this bit, this is also safe.

    This patch also takes care of a potential future 31 bit virtio transport
    for s390. On 31 bit _LC_PFAULT_INTPARM and __LC_EXT_PARAMS are identical.
    We exploit the alignment of the token and fold the change bit into the
    lsb of the token itself.

    Signed-off-by: Christian Borntraeger
    Signed-off-by: Rusty Russell

    Christian Borntraeger
     
  • this patch uses the new hvc callback hvc_resize to set the window size
    which allows to change the tty size of hvc_console via a hvc_resize
    function.

    I have added a new feature bit VIRTIO_CONSOLE_F_SIZE. The driver will
    change the window size on tty open and via the config_changed callback
    of the transport. Currently lguest and kvm_s390 have not implemented this
    callback, but the callback can be implemented at a later point in time.

    Signed-off-by: Christian Borntraeger
    Signed-off-by: Rusty Russell

    Christian Borntraeger
     
  • Add a release() function for virtio_pci devices so as to avoid:

    Device 'virtio0' does not have a release() function, it is broken and must be fixed

    Move the code to free the resources associated with the device
    from virtio_pci_remove() into this new function. virtio_pci_remove()
    now merely unregisters the device which should cause the final
    ref to be dropped and virtio_pci_release_dev() to be called.

    Signed-off-by: Mark McLoughlin
    Reported-by: Michael Tokarev
    Cc: Anthony Liguori
    Signed-off-by: Rusty Russell

    Mark McLoughlin
     
  • Fix parameter type warning:

    linux-next-20081126/drivers/block/virtio_blk.c:307: warning: large integer implicitly truncated to unsigned type

    Signed-off-by: Randy Dunlap
    cc: Rusty Russell
    Signed-off-by: Rusty Russell

    Randy Dunlap
     
  • Enhance the driver to handle whatever maximum segment number the host
    tells us to handle. Do to this, we need to allocate the scatterlist
    dynamically.

    We set max_phys_segments and max_hw_segments to the same value (1 if
    the host doesn't tell us, since that's safest and all known hosts do
    tell us).

    Note that kmalloc'ing the structure for large sg_elems might be
    problematic: the fix for this is sg_table, but that requires more
    work.

    Signed-off-by: Rusty Russell

    Rusty Russell