10 Oct, 2007

23 commits

  • The future libsensors needs these individual alarm and fault files.

    Also delete old and unused alarm defines.

    Signed-off-by: Jean Delvare
    Acked-by: Juerg Haefliger
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • The SMSC EMC6D100 supports 3 additional voltage channels. The lm85
    driver reads the register values for these, but doesn't create the
    corresponding sysfs files, so the user can't read the values nor write
    the limits. Create the missing sysfs files.

    Signed-off-by: Jean Delvare
    Acked-by: Juerg Haefliger
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • This lets us get rid of macro-generated functions and shrinks the
    driver size by about 10%. I used a new style suggested by Mark M.
    Hoffman to retrieve the channel number. Instead of:

    struct sensor_device_attribute *sda = to_sensor_dev_attr(attr);
    int nr = sda->index;

    I do:

    int nr = to_sensor_dev_attr(attr)->index;

    This looks better, and even allows the compiler to do some minor
    optimizations.

    Signed-off-by: Jean Delvare
    Acked-by: Krzysztof Helt
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • Convert from class_device to device for hwmon_device_register/unregister

    Signed-off-by: Tony Jones
    Signed-off-by: Greg Kroah-Hartman
    Signed-off-by: Kay Sievers
    Signed-off-by: Mark M. Hoffman

    Tony Jones
     
  • The CPU hotplug notifier_block coretemp_cpu_notifier is already defined
    inside an #ifdef HOTPLUG_CPU, therefore marking it as __cpuinitdata is
    quite a pointless thing to do.

    Also, remove duplicate prototype of function coretemp_update_device()
    at the top of this file (another one already exists barely 10 lines
    above this one :-)

    Signed-off-by: Satyam Sharma
    Acked-by: Rudolf Marek
    Signed-off-by: Mark M. Hoffman

    Satyam Sharma
     
  • Add support for Fintek F75375S/SP and F75373.

    Signed-off-by: Riku Voipio
    Signed-off-by: Mark M. Hoffman

    Riku Voipio
     
  • * Document the name attribute.
    * Document the *_label attributes.
    * Drop "typical usage" lists, they no longer match the reality.
    * Drop non hardware-monitoring related entries.

    Signed-off-by: Jean Delvare
    Acked-by: Hans de Goede
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • It's confusing to display debugging messages for fan3 and pwm3 for
    chips which don't have them.

    Signed-off-by: Jean Delvare
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • Add a name attribute to the lm70 devices. This is required for
    libsensors to recognize them.

    Also drop the "+" before the temperature value, even though it did
    not cause problems to libsensors, other hardware monitoring drivers
    don't print it, so it's more consistent that way.

    Signed-off-by: Jean Delvare
    Acked-by: Hans de Goede
    Acked-by: Kaiwan
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • * Drop documentation of generic module parameters.
    * Drop redundant section "Driver Description".
    * Drop sample configuration section, it belongs to sensors.conf.eg.
    * Random spelling and punctuation fixes.

    Signed-off-by: Jean Delvare
    Acked-by: Hans J. Koch
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • Deprecate the use of thermistor beta values as thermal sensor types.
    No driver supports changing the beta value anyway.

    Signed-off-by: Jean Delvare
    Acked-by: Hans de Goede
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • - replace differing temperature variable types by long
    - use strtol() instead of strtoul() for conversion

    Signed-off-by: Christian Hohnstaedt
    Acked-by: Jean Delvare
    Signed-off-by: Mark M. Hoffman

    Christian Hohnstaedt
     
  • This patch adds individual alarm and fault files to
    the thmc50 driver. These sysfs entries are required
    for a new libsensors library.

    Signed-off-by: Krzysztof Helt
    Acked-by: Jean Delvare
    Signed-off-by: Mark M. Hoffman

    Krzysztof Helt
     
  • New driver to expose temperature and fan controls attached to Analog
    Devices ADT7470 hwmon chips.

    Signed-off-by: Darrick J. Wong
    Signed-off-by: Mark M. Hoffman

    Darrick J. Wong
     
  • Signed-off-by: Mark M. Hoffman

    Mark M. Hoffman
     
  • This is the second version of a new driver for the hardware monitoring features
    of the Fintek F71882FG and F71883FG Super-I/O chips. This version has several
    small fixes for flaws discovered during the review of the first version.

    This version of the driver does not support the pwm part of these chips (yet).
    I'll first design a sysfs api for this and post that for discussion, and then
    implement pwm support as an incremental patch over this one.

    This driver supports all sensors of this chip, except for the vid inputs. The
    vid inputs are somewhat documented in the datasheet, but I know nothing about
    vid/vrm stuff. Help with this would be much appreciated.

    Signed-off-by: Hans de Goede
    Acked-by: Darrick J. Wong
    Signed-off-by: Mark M. Hoffman

    Hans de Goede
     
  • The Fintek F71806F/FG is compatible with the F71872F/FG, so it is
    already supported by the f71805f hardware monitoring driver. In fact,
    both chips have the same chip ID, so the driver can't even
    differentiate between them.

    Signed-off-by: Jean Delvare
    Acked-by: Hans de Goede
    Signed-off-by: Mark M. Hoffman

    Jean Delvare
     
  • w83792d: add individual alarm files for the new libsensors.

    Signed-off-by: Gong Jun
    Signed-off-by: Jean Delvare
    Signed-off-by: Mark M. Hoffman

    Gong Jun
     
  • This patch provides some coding standard cleanups and general code improvements
    (more debug info, signed values for temperatures, changed names of ADM1023
    regs, removed read/write_value functions).

    Signed-off-by: Krzysztof Helt
    Acked-by: Jean Delvare
    Signed-off-by: Mark M. Hoffman

    Krzysztof Helt
     
  • Linus Torvalds
     
  • * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
    [MIPS] Au1000: set the PCI controller IO base
    [MIPS] Alchemy: Fix USB initialization.
    [MIPS] IP32: Fix fatal typo in address computation.

    Linus Torvalds
     
  • The recent fix for a circular lock dependency unfortunately introduced a
    potential memory leak in the event where the call to nlmsvc_lookup_host
    fails for some reason.

    Thanks to Roel Kluin for spotting this.

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

    Trond Myklebust
     
  • The recent mv_fill_sg() rewrite, to fix a data corruption problem
    related to IOMMU virtual merging, forgot to account for the
    potentially-increased size of the scatter/gather table after its run.

    Additionally, the DMA boundary is reduced from 0xffffffff to 0xffff
    to more closely match the needs of mv_fill_sg().

    Signed-off-by: Jeff Garzik
    Signed-off-by: Linus Torvalds

    Jeff Garzik
     

09 Oct, 2007

10 commits

  • The PCI controller IO base was not set in the au1000 pci code.

    Signed-off-by: Felix Fietkau
    Signed-off-by: John Crispin
    Signed-off-by: Florian Fainelli
    Signed-off-by: Ralf Baechle

    Florian Fainelli
     
  • This patch fixes a wrong ifdef in the board setup code, leading to the GPIO
    pin not being pulled high, and thus the USB switch not being powered at all.

    This finishes the rename of CONFIG_USB_OHCI to CONFIG_USB_OHCI_HCD, which
    started in 2005 (before 2.6.12-rc2), then probably because things were
    working anyway for most people got forgotten.

    [Ralf: Paolo's original patch didn't fix the module case, Florian's patch
    only fixed MTX1 etc. so this is a combined patch plus some cleanups.]

    Cc: Giuseppe Patanè
    Cc: Ralf Baechle
    Signed-off-by: Paolo 'Blaisorblade' Giarrusso
    Signed-off-by: Andrew Morton
    Signed-off-by: Felix Fietkau
    Signed-off-by: John Crispin
    Signed-off-by: Florian Fainelli
    Signed-off-by: Ralf Baechle

    Florian Fainelli
     
  • Signed-off-by: Giuseppe Sacco
    Signed-off-by: Ralf Baechle

    Giuseppe Sacco
     
  • When building a custom keymap, after setting GENERATE_KEYMAP := 1 in
    drivers/char/Makefile, the kernel build fails like this:

    CC drivers/char/vt.o
    make[2]: *** No rule to make target `drivers/char/%.map', needed by `drivers/char/defkeymap.c'. Stop.
    make[1]: *** [drivers/char] Error 2
    make: *** [drivers] Error 2

    This was caused by commit af8b128719f5248e542036ea994610a29d0642a6, which
    deleted a necessary colon from the Makefile rule that generates the keymap,
    since that rule contains both a target and a target-pattern. The following
    patch puts the colon back:

    Signed-off-by: Maarten Bressers
    Cc: Yoichi Yuasa
    Cc: Ralf Baechle
    Cc: Sam Ravnborg
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Maarten Bressers
     
  • Fix against access random data bytes outside the dev->chanmap array.
    Thanks to Oliver Neukum for pointing me to this issue.

    Signed-off-by: Karsten Keil
    Signed-off-by: Linus Torvalds

    Karsten Keil
     
  • * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
    [IPv6]: Fix ICMPv6 redirect handling with target multicast address
    [PKT_SCHED] cls_u32: error code isn't been propogated properly
    [ROSE]: Fix rose.ko oops on unload
    [TCP]: Fix fastpath_cnt_hint when GSO skb is partially ACKed

    Linus Torvalds
     
  • When IOCB_FLAG_RESFD flag is set and iocb->aio_resfd is incorrect,
    statement 'goto out_put_req' is executed. At label 'out_put_req',
    aio_put_req(..) is called, which requires 'req->ki_filp' set.

    Signed-off-by: Yan Zheng
    Cc: Zach Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yan Zheng
     
  • find_lock_page increases page's usage count, we should decrease it
    before return VM_FAULT_SIGBUS

    Signed-off-by: Yan Zheng
    Cc: Nick Piggin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yan Zheng
     
  • The test for VM_CAN_NONLINEAR always fails

    Signed-off-by: Yan Zheng
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Yan Zheng
     
  • All the current page_mkwrite() implementations also set the page dirty. Which
    results in the set_page_dirty_balance() call to _not_ call balance, because the
    page is already found dirty.

    This allows us to dirty a _lot_ of pages without ever hitting
    balance_dirty_pages(). Not good (tm).

    Force a balance call if ->page_mkwrite() was successful.

    Signed-off-by: Peter Zijlstra
    Signed-off-by: Linus Torvalds

    Peter Zijlstra
     

08 Oct, 2007

7 commits

  • When the ICMPv6 Target address is multicast, Linux processes the
    redirect instead of dropping it. The problem is in this code in
    ndisc_redirect_rcv():

    if (ipv6_addr_equal(dest, target)) {
    on_link = 1;
    } else if (!(ipv6_addr_type(target) & IPV6_ADDR_LINKLOCAL)) {
    ND_PRINTK2(KERN_WARNING
    "ICMPv6 Redirect: target address is not
    link-local.\n");
    return;
    }

    This second check will succeed if the Target address is, for example,
    FF02::1 because it has link-local scope. Instead, it should be checking
    if it's a unicast link-local address, as stated in RFC 2461/4861 Section
    8.1:

    - The ICMP Target Address is either a link-local address (when
    redirected to a router) or the same as the ICMP Destination
    Address (when redirected to the on-link destination).

    I know this doesn't explicitly say unicast link-local address, but it's
    implied.

    This bug is preventing Linux kernels from achieving IPv6 Logo Phase II
    certification because of a recent error that was found in the TAHI test
    suite - Neighbor Disovery suite test 206 (v6LC.2.3.6_G) had the
    multicast address in the Destination field instead of Target field, so
    we were passing the test. This won't be the case anymore.

    The patch below fixes this problem, and also fixes ndisc_send_redirect()
    to not send an invalid redirect with a multicast address in the Target
    field. I re-ran the TAHI Neighbor Discovery section to make sure Linux
    passes all 245 tests now.

    Signed-off-by: Brian Haley
    Acked-by: David L Stevens
    Signed-off-by: David S. Miller

    Brian Haley
     
  • Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Stephen Hemminger
     
  • Commit a3d384029aa304f8f3f5355d35f0ae274454f7cd aka
    "[AX.25]: Fix unchecked rose_add_loopback_neigh uses"
    transformed rose_loopback_neigh var into statically allocated one.
    However, on unload it will be kfree's which can't work.

    Steps to reproduce:

    modprobe rose
    rmmod rose

    BUG: unable to handle kernel NULL pointer dereference at virtual address 00000008
    printing eip:
    c014c664
    *pde = 00000000
    Oops: 0000 [#1]
    PREEMPT DEBUG_PAGEALLOC
    Modules linked in: rose ax25 fan ufs loop usbhid rtc snd_intel8x0 snd_ac97_codec ehci_hcd ac97_bus uhci_hcd thermal usbcore button processor evdev sr_mod cdrom
    CPU: 0
    EIP: 0060:[] Not tainted VLI
    EFLAGS: 00210086 (2.6.23-rc9 #3)
    EIP is at kfree+0x48/0xa1
    eax: 00000556 ebx: c1734aa0 ecx: f6a5e000 edx: f7082000
    esi: 00000000 edi: f9a55d20 ebp: 00200287 esp: f6a5ef28
    ds: 007b es: 007b fs: 0000 gs: 0033 ss: 0068
    Process rmmod (pid: 1823, ti=f6a5e000 task=f7082000 task.ti=f6a5e000)
    Stack: f9a55d20 f9a5200c 00000000 00000000 00000000 f6a5e000 f9a5200c f9a55a00
    00000000 bf818cf0 f9a51f3f f9a55a00 00000000 c0132c60 65736f72 00000000
    f69f9630 f69f9528 c014244a f6a4e900 00200246 f7082000 c01025e6 00000000
    Call Trace:
    [] rose_rt_free+0x1d/0x49 [rose]
    [] rose_rt_free+0x1d/0x49 [rose]
    [] rose_exit+0x4c/0xd5 [rose]
    [] sys_delete_module+0x15e/0x186
    [] remove_vma+0x40/0x45
    [] sysenter_past_esp+0x8f/0x99
    [] trace_hardirqs_on+0x118/0x13b
    [] sysenter_past_esp+0x5f/0x99
    =======================
    Code: 05 03 1d 80 db 5b c0 8b 03 25 00 40 02 00 3d 00 40 02 00 75 03 8b 5b 0c 8b 73 10 8b 44 24 18 89 44 24 04 9c 5d fa e8 77 df fd ff 56 08 89 f8 e8 84 f4 fd ff e8 bd 32 06 00 3b 5c 86 60 75 0f
    EIP: [] kfree+0x48/0xa1 SS:ESP 0068:f6a5ef28

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: David S. Miller

    Alexey Dobriyan
     
  • When only GSO skb was partially ACKed, no hints are reset,
    therefore fastpath_cnt_hint must be tweaked too or else it can
    corrupt fackets_out. The corruption to occur, one must have
    non-trivial ACK/SACK sequence, so this bug is not very often
    that harmful. There's a fackets_out state reset in TCP because
    fackets_out is known to be inaccurate and that fixes the issue
    eventually anyway.

    In case there was also at least one skb that got fully ACKed,
    the fastpath_skb_hint is set to NULL which causes a recount for
    fastpath_cnt_hint (the old value won't be accessed anymore),
    thus it can safely be decremented without additional checking.

    Reported by Cedric Le Goater

    Signed-off-by: Ilpo Järvinen
    Signed-off-by: David S. Miller

    Ilpo Järvinen
     
  • We should only reparent to a class former class devices that
    form the base of class hierarchy. Nested devices should still
    grow from their real parents.

    Signed-off-by: Dmitry Torokhov
    Tested-by: Andrey Borzenkov
    Tested-by: Anssi Hannula
    Signed-off-by: Linus Torvalds

    Dmitry Torokhov
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6:
    firewire: point to migration document

    Linus Torvalds
     
  • Add the manufacturer and card id of teltonica pcmcia modems to serial_cs.c

    Signed-off-by: Attila Kinali
    Acked-by: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Attila Kinali