23 Jan, 2008

16 commits

  • Signed-off-by: Jeff Garzik

    Jeff Garzik
     
  • For intel ones, ahci unconditionally OR'd 0xf to PCS. This isn't
    correct for the following cases.

    * ich6/7m's which only implement P0 and P2 (0xf works fine tho)

    * ich8/9's which have six ports and needs 0x3f to enable all ports

    This patch updates PCS programming such that...

    * port_map determined by ahci_save_initial_config() is OR'd instead of 0xf

    * PCS is updated only if necessary (there are turned off enable bits)

    port_map is determined from PORTS_IMPL PCI register which is
    implemented as write or write-once register. If the register isn't
    programmed, ahci automatically generates it from number of ports,
    which is good enough for PCS programming. ICH6/7M are probably the
    only ones where non-contiguous enable bits are necessary && PORTS_IMPL
    isn't programmed properly but they're proven to work reliably with 0xf
    anyway.

    Signed-off-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • Lots of work needed to bring it up to scratch but it does work so you can
    now use the card. That makes it at least useful, especially as the other
    cardbus cards are usually INIC162x which aren't yet supported well.

    Signed-off-by: Alan Cox
    Signed-off-by: Jeff Garzik

    Alan Cox
     
  • Jeff said he preferred that the SFF tf_load followed the spec and we
    documented that anyone who needed different overrode it, rather than it
    using the ->check_status methods. No driver relies on the current behaviour.

    Signed-off-by: Alan Cox
    Signed-off-by: Jeff Garzik

    Alan Cox
     
  • I believe this version meets all Sergei's objections

    Correct the logic for when we issue a set features for transfer mode

    - If the device has IORDY and the controller has IORDY - set the mode
    - If the device has IORDY and the controller does not - turn IORDY off
    - If neither has IORDY do nothing

    Signed-off-by: Alan Cox
    Signed-off-by: Jeff Garzik

    Alan Cox
     
  • ACPI spec (ver 3.0a, p289) requires IDE power on/off executes ACPI _PSx
    methods. As recently most PATA drivers use libata, this patch adds _PSx
    method support in libata. ACPI spec doesn't mention if SATA requires the
    same _PSx method.

    Signed-off-by: Shaohua Li
    Acked-by: Len Brown
    Signed-off-by: Jeff Garzik

    Shaohua Li
     
  • Historically word 48 in the identify data was used to mean 32bit I/O
    was supported for VLB IDE etc. ATA8 reassigns this word to the Trusted
    Computing Group, where it is used for TCG features. This means that
    an ATA8 TCG drive is going to trigger 32bit I/O on some systems which
    will be funny.

    Anyway we need to sort this out ready for ATA8 so:
    - Reorder the ata.h header a bit so the ata_version function occurs early
    in it
    - Make dword_io check the ATA version
    - Add an ATA8 version checking TCG presence test

    While we are at it the current drafts have a flaw where it may not be
    possible to disable TCG features at boot (and opt out of the trusted
    model) as TCG intends because it relies on presence of a different
    optional feature (DCS). Handle this in software by refusing the TCG
    commands if libata.allow_tpm is not set. (We must make it possible
    as some environments such as proprietary VDR devices will doubtless
    want to use it to lock up content)

    Finally as with CPRM print a warning so that the user knows they may
    not be able to full access and use the device.

    Signed-off-by: Alan Cox

    Alan Cox
     
  • Add Toshiba Satellite R20 and Tecra M6 to broken suspend list. Matt
    Piermarini reported and provided the M6 patch. This is from OSDL bug 7780.

    Signed-off-by: Peter Schwenke
    Cc: Matt Piermarini
    Acked-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Peter Schwenke
     
  • When we set the MFGPT timer tick, there is a chance that we'll
    immediately assert an event. If for some reason the IRQ routing
    for this clock has been setup for some other purpose, then we
    could end up firing an interrupt into the SMM handler or worse.

    This rearranges the timer tick init function to initalize the handler
    before we set up the MFGPT clock to make sure that even if we get
    an event, it will go to the handler.

    Furthermore, in the handler we need to make sure that we clear the
    event, even if the timer isn't running.

    Signed-off-by: Jordan Crouse
    Signed-off-by: Thomas Gleixner
    Acked-by: Ingo Molnar
    Tested-by: Arnd Hannemann

    Jordan Crouse
     
  • Fix typo in arch/powerpc/boot/flatdevtree_env.h.
    There is no Documentation/networking/ixgbe.txt.

    README.cycladesZ is now in Documentation/.
    wavelan.p.h is now in drivers/net/wireless/.
    HFS.txt is now Documentation/filesystems/hfs.txt.
    OSS-files are now in sound/oss/.

    Signed-off-by: Johann Felix Soden
    Acked-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Johann Felix Soden
     
  • * 'release' of git://lm-sensors.org/kernel/mhoffman/hwmon-2.6:
    hwmon: (it87) request only Environment Controller ports

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/x86/linux-2.6-x86:
    Revert "x86: fix NMI watchdog & 'stopped time' problem"

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/mingo/linux-2.6-sched:
    sched: group scheduler, set uid share fix

    Linus Torvalds
     
  • rcu_online_cpu() should be __cpuinit instead of __devinit.

    WARNING: vmlinux.o(.text+0x4b6d5): Section mismatch: reference to .init.text: (between 'rcu_cpu_notify' and 'wakeme_after_rcu')

    Signed-off-by: Randy Dunlap
    Cc: Sam Ravnborg
    Acked-by: Ingo Molnar
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • The extra rom[0] check is flagging valid temperatures as invalid when
    there is already a CRC data transmission check.

    w1_therm_read_bin()
    if (rom[8] == crc && rom[0])
    verdict = 1;

    Requiring rom[0] to be non-zero will flag as invalid temperature
    conversions when the low byte is zero, specifically the temperatures 0C,
    16C, 32C, 48C, -16C, -32C, and -48C.

    The CRC check is produced on the device for the previous 8 bytes and is
    required to ensure the data integrity in transmission. I don't see why the
    extra check for rom[0] being non-zero is in there. Evgeniy Polyakov didn't
    know either. Just for a check I unplugged the sensor, executed a
    temperature conversion, and read the results. The read was all ff's, which
    also failed the CRC, so it doesn't need to protect against a disconnected
    sensor.

    I have more extensive patches in the work, but these two trivial ones will
    do for today. I would like to hear from people who use the ds2490 USB to
    one wire dongle. 1 if you would be willing to test the patches as I
    currently only have the one sensor on a short parisite powered wire, 2 if
    there is any cheap sources for the ds2490.

    Signed-off-by: David Fries
    Acked-by: Evgeniy Polyakov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Fries
     
  • Correct the decoding of negative C temperatures. The code did a binary OR
    of two bytes to make a 16 bit value, but assignd it to an integer. This
    caused the value to not be sign extended and to loose that it was a
    negative number in the assignment.

    Before the patch (in my freezer),
    w1_slave
    ed fe 4b 46 7f ff 03 10 e4 : crc=e4 YES
    ed fe 4b 46 7f ff 03 10 e4 t=4078
    With the patch,
    e3 fe 4b 46 7f ff 0d 10 81 : crc=81 YES
    e3 fe 4b 46 7f ff 0d 10 81 t=-17

    Signed-off-by: David Fries
    Acked-by: Evgeniy Polyakov
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Fries
     

22 Jan, 2008

17 commits

  • The IT8705F and related parts are Super I/O controllers that contain
    many separate devices.

    Some BIOSes describe IT8705F I/O port usage under a motherboard device
    (PNP0C02) with overlapping regions, e.g., 0x290-0x29f and 0x290-0x294.

    The it87 driver supports only the Environment Controller, which requires
    only two ISA ports, but it used to request an eight-port range. If that
    range exceeds a range reported by the BIOS, as 0x290-0x297 would, the
    request fails, and the it87 driver cannot claim the device.

    This patch makes the it87 driver request only the two ports used for the
    Environment Controller device.

    Systems where this problem has been reported:
    Gigabyte GA-K8N Ultra 9
    Gigabyte M56S-S3
    Gigabyte GA-965G-DS3

    Kernel bug reports:
    http://bugzilla.kernel.org/show_bug.cgi?id=9514
    http://lkml.org/lkml/2007/12/4/466

    Related change:
    http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=a7839e960675b549f06209d18283d5cee2ce9261

    The patch above increases the number of PNP port resources we support.
    Prior to this patch, we ignored some port resources, which masked the
    it87 problem.

    Signed-off-by: Bjorn Helgaas
    Signed-off-by: Mark M. Hoffman

    Bjorn Helgaas
     
  • setting cpu share to 1 causes hangs, as reported in:

    http://bugzilla.kernel.org/show_bug.cgi?id=9779

    as the default share is 1024, the values of 0 and 1 can indeed
    cause problems. Limit it to 2 or higher values.

    These values can only be set by the root user - but still it
    makes sense to protect against nonsensical values.

    Signed-off-by: Ingo Molnar

    Ingo Molnar
     
  • This reverts commit d4d25deca49ec2527a634557bf5a6cf449f85deb.

    It tried to fix long standing bugzilla entries, but the solution was
    reported to break other systems. The reporter of

    http://bugzilla.kernel.org/show_bug.cgi?id=9791

    tracked it down to this commit and confirmed that reverting the patch
    restores the correct behaviour. It's too late in the release cycle to
    find a better solution than reverting the commit to avoid regressions.

    Signed-off-by: Thomas Gleixner
    Acked-by: Ingo Molnar

    Thomas Gleixner
     
  • Change two occurances of "behavour" to "behaviour".

    Signed-off-by: Linus Nilsson
    Signed-off-by: Linus Torvalds

    Linus Nilsson
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6:
    selinux: fix memory leak in netlabel code

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    [ICMP]: ICMP_MIB_OUTMSGS increment duplicated
    [IPV6]: RFC 2011 compatibility broken
    [IPV6]: ICMP6_MIB_OUTMSGS increment duplicated
    [NET]: rtnl_link: fix use-after-free
    [AF_KEY]: Fix skb leak on pfkey_send_migrate() error
    [ATM] atm/suni.c: Fix section mismatch.
    [ATM] atm/idt77105.c: Fix section mismatch.
    [IrDA]: af_irda memory leak fixes
    [NEIGH]: Revert 'Fix race between neigh_parms_release and neightbl_fill_parms'
    [NETFILTER]: bridge-netfilter: fix net_device refcnt leaks
    [IPV6] ROUTE: Make sending algorithm more friendly with RFC 4861.
    [IPV4] FIB_HASH : Avoid unecessary loop in fn_hash_dump_zone()
    [NET]: Fix interrupt semaphore corruption in Intel drivers.
    [IPV4] fib_trie: fix duplicated route issue
    [IPV4] fib_hash: fix duplicated route issue
    [IPV6]: Mischecked tw match in __inet6_check_established.
    rfkill: call rfkill_led_trigger_unregister() on error

    Linus Torvalds
     
  • * 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus:
    tc35815: Use irq number for tc35815-mac platform device id
    [MIPS] Malta: Fix reading the PCI clock frequency on big-endian
    [MIPS] SMTC: Fix build error.

    Linus Torvalds
     
  • In linux-2.6.24-rc1, security/commoncap.c:cap_inh_is_capped() was
    introduced. It has the exact reverse of its intended behavior. This
    led to an unintended privilege esculation involving a process'
    inheritable capability set.

    To be exposed to this bug, you need to have Filesystem Capabilities
    enabled and in use. That is:

    - CONFIG_SECURITY_FILE_CAPABILITIES must be defined for the buggy code
    to be compiled in.

    - You also need to have files on your system marked with fI bits raised.

    Signed-off-by: Andrew G. Morgan

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

    Andrew G. Morgan
     
  • Fix line length calculation. var->width is the size of the display in mm. We
    like to use the pixel size.

    Without this fix, dynamic (fbset) based resolution and depths changes with
    s3c2410_fb don't work at all.

    Spotted by john cass

    Signed-off-by: Stefan Schmidt
    Signed-off-by: Harald Welte
    Acked-by: Ben Dooks
    Acked-by: Arnaud Patard
    Acked-by: Krzysztof Helt
    Cc: "Antonino A. Daplas"
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Stefan Schmidt
     
  • Signed-off-by: Cyrill Gorcunov
    Acked-by: Jesper Nilsson
    Cc: Mikael Starvik
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Cyrill Gorcunov
     
  • The caller is __cpuinit.
    Also, this code block and its caller are inside #ifdef CONFIG_HOTPLUG_CPU
    blocks, so this code should reflect that config symbol's usage.

    WARNING: vmlinux.o(.text+0x4252f): Section mismatch: reference to .init.text: (between 'timer_cpu_notify' and 'msleep')

    Signed-off-by: Randy Dunlap
    Cc: Sam Ravnborg
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Fix section mismatch in hrtimer.c:

    WARNING: vmlinux.o(.text+0x50c61): Section mismatch: reference to .init.text: (between 'hrtimer_cpu_notify' and 'down_read_trylock')

    Noticed by Johannes Berg and confirmed by Sam Ravnborg.

    Signed-off-by: Randy Dunlap
    Cc: Sam Ravnborg
    Cc: Ingo Molnar
    Cc: Thomas Gleixner
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • If we get a data URB back from the hardware after we have put the tty to
    bed we go kaboom. Fortunately all we need to do is process the URB without
    trying to ram its contents down the throat of an ex-tty.

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

    Alan Cox
     
  • The tc35815-mac platform device used a pci bus number and a devfn to
    identify its target device, but the pci bus number may vary if some
    bus-bridges are found. Use irq number which is be unique for embedded
    controllers.

    Signed-off-by: Atsushi Nemoto
    Signed-off-by: Ralf Baechle

    Atsushi Nemoto
     
  • The JMPRS register on Malta boards keeps a 32-bit CPU-endian
    value. The readw() function assumes that the value it reads is a
    little-endian 16-bit number. Therefore, using readw() to obtain
    the value of the JMPRS register is a mistake. This error leads
    to incorrect reading of the PCI clock frequency on big-endian
    during board start-up.

    Change readw() to __raw_readl().

    This was tested by injecting a call to printk() and verifying
    that the value of the jmpr variable was consistent with current
    setting of the JP4 "PCI CLK" jumper.

    Signed-off-by: Dmitri Vorobiev
    Signed-off-by: Ralf Baechle

    Dmitri Vorobiev
     
  • Fix compile warning (which becomes compile error due to -Werror). Type of
    argument "flags" for spin_lock_irqsave() was incorrect in some functions.

    Signed-off-by: Frank Rowand
    Signed-off-by: Ralf Baechle

    Frank Rowand
     
  • Fix a memory leak in security_netlbl_sid_to_secattr() as reported here:
    * https://bugzilla.redhat.com/show_bug.cgi?id=352281

    Signed-off-by: Paul Moore
    Signed-off-by: James Morris

    Paul Moore
     

21 Jan, 2008

7 commits

  • Commit "96793b482540f3a26e2188eaf75cb56b7829d3e3" (Add ICMPMsgStats
    MIB (RFC 4293)) made a mistake.

    In that patch, David L added a icmp_out_count() in
    ip_push_pending_frames(), remove icmp_out_count() from
    icmp_reply(). But he forgot to remove icmp_out_count() from
    icmp_send() too. Since icmp_send and icmp_reply will call
    icmp_push_reply, which will call ip_push_pending_frames, a duplicated
    increment happened in icmp_send.

    This patch remove the icmp_out_count from icmp_send too.

    Signed-off-by: Wang Chen
    Signed-off-by: David S. Miller

    Wang Chen
     
  • The snmp6 entry name was changed, and it broke compatibility
    to RFC 2011.

    Signed-off-by: Wang Chen
    Acked-by: YOSHIFUJI Hideaki
    Signed-off-by: David S. Miller

    Wang Chen
     
  • icmpv6_send() calls ip6_push_pending_frames() indirectly.
    Both ip6_push_pending_frames() and icmpv6_send() increment
    counter ICMP6_MIB_OUTMSGS.

    This patch remove the increment from icmpv6_send.

    Signed-off-by: Wang Chen
    Acked-by: YOSHIFUJI Hideaki
    Signed-off-by: David S. Miller

    Wang Chen
     
  • When unregistering the rtnl_link_ops, all existing devices using
    the ops are destroyed. With nested devices this may lead to a
    use-after-free despite the use of for_each_netdev_safe() in case
    the upper device is next in the device list and is destroyed
    by the NETDEV_UNREGISTER notifier.

    The easy fix is to restart scanning the device list after removing
    a device. Alternatively we could add new devices to the front of
    the list to avoid having dependant devices follow the device they
    depend on. A third option would be to only restart scanning if
    dev->iflink of the next device matches dev->ifindex of the current
    one. For now this seems like the safest solution.

    With this patch, the veth rtnl_link_ops unregistration can use
    rtnl_link_unregister() directly since it now also handles destruction
    of multiple devices at once.

    Signed-off-by: Patrick McHardy
    Signed-off-by: David S. Miller

    Patrick McHardy
     
  • Signed-off-by: Patrick McHardy
    Signed-off-by: David S. Miller

    Patrick McHardy
     
  • EXPORT_SYMBOL'ed code mustn't be __*init.

    Signed-off-by: Adrian Bunk
    Acked-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Adrian Bunk
     
  • EXPORT_SYMBOL'ed code mustn't be __*init.

    Signed-off-by: Adrian Bunk
    Acked-by: Sam Ravnborg
    Signed-off-by: David S. Miller

    Adrian Bunk