Skip to content
  1. Jul 19, 2012
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · 309d4b00
      Linus Torvalds authored
      Pull networking changes from David Miller:
       "Ok, we should be good to go now"
      
      1) We have to statically initialize the init_net device list head rather
         than do so in an initcall, otherwise netprio_cgroup crashes if it's
         built statically rather than modular (Mark D.  Rustad)
      
      2) Fix SKB null oopser in CIPSO ipv4 option processing (Paul Moore)
      
      3) Qlogic maintainers update (Anirban Chakraborty)
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
        net: Statically initialize init_net.dev_base_head
        MAINTAINERS: Changes in qlcnic and qlge maintainers list
        cipso: don't follow a NULL pointer when setsockopt() is called
      309d4b00
    • Linus Torvalds's avatar
      Merge branch 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid · 61c901c5
      Linus Torvalds authored
      Pull HID update from Jiri Kosina:
       "A final round of changes for HID for 3.5: just device ID additions."
      
      * 'upstream-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid:
        HID: hid-multitouch: add support for Zytronic panels
        HID: add Sennheiser BTD500USB device support
        HID: add battery quirk for Apple Wireless ANSI
      61c901c5
    • Ezequiel Garcia's avatar
      cx25821: Remove bad strcpy to read-only char* · 380e99fc
      Ezequiel Garcia authored
      
      
      The strcpy was being used to set the name of the board.  Since the
      destination char* was read-only and the name is set statically at
      compile time; this was both wrong and redundant.
      
      The type of char* is changed to const char* to prevent future errors.
      
      Reported-by: default avatarRadek Masin <radek@masin.eu>
      Signed-off-by: default avatarEzequiel Garcia <elezegarcia@gmail.com>
      [ Taking directly due to vacations   - Linus ]
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      380e99fc
    • Benjamin Tissoires's avatar
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · 8a7298b7
      Linus Torvalds authored
      Pull target fixes from Nicholas Bellinger:
       "This includes a bugfix from MDR to address a NULL pointer OOPs with
        FCoE aborts, along with a WRITE_SAME emulation bugfix for NOLB=0
        cases, and persistent reservation return cleanups from Roland.
      
        All three patches are CC'ed to stable."
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
        target: Fix range calculation in WRITE SAME emulation when num blocks == 0
        target: Clean up returning errors in PR handling code
        tcm_fc: Fix crash seen with aborts and large reads
      8a7298b7
    • Olaf Hering's avatar
      kexec: update URL of kexec homepage · b1bdd2eb
      Olaf Hering authored
      
      
      The referenced html file does not exist anymore. Replace the URL with
      the current project homepage.
      
      Signed-off-by: default avatarOlaf Hering <olaf@aepfle.de>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      b1bdd2eb
    • Yoichi Yuasa's avatar
      mips: fix bug.h build regression · 893a0574
      Yoichi Yuasa authored
      Commit 37778088
      
       ("bug.h: need linux/kernel.h for TAINT_WARN.") broke
      all MIPS builds:
      
          CC      arch/mips/kernel/machine_kexec.o
        include/linux/log2.h: In function '__ilog2_u32':
        include/linux/log2.h:34:2: error: implicit declaration of function 'fls' [-Werror=implicit-function-declaration]
        include/linux/log2.h: In function '__ilog2_u64':
        include/linux/log2.h:42:2: error: implicit declaration of function 'fls64' [-Werror=implicit-function-declaration]
        ...
      
      Signed-off-by: default avatarYoichi Yuasa <yuasa@linux-mips.org>
      Tested-by: default avatarJohn Crispin <blogic@openwrt.org>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: David Daney <ddaney@caviumnetworks.com>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      893a0574
    • Linus Torvalds's avatar
      Make wait_for_device_probe() also do scsi_complete_async_scans() · eea03c20
      Linus Torvalds authored
      Commit a7a20d10 ("sd: limit the scope of the async probe domain")
      make the SCSI device probing run device discovery in it's own async
      domain.
      
      However, as a result, the partition detection was no longer synchronized
      by async_synchronize_full() (which, despite the name, only synchronizes
      the global async space, not all of them).  Which in turn meant that
      "wait_for_device_probe()" would not wait for the SCSI partitions to be
      parsed.
      
      And "wait_for_device_probe()" was what the boot time init code relied on
      for mounting the root filesystem.
      
      Now, most people never noticed this, because not only is it
      timing-dependent, but modern distributions all use initrd.  So the root
      filesystem isn't actually on a disk at all.  And then before they
      actually mount the final disk filesystem, they will have loaded the
      scsi-wait-scan module, which not only does the expected
      wait_for_device_probe(), but also does scsi_complete_async_scans().
      
      [ Side note: scsi_complete_async_scans() had also been partially broken,
        but that was fixed in commit 43a8d39d ("fix async probe
        regression"), so that same commit a7a20d10
      
       had actually broken
        setups even if you used scsi-wait-scan explicitly ]
      
      Solve this problem by just moving the scsi_complete_async_scans() call
      into wait_for_device_probe().  Everybody who wants to wait for device
      probing to finish really wants the SCSI probing to complete, so there's
      no reason not to do this.
      
      So now "wait_for_device_probe()" really does what the name implies, and
      properly waits for device probing to finish.  This also removes the now
      unnecessary extra calls to scsi_complete_async_scans().
      
      Reported-and-tested-by: default avatarArtem S. Tashkinov <t.artem@mailcity.com>
      Cc: Dan Williams <dan.j.williams@gmail.com>
      Cc: Alan Stern <stern@rowland.harvard.edu>
      Cc: James Bottomley <jbottomley@parallels.com>
      Cc: Borislav Petkov <bp@amd64.org>
      Cc: linux-scsi <linux-scsi@vger.kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      eea03c20
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security · e2f3b785
      Linus Torvalds authored
      Pull SELinux regression fixes from James Morris.
      
      Andrew Morton has a box that hit that open perms problem.
      
      I also renamed the "epollwakeup" selinux name for the new capability to
      be "block_suspend", to match the rename done by commit d9914cf6
      ("PM: Rename CAP_EPOLLWAKEUP to CAP_BLOCK_SUSPEND").
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/linux-security:
        SELinux: do not check open perms if they are not known to policy
        SELinux: include definition of new capabilities
      e2f3b785
    • Rustad, Mark D's avatar
      net: Statically initialize init_net.dev_base_head · 734b6541
      Rustad, Mark D authored
      
      
      This change eliminates an initialization-order hazard most
      recently seen when netprio_cgroup is built into the kernel.
      
      With thanks to Eric Dumazet for catching a bug.
      
      Signed-off-by: default avatarMark Rustad <mark.d.rustad@intel.com>
      Acked-by: default avatarEric Dumazet <edumazet@google.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      734b6541
    • Linus Torvalds's avatar
      Merge branch 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6f702428
      Linus Torvalds authored
      One more time/ntp fix pulled from Ingo Molnar.
      
      * 'timers-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        ntp: Fix STA_INS/DEL clearing bug
      6f702428
    • Hans Verkuil's avatar
      v4l2-dev: forgot to add VIDIOC_DV_TIMINGS_CAP. · c1e32096
      Hans Verkuil authored
      
      
      The VIDIOC_DV_TIMINGS_CAP ioctl check wasn't added to determine_valid_ioctls().
      This caused this ioctl to always return -ENOTTY.
      
      The cause for this was that for 3.5 two patch series were merged, one
      changing V4L2 core ioctl handling and one adding new functionality, and
      some of the new functionality wasn't handled by the new V4L2 core code.
      
      Signed-off-by: default avatarHans Verkuil <hans.verkuil@cisco.com>
      [ Taking it directly due to vacations  - Linus ]
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      c1e32096
    • Linus Torvalds's avatar
      Merge tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · fe2e27bb
      Linus Torvalds authored
      Pull ARM SoC fixes for SPEAr from Olof Johansson:
       "These are arriving very late in the release cycle, but there has been
        a change of maintainers on the SPEAr platform and they have needed a
        while to get going.
      
        The patch count is higher than I would like at this point, but they're
        all relevant fixes and well-contained in their own platform code.  I
        still think it's suitable 3.5 material and I don't think it should
        increase the need for a -rc8 since they are so contained."
      
      * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: SPEAr600: Fix timer interrupt definition in spear600.dtsi
        ARM: dts: SPEAr320: Boot the board in EXTENDED_MODE
        ARM: dts: SPEAr320: Fix compatible string
        Clk: SPEAr1340: Update sys clock parent array
        clk: SPEAr1340: Fix clk enable register for uart1 and i2c1.
        ARM: SPEAr13xx: Fix Interrupt bindings
        Clk:spear6xx:Fix: Rename clk ids within predefined limit
        Clk:spear3xx:Fix: Rename clk ids within predefined limit
        clk:spear1310:Fix: Rename clk ids within predefined limit
        clk:spear1340:Fix: Rename clk ids within predefined limit
      fe2e27bb
    • Anirban Chakraborty's avatar
    • Linus Torvalds's avatar
      Merge git://git.samba.org/sfrench/cifs-2.6 · a9866ba4
      Linus Torvalds authored
      Pull CIFS fixes from Steve French.
      
      * git://git.samba.org/sfrench/cifs-2.6:
        cifs: always update the inode cache with the results from a FIND_*
        cifs: when CONFIG_HIGHMEM is set, serialize the read/write kmaps
        cifs: on CONFIG_HIGHMEM machines, limit the rsize/wsize to the kmap space
        Initialise mid_q_entry before putting it on the pending queue
      a9866ba4
    • Paul Moore's avatar
      cipso: don't follow a NULL pointer when setsockopt() is called · 89d7ae34
      Paul Moore authored
      
      
      As reported by Alan Cox, and verified by Lin Ming, when a user
      attempts to add a CIPSO option to a socket using the CIPSO_V4_TAG_LOCAL
      tag the kernel dies a terrible death when it attempts to follow a NULL
      pointer (the skb argument to cipso_v4_validate() is NULL when called via
      the setsockopt() syscall).
      
      This patch fixes this by first checking to ensure that the skb is
      non-NULL before using it to find the incoming network interface.  In
      the unlikely case where the skb is NULL and the user attempts to add
      a CIPSO option with the _TAG_LOCAL tag we return an error as this is
      not something we want to allow.
      
      A simple reproducer, kindly supplied by Lin Ming, although you must
      have the CIPSO DOI #3 configure on the system first or you will be
      caught early in cipso_v4_validate():
      
      	#include <sys/types.h>
      	#include <sys/socket.h>
      	#include <linux/ip.h>
      	#include <linux/in.h>
      	#include <string.h>
      
      	struct local_tag {
      		char type;
      		char length;
      		char info[4];
      	};
      
      	struct cipso {
      		char type;
      		char length;
      		char doi[4];
      		struct local_tag local;
      	};
      
      	int main(int argc, char **argv)
      	{
      		int sockfd;
      		struct cipso cipso = {
      			.type = IPOPT_CIPSO,
      			.length = sizeof(struct cipso),
      			.local = {
      				.type = 128,
      				.length = sizeof(struct local_tag),
      			},
      		};
      
      		memset(cipso.doi, 0, 4);
      		cipso.doi[3] = 3;
      
      		sockfd = socket(AF_INET, SOCK_DGRAM, 0);
      		#define SOL_IP 0
      		setsockopt(sockfd, SOL_IP, IP_OPTIONS,
      			&cipso, sizeof(struct cipso));
      
      		return 0;
      	}
      
      CC: Lin Ming <mlin@ss.pku.edu.cn>
      Reported-by: default avatarAlan Cox <alan@lxorguk.ukuu.org.uk>
      Signed-off-by: default avatarPaul Moore <pmoore@redhat.com>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      89d7ae34
  2. Jul 18, 2012