1. 27 10月, 2013 1 次提交
    • H
      parisc: Do not crash 64bit SMP kernels on machines with >= 4GB RAM · 54e181e0
      Helge Deller 提交于
      Since the beginning of the parisc-linux port, sometimes 64bit SMP kernels were
      not able to bring up other CPUs than the monarch CPU and instead crashed the
      kernel.  The reason was unclear, esp. since it involved various machines (e.g.
      J5600, J6750 and SuperDome). Testing showed, that those crashes didn't happened
      when less than 4GB were installed, or if a 32bit Linux kernel was booted.
      
      In the end, the fix for those SMP problems is trivial:
      During the early phase of the initialization of the CPUs, including the monarch
      CPU, the PDC_PSW firmware function to enable WIDE (=64bit) mode is called.
      It's documented that this firmware function may clobber various registers, and
      one one of those possibly clobbered registers is %cr30 which holds the task
      thread info pointer.
      
      Now, if %cr30 would always have been clobbered, then this bug would have been
      detected much earlier. But lots of testing finally showed, that - at least for
      %cr30 - on some machines only the upper 32bits of the 64bit register suddenly
      turned zero after the firmware call.
      
      So, after finding the root cause, the explanation for the various crashes
      became clear:
      - On 32bit SMP Linux kernels all upper 32bit were zero, so we didn't faced this
        problem.
      - Monarch CPUs in 64bit mode always booted sucessfully, because the inital task
        thread info pointer was below 4GB.
      - Secondary CPUs booted sucessfully on machines with less than 4GB RAM because
        the upper 32bit were zero anyay.
      - Secondary CPus failed to boot if we had more than 4GB RAM and the task thread
        info pointer was located above the 4GB boundary.
      
      Finally, the patch to fix this problem is trivial by saving the %cr30 register
      before the firmware call and restoring it afterwards.
      Signed-off-by: NHelge Deller <deller@gmx.de>
      Signed-off-by: NJohn David Anglin <dave.anglin@bell.net>
      Cc: <stable@vger.kernel.org> # 2.6.12+
      Signed-off-by: NHelge Deller <deller@gmx.de>
      54e181e0
  2. 26 10月, 2013 4 次提交
    • L
      Merge tag 'pm+acpi-3.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 20582e34
      Linus Torvalds 提交于
      Pull ACPI and power management fixes from
       "These fix two bugs in the intel_pstate driver, a hibernate bug leading
        to nasty resume failures sometimes and acpi-cpufreq initialization bug
        that causes problems to happen during module unload when intel_pstate
        is in use.
      
        Specifics:
      
         - Fix for rounding errors in intel_pstate causing CPU utilization to
           be underestimated from Brennan Shacklett.
      
         - intel_pstate fix to always use the correct max pstate value when
           computing the min pstate from Dirk Brandewie.
      
         - Hibernation fix for deadlocking resume in cases when the probing of
           the device containing the image is deferred from Russ Dill.
      
         - acpi-cpufreq fix to prevent the module from staying in memory when
           the driver cannot be registered and then attempting to unregister
           things that have never been registered on exit"
      
      * tag 'pm+acpi-3.12-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
        acpi-cpufreq: Fail initialization if driver cannot be registered
        PM / hibernate: Move software_resume to late_initcall_sync
        intel_pstate: Correct calculation of min pstate value
        intel_pstate: Improve accuracy by not truncating until final result
      20582e34
    • L
      Merge tag 'for-linus-20131025' of git://git.infradead.org/linux-mtd · d255c59a
      Linus Torvalds 提交于
      Pull final mtd fixes from Brian Norris:
       "A few more last-minute regression fixes, prepared jointly by me and
        David Woodhouse:
      
         - Revert pxa3xx to its old name to avoid breaking existing
           'mtdparts=' boot strings.
      
         - Return GPMI NAND to its legacy ECC layout for backwards
           compatibility.  We will revisit this in 3.13.
      
        A note from David on the latter fix: 'This leaves a harmless cosmetic
        warning about an unused function.  At this point in the cycle I really
        don't care.'"
      
      * tag 'for-linus-20131025' of git://git.infradead.org/linux-mtd:
        mtd: gpmi: fix ECC regression
        mtd: nand: pxa3xx: Fix registered MTD name
      d255c59a
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs · f55ac56d
      Linus Torvalds 提交于
      Pull vfs fixes (try two) from Al Viro:
       "nfsd performance regression fix + seq_file lseek(2) fix"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs:
        seq_file: always update file->f_pos in seq_lseek()
        nfsd regression since delayed fput()
      f55ac56d
    • D
      mtd: gpmi: fix ECC regression · 031e2777
      David Woodhouse 提交于
      The "legacy" ECC layout used until 3.12-rc1 uses all the OOB area by
      computing the ECC strength and ECC step size ourselves.
      
      Commit 2febcdf8 ("mtd: gpmi: set the BCHs geometry with the ecc info")
      makes the driver use the ECC info (ECC strength and ECC step size)
      provided by the MTD code, and creates a different NAND ECC layout
      for the BCH, and use the new ECC layout. This causes a regression:
      
         We can not mount the ubifs which was created by the old NAND ECC layout.
      
      This patch fixes this issue by reverting to the legacy ECC layout.
      
      We will probably introduce a new device-tree property to indicate that
      the new ECC layout can be used. For now though, for the imminent 3.12
      release, we just unconditionally revert to the 3.11 behaviour.
      
      This leaves a harmless cosmetic warning about an unused function. At
      this point in the cycle I really don't care.
      Signed-off-by: NDavid Woodhouse <David.Woodhouse@intel.com>
      Signed-off-by: NBrian Norris <computersforpeace@gmail.com>
      Acked-by: NHuang Shijie <b32955@freescale.com>
      Acked-by: NMarek Vasut <marex@denx.de>
      Tested-by: NMarek Vasut <marex@denx.de>
      031e2777
  3. 25 10月, 2013 7 次提交
  4. 24 10月, 2013 6 次提交
    • L
      Merge tag 'md/3.12-fixes' of git://neil.brown.name/md · e6036c0b
      Linus Torvalds 提交于
      Pull md bugfixes from Neil Brown:
       "Assorted md bug-fixes for 3.12.
      
        All tagged for -stable releases too"
      
      * tag 'md/3.12-fixes' of git://neil.brown.name/md:
        raid5: avoid finding "discard" stripe
        raid5: set bio bi_vcnt 0 for discard request
        md: avoid deadlock when md_set_badblocks.
        md: Fix skipping recovery for read-only arrays.
      e6036c0b
    • L
      Merge tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi · be6e8c76
      Linus Torvalds 提交于
      Pull SCSI fixes from James Bottomley:
       "This is a set of two fixes which cause oopses (Buslogic, qla2xxx) and
       one fix which may cause a hang because of request miscounting (sd)"
      
      * tag 'scsi-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi:
        [SCSI] sd: call blk_pm_runtime_init before add_disk
        [SCSI] qla2xxx: Fix request queue null dereference.
        [SCSI] BusLogic: Fix an oops when intializing multimaster adapter
      be6e8c76
    • S
      raid5: avoid finding "discard" stripe · d47648fc
      Shaohua Li 提交于
      SCSI discard will damage discard stripe bio setting, eg, some fields are
      changed. If the stripe is reused very soon, we have wrong bios setting. We
      remove discard stripe from hash list, so next time the strip will be fully
      initialized.
      
      Suitable for backport to 3.7+.
      
      Cc: <stable@vger.kernel.org> (3.7+)
      Signed-off-by: NShaohua Li <shli@fusionio.com>
      Signed-off-by: NNeilBrown <neilb@suse.de>
      d47648fc
    • S
      raid5: set bio bi_vcnt 0 for discard request · 37c61ff3
      Shaohua Li 提交于
      SCSI layer will add new payload for discard request. If two bios are merged
      to one, the second bio has bi_vcnt 1 which is set in raid5. This will confuse
      SCSI and cause oops.
      
      Suitable for backport to 3.7+
      
      Cc: stable@vger.kernel.org (v3.7+)
      Reported-by: NJes Sorensen <Jes.Sorensen@redhat.com>
      Signed-off-by: NShaohua Li <shli@fusionio.com>
      Signed-off-by: NNeilBrown <neilb@suse.de>
      Acked-by: NMartin K. Petersen <martin.petersen@oracle.com>
      37c61ff3
    • B
      md: avoid deadlock when md_set_badblocks. · 905b0297
      Bian Yu 提交于
      When operate harddisk and hit errors, md_set_badblocks is called after
      scsi_restart_operations which already disabled the irq. but md_set_badblocks
      will call write_sequnlock_irq and enable irq. so softirq can preempt the
      current thread and that may cause a deadlock. I think this situation should
      use write_sequnlock_irqsave/irqrestore instead.
      
      I met the situation and the call trace is below:
      [  638.919974] BUG: spinlock recursion on CPU#0, scsi_eh_13/1010
      [  638.921923]  lock: 0xffff8800d4d51fc8, .magic: dead4ead, .owner: scsi_eh_13/1010, .owner_cpu: 0
      [  638.923890] CPU: 0 PID: 1010 Comm: scsi_eh_13 Not tainted 3.12.0-rc5+ #37
      [  638.925844] Hardware name: To be filled by O.E.M. To be filled by O.E.M./MAHOBAY, BIOS 4.6.5 03/05/2013
      [  638.927816]  ffff880037ad4640 ffff880118c03d50 ffffffff8172ff85 0000000000000007
      [  638.929829]  ffff8800d4d51fc8 ffff880118c03d70 ffffffff81730030 ffff8800d4d51fc8
      [  638.931848]  ffffffff81a72eb0 ffff880118c03d90 ffffffff81730056 ffff8800d4d51fc8
      [  638.933884] Call Trace:
      [  638.935867]  <IRQ>  [<ffffffff8172ff85>] dump_stack+0x55/0x76
      [  638.937878]  [<ffffffff81730030>] spin_dump+0x8a/0x8f
      [  638.939861]  [<ffffffff81730056>] spin_bug+0x21/0x26
      [  638.941836]  [<ffffffff81336de4>] do_raw_spin_lock+0xa4/0xc0
      [  638.943801]  [<ffffffff8173f036>] _raw_spin_lock+0x66/0x80
      [  638.945747]  [<ffffffff814a73ed>] ? scsi_device_unbusy+0x9d/0xd0
      [  638.947672]  [<ffffffff8173fb1b>] ? _raw_spin_unlock+0x2b/0x50
      [  638.949595]  [<ffffffff814a73ed>] scsi_device_unbusy+0x9d/0xd0
      [  638.951504]  [<ffffffff8149ec47>] scsi_finish_command+0x37/0xe0
      [  638.953388]  [<ffffffff814a75e8>] scsi_softirq_done+0xa8/0x140
      [  638.955248]  [<ffffffff8130e32b>] blk_done_softirq+0x7b/0x90
      [  638.957116]  [<ffffffff8104fddd>] __do_softirq+0xfd/0x330
      [  638.958987]  [<ffffffff810b964f>] ? __lock_release+0x6f/0x100
      [  638.960861]  [<ffffffff8174a5cc>] call_softirq+0x1c/0x30
      [  638.962724]  [<ffffffff81004c7d>] do_softirq+0x8d/0xc0
      [  638.964565]  [<ffffffff8105024e>] irq_exit+0x10e/0x150
      [  638.966390]  [<ffffffff8174ad4a>] smp_apic_timer_interrupt+0x4a/0x60
      [  638.968223]  [<ffffffff817499af>] apic_timer_interrupt+0x6f/0x80
      [  638.970079]  <EOI>  [<ffffffff810b964f>] ? __lock_release+0x6f/0x100
      [  638.971899]  [<ffffffff8173fa6a>] ? _raw_spin_unlock_irq+0x3a/0x50
      [  638.973691]  [<ffffffff8173fa60>] ? _raw_spin_unlock_irq+0x30/0x50
      [  638.975475]  [<ffffffff81562393>] md_set_badblocks+0x1f3/0x4a0
      [  638.977243]  [<ffffffff81566e07>] rdev_set_badblocks+0x27/0x80
      [  638.978988]  [<ffffffffa00d97bb>] raid5_end_read_request+0x36b/0x4e0 [raid456]
      [  638.980723]  [<ffffffff811b5a1d>] bio_endio+0x1d/0x40
      [  638.982463]  [<ffffffff81304ff3>] req_bio_endio.isra.65+0x83/0xa0
      [  638.984214]  [<ffffffff81306b9f>] blk_update_request+0x7f/0x350
      [  638.985967]  [<ffffffff81306ea1>] blk_update_bidi_request+0x31/0x90
      [  638.987710]  [<ffffffff813085e0>] __blk_end_bidi_request+0x20/0x50
      [  638.989439]  [<ffffffff8130862f>] __blk_end_request_all+0x1f/0x30
      [  638.991149]  [<ffffffff81308746>] blk_peek_request+0x106/0x250
      [  638.992861]  [<ffffffff814a62a9>] ? scsi_kill_request.isra.32+0xe9/0x130
      [  638.994561]  [<ffffffff814a633a>] scsi_request_fn+0x4a/0x3d0
      [  638.996251]  [<ffffffff813040a7>] __blk_run_queue+0x37/0x50
      [  638.997900]  [<ffffffff813045af>] blk_run_queue+0x2f/0x50
      [  638.999553]  [<ffffffff814a5750>] scsi_run_queue+0xe0/0x1c0
      [  639.001185]  [<ffffffff814a7721>] scsi_run_host_queues+0x21/0x40
      [  639.002798]  [<ffffffff814a2e87>] scsi_restart_operations+0x177/0x200
      [  639.004391]  [<ffffffff814a4fe9>] scsi_error_handler+0xc9/0xe0
      [  639.005996]  [<ffffffff814a4f20>] ? scsi_unjam_host+0xd0/0xd0
      [  639.007600]  [<ffffffff81072f6b>] kthread+0xdb/0xe0
      [  639.009205]  [<ffffffff81072e90>] ? flush_kthread_worker+0x170/0x170
      [  639.010821]  [<ffffffff81748cac>] ret_from_fork+0x7c/0xb0
      [  639.012437]  [<ffffffff81072e90>] ? flush_kthread_worker+0x170/0x170
      
      This bug was introduce in commit  2e8ac303
      (the first time rdev_set_badblock was call from interrupt context),
      so this patch is appropriate for 3.5 and subsequent kernels.
      
      Cc: <stable@vger.kernel.org> (3.5+)
      Signed-off-by: NBian Yu <bianyu@kedacom.com>
      Reviewed-by: NJianpeng Ma <majianpeng@gmail.com>
      Signed-off-by: NNeilBrown <neilb@suse.de>
      905b0297
    • L
      md: Fix skipping recovery for read-only arrays. · 61e4947c
      Lukasz Dorau 提交于
      Since:
              commit 7ceb17e8
              md: Allow devices to be re-added to a read-only array.
      
      spares are activated on a read-only array. In case of raid1 and raid10
      personalities it causes that not-in-sync devices are marked in-sync
      without checking if recovery has been finished.
      
      If a read-only array is degraded and one of its devices is not in-sync
      (because the array has been only partially recovered) recovery will be skipped.
      
      This patch adds checking if recovery has been finished before marking a device
      in-sync for raid1 and raid10 personalities. In case of raid5 personality
      such condition is already present (at raid5.c:6029).
      
      Bug was introduced in 3.10 and causes data corruption.
      
      Cc: stable@vger.kernel.org
      Signed-off-by: NPawel Baldysiak <pawel.baldysiak@intel.com>
      Signed-off-by: NLukasz Dorau <lukasz.dorau@intel.com>
      Signed-off-by: NNeilBrown <neilb@suse.de>
      61e4947c
  5. 23 10月, 2013 12 次提交
    • A
      [SCSI] sd: call blk_pm_runtime_init before add_disk · 10c580e4
      Aaron Lu 提交于
      Sujit has found a race condition that would make q->nr_pending
      unbalanced, it occurs as Sujit explained:
      
      "
      sd_probe_async() ->
      	add_disk() ->
      		disk_add_event() ->
      			schedule(disk_events_workfn)
      	sd_revalidate_disk()
      	blk_pm_runtime_init()
      return;
      
      Let's say the disk_events_workfn() calls sd_check_events() which tries
      to send test_unit_ready() and because of sd_revalidate_disk() trying to
      send another commands the test_unit_ready() might be re-queued as the
      tagged command queuing is disabled.
      
      So the race condition is -
      
      Thread 1 			  |		Thread 2
      sd_revalidate_disk()		  |	sd_check_events()
      ...nr_pending = 0 as q->dev = NULL|	scsi_queue_insert()
      blk_runtime_pm_init()		  | 	blk_pm_requeue_request() ->
      				  |	nr_pending = -1 since
      				  |	q->dev != NULL
      "
      
      The problem is, the test_unit_ready request doesn't get counted the
      first time it is queued, so the later decrement of q->nr_pending in
      blk_pm_requeue_request makes it unbalanced.
      
      Fix this by calling blk_pm_runtime_init before add_disk so that all
      requests initiated there will all be counted.
      Signed-off-by: NAaron Lu <aaron.lu@intel.com>
      Reported-and-tested-by: NSujit Reddy Thumma <sthumma@codeaurora.org>
      Cc: stable@vger.kernel.org
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      10c580e4
    • C
      [SCSI] qla2xxx: Fix request queue null dereference. · 36008cf1
      Chad Dupuis 提交于
      If an invalid IOCB is returned on the response queue then the index into the
      request queue map could be invalid and could return to us a bogus value. This
      could cause us to try to deference an invalid pointer and cause an exception.
      
      If we encounter this condition, simply return as no context can be established
      for this response.
      Signed-off-by: NChad Dupuis <chad.dupuis@qlogic.com>
      Signed-off-by: NSaurav Kashyap <saurav.kashyap@qlogic.com>
      Signed-off-by: NJames Bottomley <JBottomley@Parallels.com>
      36008cf1
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 320437af
      Linus Torvalds 提交于
      Pull s390 fixes from Martin Schwidefsky:
       "Several last minute bug fixes.
      
        Two of them are on the larger side for rc7, the dasd format patch for
        older storage devices and the store-clock-fast patch where we have
        been to optimistic with an optimization"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux:
        s390/time: correct use of store clock fast
        s390/vmlogrdr: fix array access in vmlogrdr_open()
        s390/compat,signal: fix return value of copy_siginfo_(to|from)_user32()
        s390/dasd: check for availability of prefix command during format
        s390/mm,kvm: fix software dirty bits vs. kvm for old machines
      320437af
    • L
      Merge branch 'for-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux · 90338325
      Linus Torvalds 提交于
      Pull thermal management fixes from Zhang Rui:
       "These includes several commits that are necessary to properly fix
        regression for TMU test MUX address setting after reset, for exynos
        thermal driver.
      
        Specifics:
      
         - fix a regression that the removal of setting a certain field at TMU
           configuration setting results in immediately shutdown after reset
           on Exynos4412 SoC.
      
         - revert a patch which tries to link the thermal_zone device and its
           hwmon node but breaks libsensors.
      
         - fix a deadlock/lockdep warning issue in x86_pkg_temp thermal
           driver, which can be reproduced on a buggy platform only.
      
         - fix ti-soc-thermal driver to fall back on bandgap reading when
           reading from PCB temperature sensor fails"
      
      * 'for-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux:
        Revert "drivers: thermal: parent virtual hwmon with thermal zone"
        drivers: thermal: allow ti-soc-thermal run without pcb zone
        thermal: exynos: Provide initial setting for TMU's test MUX address at Exynos4412
        thermal: exynos: Provide separate TMU data for Exynos4412
        thermal: exynos: Remove check for thermal device pointer at exynos_report_trigger()
        Thermal: x86_pkg_temp: change spin lock
      90338325
    • R
      platform/x86: fix asus-wmi build error · ea89e1d3
      Randy Dunlap 提交于
      Fix build error in asus_wmi.c when ASUS_WMI=y and ACPI_VIDEO=m
      by preventing that combination.
      
        drivers/built-in.o: In function `asus_wmi_probe':
        asus-wmi.c:(.text+0x65ddb4): undefined reference to `acpi_video_unregister'
      Signed-off-by: NRandy Dunlap <rdunlap@infradead.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      ea89e1d3
    • K
      bcache: Fixed incorrect order of arguments to bio_alloc_bioset() · d4eddd42
      Kent Overstreet 提交于
      Signed-off-by: NKent Overstreet <kmo@daterainc.com>
      Cc: linux-stable <stable@vger.kernel.org> # >= v3.10
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d4eddd42
    • L
      Merge branch 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media · f4e5e14f
      Linus Torvalds 提交于
      Pull media fixes from Mauro Carvalho Chehab:
       - Compilation fixes for GCC < 4.4.6
       - one Kbuild dependency select fix (selecting videobuf on msi3101)
       - driver fixes on tda10071, e4000, msi3101, soc_camera, s5p-jpeg,
         saa7134 and adv7511
       - some device quirks needed to make them work properly
       - some videobuf2 core regression fixes for some features used only on
         embedded drivers
      
      * 'v4l_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-media:
        [media] saa7134: Fix crash when device is closed before streamoff
        [media] adv7511: fix error return code in adv7511_probe()
        [media] ths8200: fix compilation with GCC < 4.4.6
        [media] ad9389b: fix compilation with GCC < 4.4.6
        [media] adv7511: fix compilation with GCC < 4.4.6
        [media] adv7842: fix compilation with GCC < 4.4.6
        [media] s5p-jpeg: Initialize vfd_decoder->vfl_dir field
        [media] videobuf2-dc: Fix support for mappings without struct page in userptr mode
        [media] vb2: Allow queuing OUTPUT buffers with zeroed 'bytesused'
        [media] mx3-camera: locking cleanup in mx3_videobuf_queue()
        [media] sh_vou: almost forever loop in sh_vou_try_fmt_vid_out()
        [media] tda10071: change firmware download condition
        [media] msi3101: correct max videobuf2 alloc
        [media] Add HCL T12Rg-H to STK webcam upside-down table
        [media] msi3101: Kconfig select VIDEOBUF2_VMALLOC
        [media] msi3101: msi3101_ioctl_ops can be static
        [media] e4000: fix PLL calc bug on 32-bit arch
        [media] uvcvideo: quirk PROBE_DEF for Microsoft Lifecam NX-3000
        [media] uvcvideo: quirk PROBE_DEF for Dell SP2008WFP monitor
      f4e5e14f
    • L
      Merge tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband · 0d645a8b
      Linus Torvalds 提交于
      Pull infiniband bugfix from Roland Dreier:
       "Disable not-quite-ready userspace ABI for IB flow steering"
      
      * tag 'rdma-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
        IB/core: Temporarily disable create_flow/destroy_flow uverbs
      0d645a8b
    • L
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net · db10accf
      Linus Torvalds 提交于
      Pull networking fixes from David Miller:
       "Sorry I let so much accumulate, I was in Buffalo and wanted a few
        things to cook in my tree for a while before sending to you.  Anyways,
        it's a lot of little things as usual at this stage in the game"
      
       1) Make bonding MAINTAINERS entry reflect reality, from Andy
          Gospodarek.
      
       2) Fix accidental sock_put() on timewait mini sockets, from Eric
          Dumazet.
      
       3) Fix crashes in l2tp due to mis-handling of ipv4 mapped ipv6
          addresses, from François CACHEREUL.
      
       4) Fix heap overflow in __audit_sockaddr(), from the eagle eyed Dan
          Carpenter.
      
       5) tcp_shifted_skb() doesn't take handle FINs properly, from Eric
          Dumazet.
      
       6) SFC driver bug fixes from Ben Hutchings.
      
       7) Fix TX packet scheduling wedge after channel change in ath9k driver,
          from Felix Fietkau.
      
       8) Fix user after free in BPF JIT code, from Alexei Starovoitov.
      
       9) Source address selection test is reversed in
          __ip_route_output_key(), fix from Jiri Benc.
      
      10) VLAN and CAN layer mis-size netlink attributes, from Marc
          Kleine-Budde.
      
      11) Fix permission checks in sysctls to use current_euid() instead of
          current_uid().  From Eric W Biederman.
      
      12) IPSEC policies can go away while a timer is still pending for them,
          add appropriate ref-counting to fix, from Steffen Klassert.
      
      13) Fix mis-programming of FDR and RMCR registers on R8A7740 sh_eth
          chips, from Nguyen Hong Ky and Simon Horman.
      
      14) MLX4 forgets to DMA unmap pages on RX, fix from Amir Vadai.
      
      15) IPV6 GRE tunnel MTU upper limit is miscalculated, from Oussama
          Ghorbel.
      
      16) Fix typo in fq_change(), we were assigning "initial quantum" to
          "quantum".  From Eric Dumazet.
      
      17) Set a more appropriate sk_pacing_rate for non-TCP sockets, otherwise
          FQ packet scheduler does not pace those flows properly.  Also from
          Eric Dumazet.
      
      18) rtlwifi miscalculates packet pointers, from Mark Cave-Ayland.
      
      19) l2tp_xmit_skb() can be called from process context, not just softirq
          context, so we must always make sure to BH disable around it.  From
          Eric Dumazet.
      
      20) On qdisc reset, we forget to purge the RB tree of SKBs in netem
          packet scheduler.  From Stephen Hemminger.
      
      21) Fix info leak in farsync WAN driver ioctl() handler, from Dan
          Carpenter and Salva Peiró.
      
      22) Fix PHY reset and other issues in dm9000 driver, from Nikita
          Kiryanov and Michael Abbott.
      
      23) When hardware can do SCTP crc32 checksums, we accidently don't
          disable the csum offload when IPSEC transformations have been
          applied.  From Fan Du and Vlad Yasevich.
      
      24) Tail loss probing in TCP leaves the socket in the wrong congestion
          avoidance state.  From Yuchung Cheng.
      
      25) In CPSW driver, enable NAPI before interrupts are turned on, from
          Markus Pargmann.
      
      26) Integer underflow and dual-assignment in YAM hamradio driver, from
          Dan Carpenter.
      
      27) If we are going to mangle a packet in tcp_set_skb_tso_segs() we must
          unclone it.  This fixes various hard to track down crashes in
          drivers where the SKBs ->gso_segs was changing right from underneath
          the driver during TX queueing.  From Eric Dumazet.
      
      28) Fix the handling of VLAN IDs, and in particular the special IDs 0
          and 4095, in the bridging layer.  From Toshiaki Makita.
      
      29) Another info leak, this time in wanxl WAN driver, from Salva Peiró.
      
      30) Fix race in socket credential passing, from Daniel Borkmann.
      
      31) WHen NETLABEL is disabled, we don't validate CIPSO packets properly,
          from Seif Mazareeb.
      
      32) Fix identification of fragmented frames in ipv4/ipv6 UDP
          Fragmentation Offload output paths, from Jiri Pirko.
      
      33) Virtual Function fixes in bnx2x driver from Yuval Mintz and Ariel
          Elior.
      
      34) When we removed the explicit neighbour pointer from ipv6 routes a
          slight regression was introduced for users such as IPVS, xt_TEE, and
          raw sockets.  We mix up the users requested destination address with
          the routes assigned nexthop/gateway.  From Julian Anastasov and
          Simon Horman.
      
      35) Fix stack overruns in rt6_probe(), the issue is that can end up
          doing two full packet xmit paths at the same time when emitting
          neighbour discovery messages.  From Hannes Frederic Sowa.
      
      36) davinci_emac driver doesn't handle IFF_ALLMULTI correctly, from
          Mariusz Ceier.
      
      37) Make sure to set TCP sk_pacing_rate after the first legitimate RTT
          sample, from Neal Cardwell.
      
      38) Wrong netlink attribute passed to xfrm_replay_verify_len(), from
          Steffen Klassert.
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (152 commits)
        ax88179_178a: Add VID:DID for Samsung USB Ethernet Adapter
        ax88179_178a: Correct the RX error definition in RX header
        Revert "bridge: only expire the mdb entry when query is received"
        tcp: initialize passive-side sk_pacing_rate after 3WHS
        davinci_emac.c: Fix IFF_ALLMULTI setup
        mac802154: correct a typo in ieee802154_alloc_device() prototype
        ipv6: probe routes asynchronous in rt6_probe
        netfilter: nf_conntrack: fix rt6i_gateway checks for H.323 helper
        ipv6: fill rt6i_gateway with nexthop address
        ipv6: always prefer rt6i_gateway if present
        bnx2x: Set NETIF_F_HIGHDMA unconditionally
        bnx2x: Don't pretend during register dump
        bnx2x: Lock DMAE when used by statistic flow
        bnx2x: Prevent null pointer dereference on error flow
        bnx2x: Fix config when SR-IOV and iSCSI are enabled
        bnx2x: Fix Coalescing configuration
        bnx2x: Unlock VF-PF channel on MAC/VLAN config error
        bnx2x: Prevent an illegal pointer dereference during panic
        bnx2x: Fix Maximum CoS estimation for VFs
        drivers: net: cpsw: fix kernel warn during iperf test with interrupt pacing
        ...
      db10accf
    • F
      ax88179_178a: Add VID:DID for Samsung USB Ethernet Adapter · f11a5bc1
      Freddy Xin 提交于
      Add VID:DID for Samsung USB Ethernet Adapter.
      Signed-off-by: NFreddy Xin <freddy@asix.com.tw>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f11a5bc1
    • F
      ax88179_178a: Correct the RX error definition in RX header · 7e78b83c
      Freddy Xin 提交于
      Correct the definition of AX_RXHDR_CRC_ERR and
      AX_RXHDR_DROP_ERR. They are BIT29 and BIT31 in pkt_hdr
      seperately.
      Signed-off-by: NFreddy Xin <freddy@asix.com.tw>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      7e78b83c
    • L
      Revert "bridge: only expire the mdb entry when query is received" · 454594f3
      Linus Lüssing 提交于
      While this commit was a good attempt to fix issues occuring when no
      multicast querier is present, this commit still has two more issues:
      
      1) There are cases where mdb entries do not expire even if there is a
      querier present. The bridge will unnecessarily continue flooding
      multicast packets on the according ports.
      
      2) Never removing an mdb entry could be exploited for a Denial of
      Service by an attacker on the local link, slowly, but steadily eating up
      all memory.
      
      Actually, this commit became obsolete with
      "bridge: disable snooping if there is no querier" (b00589af)
      which included fixes for a few more cases.
      
      Therefore reverting the following commits (the commit stated in the
      commit message plus three of its follow up fixes):
      
      ====================
      Revert "bridge: update mdb expiration timer upon reports."
      This reverts commit f144febd.
      Revert "bridge: do not call setup_timer() multiple times"
      This reverts commit 1faabf2a.
      Revert "bridge: fix some kernel warning in multicast timer"
      This reverts commit c7e8e8a8.
      Revert "bridge: only expire the mdb entry when query is received"
      This reverts commit 9f00b2e7.
      ====================
      
      CC: Cong Wang <amwang@redhat.com>
      Signed-off-by: NLinus Lüssing <linus.luessing@web.de>
      Reviewed-by: NVlad Yasevich <vyasevich@gmail.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      454594f3
  6. 22 10月, 2013 10 次提交