Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net

+99 -86
+5 -6
MAINTAINERS
··· 1698 1698 1699 1699 CAN NETWORK LAYER 1700 1700 M: Oliver Hartkopp <socketcan@hartkopp.net> 1701 - M: Oliver Hartkopp <oliver.hartkopp@volkswagen.de> 1702 - M: Urs Thuermann <urs.thuermann@volkswagen.de> 1703 1701 L: linux-can@vger.kernel.org 1704 - L: netdev@vger.kernel.org 1705 - W: http://developer.berlios.de/projects/socketcan/ 1702 + W: http://gitorious.org/linux-can 1703 + T: git git://gitorious.org/linux-can/linux-can-next.git 1706 1704 S: Maintained 1707 1705 F: net/can/ 1708 1706 F: include/linux/can.h ··· 1711 1713 1712 1714 CAN NETWORK DRIVERS 1713 1715 M: Wolfgang Grandegger <wg@grandegger.com> 1716 + M: Marc Kleine-Budde <mkl@pengutronix.de> 1714 1717 L: linux-can@vger.kernel.org 1715 - L: netdev@vger.kernel.org 1716 - W: http://developer.berlios.de/projects/socketcan/ 1718 + W: http://gitorious.org/linux-can 1719 + T: git git://gitorious.org/linux-can/linux-can-next.git 1717 1720 S: Maintained 1718 1721 F: drivers/net/can/ 1719 1722 F: include/linux/can/dev.h
+1 -1
Makefile
··· 1 1 VERSION = 3 2 2 PATCHLEVEL = 2 3 3 SUBLEVEL = 0 4 - EXTRAVERSION = -rc7 4 + EXTRAVERSION = 5 5 NAME = Saber-toothed Squirrel 6 6 7 7 # *DOCUMENTATION*
+5 -1
drivers/gpu/drm/radeon/radeon_atombios.c
··· 2560 2560 2561 2561 rdev->pm.current_power_state_index = rdev->pm.default_power_state_index; 2562 2562 rdev->pm.current_clock_mode_index = 0; 2563 - rdev->pm.current_vddc = rdev->pm.power_state[rdev->pm.default_power_state_index].clock_info[0].voltage.voltage; 2563 + if (rdev->pm.default_power_state_index >= 0) 2564 + rdev->pm.current_vddc = 2565 + rdev->pm.power_state[rdev->pm.default_power_state_index].clock_info[0].voltage.voltage; 2566 + else 2567 + rdev->pm.current_vddc = 0; 2564 2568 } 2565 2569 2566 2570 void radeon_atom_set_clock_gating(struct radeon_device *rdev, int enable)
+2 -2
drivers/net/ethernet/freescale/Kconfig
··· 23 23 config FEC 24 24 tristate "FEC ethernet controller (of ColdFire and some i.MX CPUs)" 25 25 depends on (M523x || M527x || M5272 || M528x || M520x || M532x || \ 26 - ARCH_MXC || ARCH_MXS) 27 - default ARCH_MXC || ARCH_MXS if ARM 26 + ARCH_MXC || SOC_IMX28) 27 + default ARCH_MXC || SOC_IMX28 if ARM 28 28 select PHYLIB 29 29 ---help--- 30 30 Say Y here if you want to use the built-in 10/100 Fast ethernet
+3
drivers/net/wireless/ath/ath9k/main.c
··· 1797 1797 struct ath_softc *sc = hw->priv; 1798 1798 struct ath_node *an = (struct ath_node *) sta->drv_priv; 1799 1799 1800 + if (!(sc->sc_flags & SC_OP_TXAGGR)) 1801 + return; 1802 + 1800 1803 switch (cmd) { 1801 1804 case STA_NOTIFY_SLEEP: 1802 1805 an->sleeping = true;
+13 -3
drivers/net/wireless/b43/pio.c
··· 617 617 const char *err_msg = NULL; 618 618 struct b43_rxhdr_fw4 *rxhdr = 619 619 (struct b43_rxhdr_fw4 *)wl->pio_scratchspace; 620 + size_t rxhdr_size = sizeof(*rxhdr); 620 621 621 622 BUILD_BUG_ON(sizeof(wl->pio_scratchspace) < sizeof(*rxhdr)); 622 - memset(rxhdr, 0, sizeof(*rxhdr)); 623 + switch (dev->fw.hdr_format) { 624 + case B43_FW_HDR_410: 625 + case B43_FW_HDR_351: 626 + rxhdr_size -= sizeof(rxhdr->format_598) - 627 + sizeof(rxhdr->format_351); 628 + break; 629 + case B43_FW_HDR_598: 630 + break; 631 + } 632 + memset(rxhdr, 0, rxhdr_size); 623 633 624 634 /* Check if we have data and wait for it to get ready. */ 625 635 if (q->rev >= 8) { ··· 667 657 668 658 /* Get the preamble (RX header) */ 669 659 if (q->rev >= 8) { 670 - b43_block_read(dev, rxhdr, sizeof(*rxhdr), 660 + b43_block_read(dev, rxhdr, rxhdr_size, 671 661 q->mmio_base + B43_PIO8_RXDATA, 672 662 sizeof(u32)); 673 663 } else { 674 - b43_block_read(dev, rxhdr, sizeof(*rxhdr), 664 + b43_block_read(dev, rxhdr, rxhdr_size, 675 665 q->mmio_base + B43_PIO_RXDATA, 676 666 sizeof(u16)); 677 667 }
+6 -1
drivers/net/wireless/mwifiex/sta_ioctl.c
··· 55 55 { 56 56 bool cancel_flag = false; 57 57 int status = adapter->cmd_wait_q.status; 58 - struct cmd_ctrl_node *cmd_queued = adapter->cmd_queued; 58 + struct cmd_ctrl_node *cmd_queued; 59 59 60 + if (!adapter->cmd_queued) 61 + return 0; 62 + 63 + cmd_queued = adapter->cmd_queued; 60 64 adapter->cmd_queued = NULL; 65 + 61 66 dev_dbg(adapter->dev, "cmd pending\n"); 62 67 atomic_inc(&adapter->cmd_pending); 63 68
+10 -40
drivers/rtc/interface.c
··· 73 73 err = -EINVAL; 74 74 75 75 mutex_unlock(&rtc->ops_lock); 76 - /* A timer might have just expired */ 77 - schedule_work(&rtc->irqwork); 78 76 return err; 79 77 } 80 78 EXPORT_SYMBOL_GPL(rtc_set_time); ··· 112 114 err = -EINVAL; 113 115 114 116 mutex_unlock(&rtc->ops_lock); 115 - /* A timer might have just expired */ 116 - schedule_work(&rtc->irqwork); 117 117 118 118 return err; 119 119 } ··· 319 323 } 320 324 EXPORT_SYMBOL_GPL(rtc_read_alarm); 321 325 322 - static int ___rtc_set_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm) 323 - { 324 - int err; 325 - 326 - if (!rtc->ops) 327 - err = -ENODEV; 328 - else if (!rtc->ops->set_alarm) 329 - err = -EINVAL; 330 - else 331 - err = rtc->ops->set_alarm(rtc->dev.parent, alarm); 332 - 333 - return err; 334 - } 335 - 336 326 static int __rtc_set_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm) 337 327 { 338 328 struct rtc_time tm; ··· 342 360 * over right here, before we set the alarm. 343 361 */ 344 362 345 - return ___rtc_set_alarm(rtc, alarm); 363 + if (!rtc->ops) 364 + err = -ENODEV; 365 + else if (!rtc->ops->set_alarm) 366 + err = -EINVAL; 367 + else 368 + err = rtc->ops->set_alarm(rtc->dev.parent, alarm); 369 + 370 + return err; 346 371 } 347 372 348 373 int rtc_set_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm) ··· 396 407 timerqueue_add(&rtc->timerqueue, &rtc->aie_timer.node); 397 408 } 398 409 mutex_unlock(&rtc->ops_lock); 399 - /* maybe that was in the past.*/ 400 - schedule_work(&rtc->irqwork); 401 410 return err; 402 411 } 403 412 EXPORT_SYMBOL_GPL(rtc_initialize_alarm); ··· 763 776 return 0; 764 777 } 765 778 766 - static void rtc_alarm_disable(struct rtc_device *rtc) 767 - { 768 - struct rtc_wkalrm alarm; 769 - struct rtc_time tm; 770 - 771 - __rtc_read_time(rtc, &tm); 772 - 773 - alarm.time = rtc_ktime_to_tm(ktime_add(rtc_tm_to_ktime(tm), 774 - ktime_set(300, 0))); 775 - alarm.enabled = 0; 776 - 777 - ___rtc_set_alarm(rtc, &alarm); 778 - } 779 - 780 779 /** 781 780 * rtc_timer_remove - Removes a rtc_timer from the rtc_device timerqueue 782 781 * @rtc rtc device ··· 784 811 struct rtc_wkalrm alarm; 785 812 int err; 786 813 next = timerqueue_getnext(&rtc->timerqueue); 787 - if (!next) { 788 - rtc_alarm_disable(rtc); 814 + if (!next) 789 815 return; 790 - } 791 816 alarm.time = rtc_ktime_to_tm(next->expires); 792 817 alarm.enabled = 1; 793 818 err = __rtc_set_alarm(rtc, &alarm); ··· 847 876 err = __rtc_set_alarm(rtc, &alarm); 848 877 if (err == -ETIME) 849 878 goto again; 850 - } else 851 - rtc_alarm_disable(rtc); 879 + } 852 880 853 881 mutex_unlock(&rtc->ops_lock); 854 882 }
+2 -2
fs/cifs/connect.c
··· 282 282 byte_count = be32_to_cpu(pTargetSMB->smb_buf_length); 283 283 byte_count += total_in_buf2; 284 284 /* don't allow buffer to overflow */ 285 - if (byte_count > CIFSMaxBufSize) 285 + if (byte_count > CIFSMaxBufSize + MAX_CIFS_HDR_SIZE - 4) 286 286 return -ENOBUFS; 287 287 pTargetSMB->smb_buf_length = cpu_to_be32(byte_count); 288 288 ··· 2122 2122 warned_on_ntlm = true; 2123 2123 cERROR(1, "default security mechanism requested. The default " 2124 2124 "security mechanism will be upgraded from ntlm to " 2125 - "ntlmv2 in kernel release 3.2"); 2125 + "ntlmv2 in kernel release 3.3"); 2126 2126 } 2127 2127 ses->overrideSecFlg = volume_info->secFlg; 2128 2128
+17 -17
fs/minix/inode.c
··· 263 263 goto out_no_root; 264 264 } 265 265 266 - ret = -ENOMEM; 267 - s->s_root = d_alloc_root(root_inode); 268 - if (!s->s_root) 269 - goto out_iput; 270 - 271 - if (!(s->s_flags & MS_RDONLY)) { 272 - if (sbi->s_version != MINIX_V3) /* s_state is now out from V3 sb */ 273 - ms->s_state &= ~MINIX_VALID_FS; 274 - mark_buffer_dirty(bh); 275 - } 276 - if (!(sbi->s_mount_state & MINIX_VALID_FS)) 277 - printk("MINIX-fs: mounting unchecked file system, " 278 - "running fsck is recommended\n"); 279 - else if (sbi->s_mount_state & MINIX_ERROR_FS) 280 - printk("MINIX-fs: mounting file system with errors, " 281 - "running fsck is recommended\n"); 282 - 283 266 /* Apparently minix can create filesystems that allocate more blocks for 284 267 * the bitmaps than needed. We simply ignore that, but verify it didn't 285 268 * create one with not enough blocks and bail out if so. ··· 282 299 "zmap blocks allocated. Refusing to mount.\n"); 283 300 goto out_iput; 284 301 } 302 + 303 + ret = -ENOMEM; 304 + s->s_root = d_alloc_root(root_inode); 305 + if (!s->s_root) 306 + goto out_iput; 307 + 308 + if (!(s->s_flags & MS_RDONLY)) { 309 + if (sbi->s_version != MINIX_V3) /* s_state is now out from V3 sb */ 310 + ms->s_state &= ~MINIX_VALID_FS; 311 + mark_buffer_dirty(bh); 312 + } 313 + if (!(sbi->s_mount_state & MINIX_VALID_FS)) 314 + printk("MINIX-fs: mounting unchecked file system, " 315 + "running fsck is recommended\n"); 316 + else if (sbi->s_mount_state & MINIX_ERROR_FS) 317 + printk("MINIX-fs: mounting file system with errors, " 318 + "running fsck is recommended\n"); 285 319 286 320 return 0; 287 321
+1 -1
include/linux/security.h
··· 2056 2056 char **name, void **value, 2057 2057 size_t *len) 2058 2058 { 2059 - return 0; 2059 + return -EOPNOTSUPP; 2060 2060 } 2061 2061 2062 2062 static inline int security_inode_create(struct inode *dir,
+8 -1
kernel/exit.c
··· 1540 1540 } 1541 1541 1542 1542 /* dead body doesn't have much to contribute */ 1543 - if (p->exit_state == EXIT_DEAD) 1543 + if (unlikely(p->exit_state == EXIT_DEAD)) { 1544 + /* 1545 + * But do not ignore this task until the tracer does 1546 + * wait_task_zombie()->do_notify_parent(). 1547 + */ 1548 + if (likely(!ptrace) && unlikely(ptrace_reparented(p))) 1549 + wo->notask_error = 0; 1544 1550 return 0; 1551 + } 1545 1552 1546 1553 /* slay zombie? */ 1547 1554 if (p->exit_state == EXIT_ZOMBIE) {
+10 -4
kernel/hung_task.c
··· 74 74 75 75 /* 76 76 * Ensure the task is not frozen. 77 - * Also, when a freshly created task is scheduled once, changes 78 - * its state to TASK_UNINTERRUPTIBLE without having ever been 79 - * switched out once, it musn't be checked. 77 + * Also, skip vfork and any other user process that freezer should skip. 80 78 */ 81 - if (unlikely(t->flags & PF_FROZEN || !switch_count)) 79 + if (unlikely(t->flags & (PF_FROZEN | PF_FREEZER_SKIP))) 80 + return; 81 + 82 + /* 83 + * When a freshly created task is scheduled once, changes its state to 84 + * TASK_UNINTERRUPTIBLE without having ever been switched out once, it 85 + * musn't be checked. 86 + */ 87 + if (unlikely(!switch_count)) 82 88 return; 83 89 84 90 if (switch_count != t->last_switch_count) {
+12 -1
kernel/ptrace.c
··· 96 96 */ 97 97 if (!(child->flags & PF_EXITING) && 98 98 (child->signal->flags & SIGNAL_STOP_STOPPED || 99 - child->signal->group_stop_count)) 99 + child->signal->group_stop_count)) { 100 100 child->jobctl |= JOBCTL_STOP_PENDING; 101 + 102 + /* 103 + * This is only possible if this thread was cloned by the 104 + * traced task running in the stopped group, set the signal 105 + * for the future reports. 106 + * FIXME: we should change ptrace_init_task() to handle this 107 + * case. 108 + */ 109 + if (!(child->jobctl & JOBCTL_STOP_SIGMASK)) 110 + child->jobctl |= SIGSTOP; 111 + } 101 112 102 113 /* 103 114 * If transition to TASK_STOPPED is pending or in TASK_TRACED, kick
-2
kernel/signal.c
··· 1994 1994 */ 1995 1995 if (!(sig->flags & SIGNAL_STOP_STOPPED)) 1996 1996 sig->group_exit_code = signr; 1997 - else 1998 - WARN_ON_ONCE(!current->ptrace); 1999 1997 2000 1998 sig->group_stop_count = 0; 2001 1999
+1 -1
net/bluetooth/hci_core.c
··· 643 643 if (!test_bit(HCI_RAW, &hdev->flags)) { 644 644 set_bit(HCI_INIT, &hdev->flags); 645 645 __hci_request(hdev, hci_reset_req, 0, 646 - msecs_to_jiffies(HCI_INIT_TIMEOUT)); 646 + msecs_to_jiffies(250)); 647 647 clear_bit(HCI_INIT, &hdev->flags); 648 648 } 649 649
+2 -2
net/sched/sch_qfq.c
··· 818 818 static void qfq_update_start(struct qfq_sched *q, struct qfq_class *cl) 819 819 { 820 820 unsigned long mask; 821 - uint32_t limit, roundedF; 821 + u64 limit, roundedF; 822 822 int slot_shift = cl->grp->slot_shift; 823 823 824 824 roundedF = qfq_round_down(cl->F, slot_shift); 825 - limit = qfq_round_down(q->V, slot_shift) + (1UL << slot_shift); 825 + limit = qfq_round_down(q->V, slot_shift) + (1ULL << slot_shift); 826 826 827 827 if (!qfq_gt(cl->F, q->V) || qfq_gt(roundedF, limit)) { 828 828 /* timestamp was stale */
+1 -1
security/security.c
··· 381 381 void **value, size_t *len) 382 382 { 383 383 if (unlikely(IS_PRIVATE(inode))) 384 - return 0; 384 + return -EOPNOTSUPP; 385 385 return security_ops->inode_init_security(inode, dir, qstr, name, value, 386 386 len); 387 387 }