diff options
31 files changed, 394 insertions, 123 deletions
diff --git a/arch/sparc/kernel/head.S b/arch/sparc/kernel/head.S index 2fe2c117e772..2d325fd84579 100644 --- a/arch/sparc/kernel/head.S +++ b/arch/sparc/kernel/head.S | |||
| @@ -465,7 +465,6 @@ gokernel: | |||
| 465 | mov %o7, %g4 ! Save %o7 | 465 | mov %o7, %g4 ! Save %o7 |
| 466 | 466 | ||
| 467 | /* Jump to it, and pray... */ | 467 | /* Jump to it, and pray... */ |
| 468 | __INIT | ||
| 469 | current_pc: | 468 | current_pc: |
| 470 | call 1f | 469 | call 1f |
| 471 | nop | 470 | nop |
diff --git a/arch/sparc64/defconfig b/arch/sparc64/defconfig index 82cab5cc8070..05d19a3e590f 100644 --- a/arch/sparc64/defconfig +++ b/arch/sparc64/defconfig | |||
| @@ -1,7 +1,7 @@ | |||
| 1 | # | 1 | # |
| 2 | # Automatically generated make config: don't edit | 2 | # Automatically generated make config: don't edit |
| 3 | # Linux kernel version: 2.6.26 | 3 | # Linux kernel version: 2.6.28-rc4 |
| 4 | # Fri Jul 18 00:47:07 2008 | 4 | # Mon Nov 10 12:35:09 2008 |
| 5 | # | 5 | # |
| 6 | CONFIG_SPARC=y | 6 | CONFIG_SPARC=y |
| 7 | CONFIG_SPARC64=y | 7 | CONFIG_SPARC64=y |
| @@ -62,7 +62,6 @@ CONFIG_SYSCTL=y | |||
| 62 | # CONFIG_EMBEDDED is not set | 62 | # CONFIG_EMBEDDED is not set |
| 63 | CONFIG_UID16=y | 63 | CONFIG_UID16=y |
| 64 | CONFIG_SYSCTL_SYSCALL=y | 64 | CONFIG_SYSCTL_SYSCALL=y |
| 65 | CONFIG_SYSCTL_SYSCALL_CHECK=y | ||
| 66 | CONFIG_KALLSYMS=y | 65 | CONFIG_KALLSYMS=y |
| 67 | # CONFIG_KALLSYMS_ALL is not set | 66 | # CONFIG_KALLSYMS_ALL is not set |
| 68 | # CONFIG_KALLSYMS_EXTRA_PASS is not set | 67 | # CONFIG_KALLSYMS_EXTRA_PASS is not set |
| @@ -79,7 +78,9 @@ CONFIG_SIGNALFD=y | |||
| 79 | CONFIG_TIMERFD=y | 78 | CONFIG_TIMERFD=y |
| 80 | CONFIG_EVENTFD=y | 79 | CONFIG_EVENTFD=y |
| 81 | CONFIG_SHMEM=y | 80 | CONFIG_SHMEM=y |
| 81 | CONFIG_AIO=y | ||
| 82 | CONFIG_VM_EVENT_COUNTERS=y | 82 | CONFIG_VM_EVENT_COUNTERS=y |
| 83 | CONFIG_PCI_QUIRKS=y | ||
| 83 | CONFIG_SLUB_DEBUG=y | 84 | CONFIG_SLUB_DEBUG=y |
| 84 | # CONFIG_SLAB is not set | 85 | # CONFIG_SLAB is not set |
| 85 | CONFIG_SLUB=y | 86 | CONFIG_SLUB=y |
| @@ -92,9 +93,9 @@ CONFIG_KPROBES=y | |||
| 92 | CONFIG_KRETPROBES=y | 93 | CONFIG_KRETPROBES=y |
| 93 | CONFIG_HAVE_KPROBES=y | 94 | CONFIG_HAVE_KPROBES=y |
| 94 | CONFIG_HAVE_KRETPROBES=y | 95 | CONFIG_HAVE_KRETPROBES=y |
| 95 | # CONFIG_HAVE_DMA_ATTRS is not set | 96 | CONFIG_HAVE_ARCH_TRACEHOOK=y |
| 96 | CONFIG_USE_GENERIC_SMP_HELPERS=y | 97 | CONFIG_USE_GENERIC_SMP_HELPERS=y |
| 97 | CONFIG_PROC_PAGE_MONITOR=y | 98 | # CONFIG_HAVE_GENERIC_DMA_COHERENT is not set |
| 98 | CONFIG_SLABINFO=y | 99 | CONFIG_SLABINFO=y |
| 99 | CONFIG_RT_MUTEXES=y | 100 | CONFIG_RT_MUTEXES=y |
| 100 | # CONFIG_TINY_SHMEM is not set | 101 | # CONFIG_TINY_SHMEM is not set |
| @@ -126,6 +127,7 @@ CONFIG_DEFAULT_AS=y | |||
| 126 | # CONFIG_DEFAULT_NOOP is not set | 127 | # CONFIG_DEFAULT_NOOP is not set |
| 127 | CONFIG_DEFAULT_IOSCHED="anticipatory" | 128 | CONFIG_DEFAULT_IOSCHED="anticipatory" |
| 128 | CONFIG_CLASSIC_RCU=y | 129 | CONFIG_CLASSIC_RCU=y |
| 130 | # CONFIG_FREEZER is not set | ||
| 129 | 131 | ||
| 130 | # | 132 | # |
| 131 | # Processor type and features | 133 | # Processor type and features |
| @@ -138,7 +140,7 @@ CONFIG_HZ_100=y | |||
| 138 | # CONFIG_HZ_300 is not set | 140 | # CONFIG_HZ_300 is not set |
| 139 | # CONFIG_HZ_1000 is not set | 141 | # CONFIG_HZ_1000 is not set |
| 140 | CONFIG_HZ=100 | 142 | CONFIG_HZ=100 |
| 141 | # CONFIG_SCHED_HRTICK is not set | 143 | CONFIG_SCHED_HRTICK=y |
| 142 | CONFIG_HOTPLUG_CPU=y | 144 | CONFIG_HOTPLUG_CPU=y |
| 143 | CONFIG_GENERIC_HARDIRQS=y | 145 | CONFIG_GENERIC_HARDIRQS=y |
| 144 | CONFIG_TICK_ONESHOT=y | 146 | CONFIG_TICK_ONESHOT=y |
| @@ -148,6 +150,7 @@ CONFIG_GENERIC_CLOCKEVENTS_BUILD=y | |||
| 148 | CONFIG_SMP=y | 150 | CONFIG_SMP=y |
| 149 | CONFIG_NR_CPUS=64 | 151 | CONFIG_NR_CPUS=64 |
| 150 | # CONFIG_CPU_FREQ is not set | 152 | # CONFIG_CPU_FREQ is not set |
| 153 | CONFIG_US3_MC=y | ||
| 151 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y | 154 | CONFIG_RWSEM_XCHGADD_ALGORITHM=y |
| 152 | CONFIG_GENERIC_FIND_NEXT_BIT=y | 155 | CONFIG_GENERIC_FIND_NEXT_BIT=y |
| 153 | CONFIG_GENERIC_HWEIGHT=y | 156 | CONFIG_GENERIC_HWEIGHT=y |
| @@ -169,7 +172,6 @@ CONFIG_SPARSEMEM_MANUAL=y | |||
| 169 | CONFIG_SPARSEMEM=y | 172 | CONFIG_SPARSEMEM=y |
| 170 | CONFIG_NEED_MULTIPLE_NODES=y | 173 | CONFIG_NEED_MULTIPLE_NODES=y |
| 171 | CONFIG_HAVE_MEMORY_PRESENT=y | 174 | CONFIG_HAVE_MEMORY_PRESENT=y |
| 172 | # CONFIG_SPARSEMEM_STATIC is not set | ||
| 173 | CONFIG_SPARSEMEM_EXTREME=y | 175 | CONFIG_SPARSEMEM_EXTREME=y |
| 174 | CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y | 176 | CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y |
| 175 | CONFIG_SPARSEMEM_VMEMMAP=y | 177 | CONFIG_SPARSEMEM_VMEMMAP=y |
| @@ -177,8 +179,10 @@ CONFIG_PAGEFLAGS_EXTENDED=y | |||
| 177 | CONFIG_SPLIT_PTLOCK_CPUS=4 | 179 | CONFIG_SPLIT_PTLOCK_CPUS=4 |
| 178 | CONFIG_MIGRATION=y | 180 | CONFIG_MIGRATION=y |
| 179 | CONFIG_RESOURCES_64BIT=y | 181 | CONFIG_RESOURCES_64BIT=y |
| 182 | CONFIG_PHYS_ADDR_T_64BIT=y | ||
| 180 | CONFIG_ZONE_DMA_FLAG=0 | 183 | CONFIG_ZONE_DMA_FLAG=0 |
| 181 | CONFIG_NR_QUICK=1 | 184 | CONFIG_NR_QUICK=1 |
| 185 | CONFIG_UNEVICTABLE_LRU=y | ||
| 182 | CONFIG_SBUS=y | 186 | CONFIG_SBUS=y |
| 183 | CONFIG_SBUSCHAR=y | 187 | CONFIG_SBUSCHAR=y |
| 184 | CONFIG_SUN_AUXIO=y | 188 | CONFIG_SUN_AUXIO=y |
| @@ -198,6 +202,8 @@ CONFIG_SUN_OPENPROMFS=m | |||
| 198 | # | 202 | # |
| 199 | CONFIG_BINFMT_ELF=y | 203 | CONFIG_BINFMT_ELF=y |
| 200 | CONFIG_COMPAT_BINFMT_ELF=y | 204 | CONFIG_COMPAT_BINFMT_ELF=y |
| 205 | # CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS is not set | ||
| 206 | # CONFIG_HAVE_AOUT is not set | ||
| 201 | CONFIG_BINFMT_MISC=m | 207 | CONFIG_BINFMT_MISC=m |
| 202 | CONFIG_COMPAT=y | 208 | CONFIG_COMPAT=y |
| 203 | CONFIG_SYSVIPC_COMPAT=y | 209 | CONFIG_SYSVIPC_COMPAT=y |
| @@ -207,10 +213,6 @@ CONFIG_SCHED_MC=y | |||
| 207 | CONFIG_PREEMPT_VOLUNTARY=y | 213 | CONFIG_PREEMPT_VOLUNTARY=y |
| 208 | # CONFIG_PREEMPT is not set | 214 | # CONFIG_PREEMPT is not set |
| 209 | # CONFIG_CMDLINE_BOOL is not set | 215 | # CONFIG_CMDLINE_BOOL is not set |
| 210 | |||
| 211 | # | ||
| 212 | # Networking | ||
| 213 | # | ||
| 214 | CONFIG_NET=y | 216 | CONFIG_NET=y |
| 215 | 217 | ||
| 216 | # | 218 | # |
| @@ -224,6 +226,7 @@ CONFIG_XFRM_USER=m | |||
| 224 | # CONFIG_XFRM_SUB_POLICY is not set | 226 | # CONFIG_XFRM_SUB_POLICY is not set |
| 225 | CONFIG_XFRM_MIGRATE=y | 227 | CONFIG_XFRM_MIGRATE=y |
| 226 | # CONFIG_XFRM_STATISTICS is not set | 228 | # CONFIG_XFRM_STATISTICS is not set |
| 229 | CONFIG_XFRM_IPCOMP=y | ||
| 227 | CONFIG_NET_KEY=m | 230 | CONFIG_NET_KEY=m |
| 228 | CONFIG_NET_KEY_MIGRATE=y | 231 | CONFIG_NET_KEY_MIGRATE=y |
| 229 | CONFIG_INET=y | 232 | CONFIG_INET=y |
| @@ -299,7 +302,9 @@ CONFIG_IP_DCCP_TFRC_LIB=m | |||
| 299 | # CONFIG_TIPC is not set | 302 | # CONFIG_TIPC is not set |
| 300 | # CONFIG_ATM is not set | 303 | # CONFIG_ATM is not set |
| 301 | # CONFIG_BRIDGE is not set | 304 | # CONFIG_BRIDGE is not set |
| 305 | # CONFIG_NET_DSA is not set | ||
| 302 | CONFIG_VLAN_8021Q=m | 306 | CONFIG_VLAN_8021Q=m |
| 307 | # CONFIG_VLAN_8021Q_GVRP is not set | ||
| 303 | # CONFIG_DECNET is not set | 308 | # CONFIG_DECNET is not set |
| 304 | # CONFIG_LLC2 is not set | 309 | # CONFIG_LLC2 is not set |
| 305 | # CONFIG_IPX is not set | 310 | # CONFIG_IPX is not set |
| @@ -320,11 +325,10 @@ CONFIG_NET_TCPPROBE=m | |||
| 320 | # CONFIG_IRDA is not set | 325 | # CONFIG_IRDA is not set |
| 321 | # CONFIG_BT is not set | 326 | # CONFIG_BT is not set |
| 322 | # CONFIG_AF_RXRPC is not set | 327 | # CONFIG_AF_RXRPC is not set |
| 323 | 328 | # CONFIG_PHONET is not set | |
| 324 | # | 329 | CONFIG_WIRELESS=y |
| 325 | # Wireless | ||
| 326 | # | ||
| 327 | # CONFIG_CFG80211 is not set | 330 | # CONFIG_CFG80211 is not set |
| 331 | CONFIG_WIRELESS_OLD_REGULATORY=y | ||
| 328 | # CONFIG_WIRELESS_EXT is not set | 332 | # CONFIG_WIRELESS_EXT is not set |
| 329 | # CONFIG_MAC80211 is not set | 333 | # CONFIG_MAC80211 is not set |
| 330 | # CONFIG_IEEE80211 is not set | 334 | # CONFIG_IEEE80211 is not set |
| @@ -375,21 +379,21 @@ CONFIG_MISC_DEVICES=y | |||
| 375 | # CONFIG_SGI_IOC4 is not set | 379 | # CONFIG_SGI_IOC4 is not set |
| 376 | # CONFIG_TIFM_CORE is not set | 380 | # CONFIG_TIFM_CORE is not set |
| 377 | # CONFIG_ENCLOSURE_SERVICES is not set | 381 | # CONFIG_ENCLOSURE_SERVICES is not set |
| 382 | # CONFIG_HP_ILO is not set | ||
| 378 | CONFIG_HAVE_IDE=y | 383 | CONFIG_HAVE_IDE=y |
| 379 | CONFIG_IDE=y | 384 | CONFIG_IDE=y |
| 380 | CONFIG_BLK_DEV_IDE=y | ||
| 381 | 385 | ||
| 382 | # | 386 | # |
| 383 | # Please see Documentation/ide/ide.txt for help/info on IDE drives | 387 | # Please see Documentation/ide/ide.txt for help/info on IDE drives |
| 384 | # | 388 | # |
| 385 | CONFIG_IDE_TIMINGS=y | 389 | CONFIG_IDE_TIMINGS=y |
| 386 | # CONFIG_BLK_DEV_IDE_SATA is not set | 390 | # CONFIG_BLK_DEV_IDE_SATA is not set |
| 387 | CONFIG_BLK_DEV_IDEDISK=y | 391 | CONFIG_IDE_GD=y |
| 388 | # CONFIG_IDEDISK_MULTI_MODE is not set | 392 | CONFIG_IDE_GD_ATA=y |
| 393 | # CONFIG_IDE_GD_ATAPI is not set | ||
| 389 | CONFIG_BLK_DEV_IDECD=y | 394 | CONFIG_BLK_DEV_IDECD=y |
| 390 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y | 395 | CONFIG_BLK_DEV_IDECD_VERBOSE_ERRORS=y |
| 391 | # CONFIG_BLK_DEV_IDETAPE is not set | 396 | # CONFIG_BLK_DEV_IDETAPE is not set |
| 392 | # CONFIG_BLK_DEV_IDEFLOPPY is not set | ||
| 393 | # CONFIG_BLK_DEV_IDESCSI is not set | 397 | # CONFIG_BLK_DEV_IDESCSI is not set |
| 394 | # CONFIG_IDE_TASK_IOCTL is not set | 398 | # CONFIG_IDE_TASK_IOCTL is not set |
| 395 | CONFIG_IDE_PROC_FS=y | 399 | CONFIG_IDE_PROC_FS=y |
| @@ -413,10 +417,8 @@ CONFIG_BLK_DEV_ALI15X3=y | |||
| 413 | # CONFIG_BLK_DEV_AMD74XX is not set | 417 | # CONFIG_BLK_DEV_AMD74XX is not set |
| 414 | # CONFIG_BLK_DEV_CMD64X is not set | 418 | # CONFIG_BLK_DEV_CMD64X is not set |
| 415 | # CONFIG_BLK_DEV_TRIFLEX is not set | 419 | # CONFIG_BLK_DEV_TRIFLEX is not set |
| 416 | # CONFIG_BLK_DEV_CY82C693 is not set | ||
| 417 | # CONFIG_BLK_DEV_CS5520 is not set | 420 | # CONFIG_BLK_DEV_CS5520 is not set |
| 418 | # CONFIG_BLK_DEV_CS5530 is not set | 421 | # CONFIG_BLK_DEV_CS5530 is not set |
| 419 | # CONFIG_BLK_DEV_HPT34X is not set | ||
| 420 | # CONFIG_BLK_DEV_HPT366 is not set | 422 | # CONFIG_BLK_DEV_HPT366 is not set |
| 421 | # CONFIG_BLK_DEV_JMICRON is not set | 423 | # CONFIG_BLK_DEV_JMICRON is not set |
| 422 | # CONFIG_BLK_DEV_SC1200 is not set | 424 | # CONFIG_BLK_DEV_SC1200 is not set |
| @@ -540,7 +542,6 @@ CONFIG_DM_ZERO=m | |||
| 540 | # CONFIG_IEEE1394 is not set | 542 | # CONFIG_IEEE1394 is not set |
| 541 | # CONFIG_I2O is not set | 543 | # CONFIG_I2O is not set |
| 542 | CONFIG_NETDEVICES=y | 544 | CONFIG_NETDEVICES=y |
| 543 | # CONFIG_NETDEVICES_MULTIQUEUE is not set | ||
| 544 | # CONFIG_DUMMY is not set | 545 | # CONFIG_DUMMY is not set |
| 545 | # CONFIG_BONDING is not set | 546 | # CONFIG_BONDING is not set |
| 546 | # CONFIG_MACVLAN is not set | 547 | # CONFIG_MACVLAN is not set |
| @@ -548,7 +549,22 @@ CONFIG_NETDEVICES=y | |||
| 548 | # CONFIG_TUN is not set | 549 | # CONFIG_TUN is not set |
| 549 | # CONFIG_VETH is not set | 550 | # CONFIG_VETH is not set |
| 550 | # CONFIG_ARCNET is not set | 551 | # CONFIG_ARCNET is not set |
| 551 | # CONFIG_PHYLIB is not set | 552 | CONFIG_PHYLIB=m |
| 553 | |||
| 554 | # | ||
| 555 | # MII PHY device drivers | ||
| 556 | # | ||
| 557 | # CONFIG_MARVELL_PHY is not set | ||
| 558 | # CONFIG_DAVICOM_PHY is not set | ||
| 559 | # CONFIG_QSEMI_PHY is not set | ||
| 560 | # CONFIG_LXT_PHY is not set | ||
| 561 | # CONFIG_CICADA_PHY is not set | ||
| 562 | # CONFIG_VITESSE_PHY is not set | ||
| 563 | # CONFIG_SMSC_PHY is not set | ||
| 564 | # CONFIG_BROADCOM_PHY is not set | ||
| 565 | # CONFIG_ICPLUS_PHY is not set | ||
| 566 | # CONFIG_REALTEK_PHY is not set | ||
| 567 | # CONFIG_MDIO_BITBANG is not set | ||
| 552 | CONFIG_NET_ETHERNET=y | 568 | CONFIG_NET_ETHERNET=y |
| 553 | CONFIG_MII=m | 569 | CONFIG_MII=m |
| 554 | # CONFIG_SUNLANCE is not set | 570 | # CONFIG_SUNLANCE is not set |
| @@ -565,6 +581,9 @@ CONFIG_SUNVNET=m | |||
| 565 | # CONFIG_IBM_NEW_EMAC_RGMII is not set | 581 | # CONFIG_IBM_NEW_EMAC_RGMII is not set |
| 566 | # CONFIG_IBM_NEW_EMAC_TAH is not set | 582 | # CONFIG_IBM_NEW_EMAC_TAH is not set |
| 567 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set | 583 | # CONFIG_IBM_NEW_EMAC_EMAC4 is not set |
| 584 | # CONFIG_IBM_NEW_EMAC_NO_FLOW_CTRL is not set | ||
| 585 | # CONFIG_IBM_NEW_EMAC_MAL_CLR_ICINTSTAT is not set | ||
| 586 | # CONFIG_IBM_NEW_EMAC_MAL_COMMON_ERR is not set | ||
| 568 | CONFIG_NET_PCI=y | 587 | CONFIG_NET_PCI=y |
| 569 | # CONFIG_PCNET32 is not set | 588 | # CONFIG_PCNET32 is not set |
| 570 | # CONFIG_AMD8111_ETH is not set | 589 | # CONFIG_AMD8111_ETH is not set |
| @@ -582,16 +601,15 @@ CONFIG_NET_PCI=y | |||
| 582 | # CONFIG_SIS900 is not set | 601 | # CONFIG_SIS900 is not set |
| 583 | # CONFIG_EPIC100 is not set | 602 | # CONFIG_EPIC100 is not set |
| 584 | # CONFIG_SUNDANCE is not set | 603 | # CONFIG_SUNDANCE is not set |
| 604 | # CONFIG_TLAN is not set | ||
| 585 | # CONFIG_VIA_RHINE is not set | 605 | # CONFIG_VIA_RHINE is not set |
| 586 | # CONFIG_SC92031 is not set | 606 | # CONFIG_SC92031 is not set |
| 607 | # CONFIG_ATL2 is not set | ||
| 587 | CONFIG_NETDEV_1000=y | 608 | CONFIG_NETDEV_1000=y |
| 588 | # CONFIG_ACENIC is not set | 609 | # CONFIG_ACENIC is not set |
| 589 | # CONFIG_DL2K is not set | 610 | # CONFIG_DL2K is not set |
| 590 | CONFIG_E1000=m | 611 | CONFIG_E1000=m |
| 591 | CONFIG_E1000_NAPI=y | ||
| 592 | # CONFIG_E1000_DISABLE_PACKET_SPLIT is not set | ||
| 593 | # CONFIG_E1000E is not set | 612 | # CONFIG_E1000E is not set |
| 594 | # CONFIG_E1000E_ENABLED is not set | ||
| 595 | # CONFIG_IP1000 is not set | 613 | # CONFIG_IP1000 is not set |
| 596 | # CONFIG_IGB is not set | 614 | # CONFIG_IGB is not set |
| 597 | # CONFIG_MYRI_SBUS is not set | 615 | # CONFIG_MYRI_SBUS is not set |
| @@ -607,18 +625,23 @@ CONFIG_TIGON3=m | |||
| 607 | CONFIG_BNX2=m | 625 | CONFIG_BNX2=m |
| 608 | # CONFIG_QLA3XXX is not set | 626 | # CONFIG_QLA3XXX is not set |
| 609 | # CONFIG_ATL1 is not set | 627 | # CONFIG_ATL1 is not set |
| 628 | # CONFIG_ATL1E is not set | ||
| 629 | # CONFIG_JME is not set | ||
| 610 | CONFIG_NETDEV_10000=y | 630 | CONFIG_NETDEV_10000=y |
| 611 | # CONFIG_CHELSIO_T1 is not set | 631 | # CONFIG_CHELSIO_T1 is not set |
| 612 | # CONFIG_CHELSIO_T3 is not set | 632 | # CONFIG_CHELSIO_T3 is not set |
| 633 | # CONFIG_ENIC is not set | ||
| 613 | # CONFIG_IXGBE is not set | 634 | # CONFIG_IXGBE is not set |
| 614 | # CONFIG_IXGB is not set | 635 | # CONFIG_IXGB is not set |
| 615 | # CONFIG_S2IO is not set | 636 | # CONFIG_S2IO is not set |
| 616 | # CONFIG_MYRI10GE is not set | 637 | # CONFIG_MYRI10GE is not set |
| 617 | # CONFIG_NETXEN_NIC is not set | 638 | # CONFIG_NETXEN_NIC is not set |
| 618 | CONFIG_NIU=m | 639 | CONFIG_NIU=m |
| 640 | # CONFIG_MLX4_EN is not set | ||
| 619 | # CONFIG_MLX4_CORE is not set | 641 | # CONFIG_MLX4_CORE is not set |
| 620 | # CONFIG_TEHUTI is not set | 642 | # CONFIG_TEHUTI is not set |
| 621 | # CONFIG_BNX2X is not set | 643 | # CONFIG_BNX2X is not set |
| 644 | # CONFIG_QLGE is not set | ||
| 622 | # CONFIG_SFC is not set | 645 | # CONFIG_SFC is not set |
| 623 | # CONFIG_TR is not set | 646 | # CONFIG_TR is not set |
| 624 | 647 | ||
| @@ -694,9 +717,11 @@ CONFIG_MOUSE_PS2_LOGIPS2PP=y | |||
| 694 | CONFIG_MOUSE_PS2_SYNAPTICS=y | 717 | CONFIG_MOUSE_PS2_SYNAPTICS=y |
| 695 | CONFIG_MOUSE_PS2_LIFEBOOK=y | 718 | CONFIG_MOUSE_PS2_LIFEBOOK=y |
| 696 | CONFIG_MOUSE_PS2_TRACKPOINT=y | 719 | CONFIG_MOUSE_PS2_TRACKPOINT=y |
| 720 | # CONFIG_MOUSE_PS2_ELANTECH is not set | ||
| 697 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set | 721 | # CONFIG_MOUSE_PS2_TOUCHKIT is not set |
| 698 | CONFIG_MOUSE_SERIAL=y | 722 | CONFIG_MOUSE_SERIAL=y |
| 699 | # CONFIG_MOUSE_APPLETOUCH is not set | 723 | # CONFIG_MOUSE_APPLETOUCH is not set |
| 724 | # CONFIG_MOUSE_BCM5974 is not set | ||
| 700 | # CONFIG_MOUSE_VSXXXAA is not set | 725 | # CONFIG_MOUSE_VSXXXAA is not set |
| 701 | # CONFIG_INPUT_JOYSTICK is not set | 726 | # CONFIG_INPUT_JOYSTICK is not set |
| 702 | # CONFIG_INPUT_TABLET is not set | 727 | # CONFIG_INPUT_TABLET is not set |
| @@ -708,6 +733,7 @@ CONFIG_INPUT_SPARCSPKR=y | |||
| 708 | # CONFIG_INPUT_KEYSPAN_REMOTE is not set | 733 | # CONFIG_INPUT_KEYSPAN_REMOTE is not set |
| 709 | # CONFIG_INPUT_POWERMATE is not set | 734 | # CONFIG_INPUT_POWERMATE is not set |
| 710 | # CONFIG_INPUT_YEALINK is not set | 735 | # CONFIG_INPUT_YEALINK is not set |
| 736 | # CONFIG_INPUT_CM109 is not set | ||
| 711 | # CONFIG_INPUT_UINPUT is not set | 737 | # CONFIG_INPUT_UINPUT is not set |
| 712 | 738 | ||
| 713 | # | 739 | # |
| @@ -725,6 +751,7 @@ CONFIG_SERIO_RAW=m | |||
| 725 | # Character devices | 751 | # Character devices |
| 726 | # | 752 | # |
| 727 | CONFIG_VT=y | 753 | CONFIG_VT=y |
| 754 | CONFIG_CONSOLE_TRANSLATIONS=y | ||
| 728 | CONFIG_VT_CONSOLE=y | 755 | CONFIG_VT_CONSOLE=y |
| 729 | CONFIG_HW_CONSOLE=y | 756 | CONFIG_HW_CONSOLE=y |
| 730 | # CONFIG_VT_HW_CONSOLE_BINDING is not set | 757 | # CONFIG_VT_HW_CONSOLE_BINDING is not set |
| @@ -735,6 +762,7 @@ CONFIG_HW_CONSOLE=y | |||
| 735 | # | 762 | # |
| 736 | # Serial drivers | 763 | # Serial drivers |
| 737 | # | 764 | # |
| 765 | # CONFIG_SERIAL_8250 is not set | ||
| 738 | 766 | ||
| 739 | # | 767 | # |
| 740 | # Non-8250 serial port support | 768 | # Non-8250 serial port support |
| @@ -762,6 +790,7 @@ CONFIG_DEVPORT=y | |||
| 762 | CONFIG_I2C=y | 790 | CONFIG_I2C=y |
| 763 | CONFIG_I2C_BOARDINFO=y | 791 | CONFIG_I2C_BOARDINFO=y |
| 764 | # CONFIG_I2C_CHARDEV is not set | 792 | # CONFIG_I2C_CHARDEV is not set |
| 793 | CONFIG_I2C_HELPER_AUTO=y | ||
| 765 | CONFIG_I2C_ALGOBIT=y | 794 | CONFIG_I2C_ALGOBIT=y |
| 766 | 795 | ||
| 767 | # | 796 | # |
| @@ -827,10 +856,13 @@ CONFIG_I2C_ALGOBIT=y | |||
| 827 | # CONFIG_I2C_DEBUG_BUS is not set | 856 | # CONFIG_I2C_DEBUG_BUS is not set |
| 828 | # CONFIG_I2C_DEBUG_CHIP is not set | 857 | # CONFIG_I2C_DEBUG_CHIP is not set |
| 829 | # CONFIG_SPI is not set | 858 | # CONFIG_SPI is not set |
| 859 | CONFIG_ARCH_WANT_OPTIONAL_GPIOLIB=y | ||
| 860 | # CONFIG_GPIOLIB is not set | ||
| 830 | # CONFIG_W1 is not set | 861 | # CONFIG_W1 is not set |
| 831 | # CONFIG_POWER_SUPPLY is not set | 862 | # CONFIG_POWER_SUPPLY is not set |
| 832 | CONFIG_HWMON=y | 863 | CONFIG_HWMON=y |
| 833 | # CONFIG_HWMON_VID is not set | 864 | # CONFIG_HWMON_VID is not set |
| 865 | # CONFIG_SENSORS_AD7414 is not set | ||
| 834 | # CONFIG_SENSORS_AD7418 is not set | 866 | # CONFIG_SENSORS_AD7418 is not set |
| 835 | # CONFIG_SENSORS_ADM1021 is not set | 867 | # CONFIG_SENSORS_ADM1021 is not set |
| 836 | # CONFIG_SENSORS_ADM1025 is not set | 868 | # CONFIG_SENSORS_ADM1025 is not set |
| @@ -882,6 +914,7 @@ CONFIG_HWMON=y | |||
| 882 | # CONFIG_SENSORS_W83L786NG is not set | 914 | # CONFIG_SENSORS_W83L786NG is not set |
| 883 | # CONFIG_SENSORS_W83627HF is not set | 915 | # CONFIG_SENSORS_W83627HF is not set |
| 884 | # CONFIG_SENSORS_W83627EHF is not set | 916 | # CONFIG_SENSORS_W83627EHF is not set |
| 917 | # CONFIG_SENSORS_ULTRA45 is not set | ||
| 885 | # CONFIG_HWMON_DEBUG_CHIP is not set | 918 | # CONFIG_HWMON_DEBUG_CHIP is not set |
| 886 | # CONFIG_THERMAL is not set | 919 | # CONFIG_THERMAL is not set |
| 887 | # CONFIG_THERMAL_HWMON is not set | 920 | # CONFIG_THERMAL_HWMON is not set |
| @@ -896,8 +929,14 @@ CONFIG_SSB_POSSIBLE=y | |||
| 896 | # | 929 | # |
| 897 | # Multifunction device drivers | 930 | # Multifunction device drivers |
| 898 | # | 931 | # |
| 932 | # CONFIG_MFD_CORE is not set | ||
| 899 | # CONFIG_MFD_SM501 is not set | 933 | # CONFIG_MFD_SM501 is not set |
| 900 | # CONFIG_HTC_PASIC3 is not set | 934 | # CONFIG_HTC_PASIC3 is not set |
| 935 | # CONFIG_MFD_TMIO is not set | ||
| 936 | # CONFIG_PMIC_DA903X is not set | ||
| 937 | # CONFIG_MFD_WM8400 is not set | ||
| 938 | # CONFIG_MFD_WM8350_I2C is not set | ||
| 939 | # CONFIG_REGULATOR is not set | ||
| 901 | 940 | ||
| 902 | # | 941 | # |
| 903 | # Multimedia devices | 942 | # Multimedia devices |
| @@ -924,6 +963,7 @@ CONFIG_SSB_POSSIBLE=y | |||
| 924 | CONFIG_FB=y | 963 | CONFIG_FB=y |
| 925 | # CONFIG_FIRMWARE_EDID is not set | 964 | # CONFIG_FIRMWARE_EDID is not set |
| 926 | CONFIG_FB_DDC=y | 965 | CONFIG_FB_DDC=y |
| 966 | # CONFIG_FB_BOOT_VESA_SUPPORT is not set | ||
| 927 | CONFIG_FB_CFB_FILLRECT=y | 967 | CONFIG_FB_CFB_FILLRECT=y |
| 928 | CONFIG_FB_CFB_COPYAREA=y | 968 | CONFIG_FB_CFB_COPYAREA=y |
| 929 | CONFIG_FB_CFB_IMAGEBLIT=y | 969 | CONFIG_FB_CFB_IMAGEBLIT=y |
| @@ -975,6 +1015,7 @@ CONFIG_FB_ATY_GX=y | |||
| 975 | # CONFIG_FB_S3 is not set | 1015 | # CONFIG_FB_S3 is not set |
| 976 | # CONFIG_FB_SAVAGE is not set | 1016 | # CONFIG_FB_SAVAGE is not set |
| 977 | # CONFIG_FB_SIS is not set | 1017 | # CONFIG_FB_SIS is not set |
| 1018 | # CONFIG_FB_VIA is not set | ||
| 978 | # CONFIG_FB_NEOMAGIC is not set | 1019 | # CONFIG_FB_NEOMAGIC is not set |
| 979 | # CONFIG_FB_KYRO is not set | 1020 | # CONFIG_FB_KYRO is not set |
| 980 | # CONFIG_FB_3DFX is not set | 1021 | # CONFIG_FB_3DFX is not set |
| @@ -983,7 +1024,10 @@ CONFIG_FB_ATY_GX=y | |||
| 983 | # CONFIG_FB_TRIDENT is not set | 1024 | # CONFIG_FB_TRIDENT is not set |
| 984 | # CONFIG_FB_ARK is not set | 1025 | # CONFIG_FB_ARK is not set |
| 985 | # CONFIG_FB_PM3 is not set | 1026 | # CONFIG_FB_PM3 is not set |
| 1027 | # CONFIG_FB_CARMINE is not set | ||
| 986 | # CONFIG_FB_VIRTUAL is not set | 1028 | # CONFIG_FB_VIRTUAL is not set |
| 1029 | # CONFIG_FB_METRONOME is not set | ||
| 1030 | # CONFIG_FB_MB862XX is not set | ||
| 987 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set | 1031 | # CONFIG_BACKLIGHT_LCD_SUPPORT is not set |
| 988 | 1032 | ||
| 989 | # | 1033 | # |
| @@ -1015,6 +1059,7 @@ CONFIG_LOGO=y | |||
| 1015 | # CONFIG_LOGO_LINUX_CLUT224 is not set | 1059 | # CONFIG_LOGO_LINUX_CLUT224 is not set |
| 1016 | CONFIG_LOGO_SUN_CLUT224=y | 1060 | CONFIG_LOGO_SUN_CLUT224=y |
| 1017 | CONFIG_SOUND=m | 1061 | CONFIG_SOUND=m |
| 1062 | CONFIG_SOUND_OSS_CORE=y | ||
| 1018 | CONFIG_SND=m | 1063 | CONFIG_SND=m |
| 1019 | CONFIG_SND_TIMER=m | 1064 | CONFIG_SND_TIMER=m |
| 1020 | CONFIG_SND_PCM=m | 1065 | CONFIG_SND_PCM=m |
| @@ -1120,9 +1165,36 @@ CONFIG_HID=y | |||
| 1120 | # USB Input Devices | 1165 | # USB Input Devices |
| 1121 | # | 1166 | # |
| 1122 | CONFIG_USB_HID=y | 1167 | CONFIG_USB_HID=y |
| 1123 | # CONFIG_USB_HIDINPUT_POWERBOOK is not set | 1168 | # CONFIG_HID_PID is not set |
| 1124 | # CONFIG_HID_FF is not set | ||
| 1125 | CONFIG_USB_HIDDEV=y | 1169 | CONFIG_USB_HIDDEV=y |
| 1170 | |||
| 1171 | # | ||
| 1172 | # Special HID drivers | ||
| 1173 | # | ||
| 1174 | CONFIG_HID_COMPAT=y | ||
| 1175 | CONFIG_HID_A4TECH=y | ||
| 1176 | CONFIG_HID_APPLE=y | ||
| 1177 | CONFIG_HID_BELKIN=y | ||
| 1178 | CONFIG_HID_BRIGHT=y | ||
| 1179 | CONFIG_HID_CHERRY=y | ||
| 1180 | CONFIG_HID_CHICONY=y | ||
| 1181 | CONFIG_HID_CYPRESS=y | ||
| 1182 | CONFIG_HID_DELL=y | ||
| 1183 | CONFIG_HID_EZKEY=y | ||
| 1184 | CONFIG_HID_GYRATION=y | ||
| 1185 | CONFIG_HID_LOGITECH=y | ||
| 1186 | # CONFIG_LOGITECH_FF is not set | ||
| 1187 | # CONFIG_LOGIRUMBLEPAD2_FF is not set | ||
| 1188 | CONFIG_HID_MICROSOFT=y | ||
| 1189 | CONFIG_HID_MONTEREY=y | ||
| 1190 | CONFIG_HID_PANTHERLORD=y | ||
| 1191 | # CONFIG_PANTHERLORD_FF is not set | ||
| 1192 | CONFIG_HID_PETALYNX=y | ||
| 1193 | CONFIG_HID_SAMSUNG=y | ||
| 1194 | CONFIG_HID_SONY=y | ||
| 1195 | CONFIG_HID_SUNPLUS=y | ||
| 1196 | # CONFIG_THRUSTMASTER_FF is not set | ||
| 1197 | # CONFIG_ZEROPLUS_FF is not set | ||
| 1126 | CONFIG_USB_SUPPORT=y | 1198 | CONFIG_USB_SUPPORT=y |
| 1127 | CONFIG_USB_ARCH_HAS_HCD=y | 1199 | CONFIG_USB_ARCH_HAS_HCD=y |
| 1128 | CONFIG_USB_ARCH_HAS_OHCI=y | 1200 | CONFIG_USB_ARCH_HAS_OHCI=y |
| @@ -1138,6 +1210,9 @@ CONFIG_USB_DEVICEFS=y | |||
| 1138 | # CONFIG_USB_DEVICE_CLASS is not set | 1210 | # CONFIG_USB_DEVICE_CLASS is not set |
| 1139 | # CONFIG_USB_DYNAMIC_MINORS is not set | 1211 | # CONFIG_USB_DYNAMIC_MINORS is not set |
| 1140 | # CONFIG_USB_OTG is not set | 1212 | # CONFIG_USB_OTG is not set |
| 1213 | # CONFIG_USB_MON is not set | ||
| 1214 | # CONFIG_USB_WUSB is not set | ||
| 1215 | # CONFIG_USB_WUSB_CBAF is not set | ||
| 1141 | 1216 | ||
| 1142 | # | 1217 | # |
| 1143 | # USB Host Controller Drivers | 1218 | # USB Host Controller Drivers |
| @@ -1155,6 +1230,8 @@ CONFIG_USB_OHCI_LITTLE_ENDIAN=y | |||
| 1155 | CONFIG_USB_UHCI_HCD=m | 1230 | CONFIG_USB_UHCI_HCD=m |
| 1156 | # CONFIG_USB_SL811_HCD is not set | 1231 | # CONFIG_USB_SL811_HCD is not set |
| 1157 | # CONFIG_USB_R8A66597_HCD is not set | 1232 | # CONFIG_USB_R8A66597_HCD is not set |
| 1233 | # CONFIG_USB_WHCI_HCD is not set | ||
| 1234 | # CONFIG_USB_HWA_HCD is not set | ||
| 1158 | 1235 | ||
| 1159 | # | 1236 | # |
| 1160 | # USB Device Class drivers | 1237 | # USB Device Class drivers |
| @@ -1162,6 +1239,7 @@ CONFIG_USB_UHCI_HCD=m | |||
| 1162 | # CONFIG_USB_ACM is not set | 1239 | # CONFIG_USB_ACM is not set |
| 1163 | # CONFIG_USB_PRINTER is not set | 1240 | # CONFIG_USB_PRINTER is not set |
| 1164 | # CONFIG_USB_WDM is not set | 1241 | # CONFIG_USB_WDM is not set |
| 1242 | # CONFIG_USB_TMC is not set | ||
| 1165 | 1243 | ||
| 1166 | # | 1244 | # |
| 1167 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' | 1245 | # NOTE: USB_STORAGE enables SCSI, and 'SCSI disk support' |
| @@ -1191,7 +1269,6 @@ CONFIG_USB_STORAGE=m | |||
| 1191 | # | 1269 | # |
| 1192 | # CONFIG_USB_MDC800 is not set | 1270 | # CONFIG_USB_MDC800 is not set |
| 1193 | # CONFIG_USB_MICROTEK is not set | 1271 | # CONFIG_USB_MICROTEK is not set |
| 1194 | # CONFIG_USB_MON is not set | ||
| 1195 | 1272 | ||
| 1196 | # | 1273 | # |
| 1197 | # USB port drivers | 1274 | # USB port drivers |
| @@ -1204,7 +1281,7 @@ CONFIG_USB_STORAGE=m | |||
| 1204 | # CONFIG_USB_EMI62 is not set | 1281 | # CONFIG_USB_EMI62 is not set |
| 1205 | # CONFIG_USB_EMI26 is not set | 1282 | # CONFIG_USB_EMI26 is not set |
| 1206 | # CONFIG_USB_ADUTUX is not set | 1283 | # CONFIG_USB_ADUTUX is not set |
| 1207 | # CONFIG_USB_AUERSWALD is not set | 1284 | # CONFIG_USB_SEVSEG is not set |
| 1208 | # CONFIG_USB_RIO500 is not set | 1285 | # CONFIG_USB_RIO500 is not set |
| 1209 | # CONFIG_USB_LEGOTOWER is not set | 1286 | # CONFIG_USB_LEGOTOWER is not set |
| 1210 | # CONFIG_USB_LCD is not set | 1287 | # CONFIG_USB_LCD is not set |
| @@ -1222,21 +1299,80 @@ CONFIG_USB_STORAGE=m | |||
| 1222 | # CONFIG_USB_IOWARRIOR is not set | 1299 | # CONFIG_USB_IOWARRIOR is not set |
| 1223 | # CONFIG_USB_TEST is not set | 1300 | # CONFIG_USB_TEST is not set |
| 1224 | # CONFIG_USB_ISIGHTFW is not set | 1301 | # CONFIG_USB_ISIGHTFW is not set |
| 1302 | # CONFIG_USB_VST is not set | ||
| 1225 | # CONFIG_USB_GADGET is not set | 1303 | # CONFIG_USB_GADGET is not set |
| 1304 | # CONFIG_UWB is not set | ||
| 1226 | # CONFIG_MMC is not set | 1305 | # CONFIG_MMC is not set |
| 1227 | # CONFIG_MEMSTICK is not set | 1306 | # CONFIG_MEMSTICK is not set |
| 1228 | # CONFIG_NEW_LEDS is not set | 1307 | # CONFIG_NEW_LEDS is not set |
| 1229 | # CONFIG_ACCESSIBILITY is not set | 1308 | # CONFIG_ACCESSIBILITY is not set |
| 1230 | # CONFIG_INFINIBAND is not set | 1309 | # CONFIG_INFINIBAND is not set |
| 1231 | # CONFIG_RTC_CLASS is not set | 1310 | CONFIG_RTC_LIB=y |
| 1311 | CONFIG_RTC_CLASS=y | ||
| 1312 | CONFIG_RTC_HCTOSYS=y | ||
| 1313 | CONFIG_RTC_HCTOSYS_DEVICE="rtc0" | ||
| 1314 | # CONFIG_RTC_DEBUG is not set | ||
| 1315 | |||
| 1316 | # | ||
| 1317 | # RTC interfaces | ||
| 1318 | # | ||
| 1319 | CONFIG_RTC_INTF_SYSFS=y | ||
| 1320 | CONFIG_RTC_INTF_PROC=y | ||
| 1321 | CONFIG_RTC_INTF_DEV=y | ||
| 1322 | # CONFIG_RTC_INTF_DEV_UIE_EMUL is not set | ||
| 1323 | # CONFIG_RTC_DRV_TEST is not set | ||
| 1324 | |||
| 1325 | # | ||
| 1326 | # I2C RTC drivers | ||
| 1327 | # | ||
| 1328 | # CONFIG_RTC_DRV_DS1307 is not set | ||
| 1329 | # CONFIG_RTC_DRV_DS1374 is not set | ||
| 1330 | # CONFIG_RTC_DRV_DS1672 is not set | ||
| 1331 | # CONFIG_RTC_DRV_MAX6900 is not set | ||
| 1332 | # CONFIG_RTC_DRV_RS5C372 is not set | ||
| 1333 | # CONFIG_RTC_DRV_ISL1208 is not set | ||
| 1334 | # CONFIG_RTC_DRV_X1205 is not set | ||
| 1335 | # CONFIG_RTC_DRV_PCF8563 is not set | ||
| 1336 | # CONFIG_RTC_DRV_PCF8583 is not set | ||
| 1337 | # CONFIG_RTC_DRV_M41T80 is not set | ||
| 1338 | # CONFIG_RTC_DRV_S35390A is not set | ||
| 1339 | # CONFIG_RTC_DRV_FM3130 is not set | ||
| 1340 | |||
| 1341 | # | ||
| 1342 | # SPI RTC drivers | ||
| 1343 | # | ||
| 1344 | |||
| 1345 | # | ||
| 1346 | # Platform RTC drivers | ||
| 1347 | # | ||
| 1348 | CONFIG_RTC_DRV_CMOS=y | ||
| 1349 | # CONFIG_RTC_DRV_DS1286 is not set | ||
| 1350 | # CONFIG_RTC_DRV_DS1511 is not set | ||
| 1351 | # CONFIG_RTC_DRV_DS1553 is not set | ||
| 1352 | # CONFIG_RTC_DRV_DS1742 is not set | ||
| 1353 | # CONFIG_RTC_DRV_STK17TA8 is not set | ||
| 1354 | # CONFIG_RTC_DRV_M48T86 is not set | ||
| 1355 | # CONFIG_RTC_DRV_M48T35 is not set | ||
| 1356 | CONFIG_RTC_DRV_M48T59=y | ||
| 1357 | CONFIG_RTC_DRV_BQ4802=y | ||
| 1358 | # CONFIG_RTC_DRV_V3020 is not set | ||
| 1359 | |||
| 1360 | # | ||
| 1361 | # on-CPU RTC drivers | ||
| 1362 | # | ||
| 1363 | CONFIG_RTC_DRV_SUN4V=y | ||
| 1364 | CONFIG_RTC_DRV_STARFIRE=y | ||
| 1365 | # CONFIG_DMADEVICES is not set | ||
| 1232 | # CONFIG_UIO is not set | 1366 | # CONFIG_UIO is not set |
| 1367 | # CONFIG_STAGING is not set | ||
| 1368 | CONFIG_STAGING_EXCLUDE_BUILD=y | ||
| 1233 | 1369 | ||
| 1234 | # | 1370 | # |
| 1235 | # Misc Linux/SPARC drivers | 1371 | # Misc Linux/SPARC drivers |
| 1236 | # | 1372 | # |
| 1237 | CONFIG_SUN_OPENPROMIO=y | 1373 | CONFIG_SUN_OPENPROMIO=y |
| 1238 | # CONFIG_OBP_FLASH is not set | 1374 | # CONFIG_OBP_FLASH is not set |
| 1239 | # CONFIG_SUN_BPP is not set | 1375 | # CONFIG_TADPOLE_TS102_UCTRL is not set |
| 1240 | # CONFIG_BBC_I2C is not set | 1376 | # CONFIG_BBC_I2C is not set |
| 1241 | # CONFIG_ENVCTRL is not set | 1377 | # CONFIG_ENVCTRL is not set |
| 1242 | # CONFIG_DISPLAY7SEG is not set | 1378 | # CONFIG_DISPLAY7SEG is not set |
| @@ -1253,13 +1389,14 @@ CONFIG_EXT3_FS=y | |||
| 1253 | CONFIG_EXT3_FS_XATTR=y | 1389 | CONFIG_EXT3_FS_XATTR=y |
| 1254 | CONFIG_EXT3_FS_POSIX_ACL=y | 1390 | CONFIG_EXT3_FS_POSIX_ACL=y |
| 1255 | CONFIG_EXT3_FS_SECURITY=y | 1391 | CONFIG_EXT3_FS_SECURITY=y |
| 1256 | # CONFIG_EXT4DEV_FS is not set | 1392 | # CONFIG_EXT4_FS is not set |
| 1257 | CONFIG_JBD=y | 1393 | CONFIG_JBD=y |
| 1258 | # CONFIG_JBD_DEBUG is not set | 1394 | # CONFIG_JBD_DEBUG is not set |
| 1259 | CONFIG_FS_MBCACHE=y | 1395 | CONFIG_FS_MBCACHE=y |
| 1260 | # CONFIG_REISERFS_FS is not set | 1396 | # CONFIG_REISERFS_FS is not set |
| 1261 | # CONFIG_JFS_FS is not set | 1397 | # CONFIG_JFS_FS is not set |
| 1262 | CONFIG_FS_POSIX_ACL=y | 1398 | CONFIG_FS_POSIX_ACL=y |
| 1399 | CONFIG_FILE_LOCKING=y | ||
| 1263 | # CONFIG_XFS_FS is not set | 1400 | # CONFIG_XFS_FS is not set |
| 1264 | # CONFIG_GFS2_FS is not set | 1401 | # CONFIG_GFS2_FS is not set |
| 1265 | # CONFIG_OCFS2_FS is not set | 1402 | # CONFIG_OCFS2_FS is not set |
| @@ -1290,6 +1427,7 @@ CONFIG_INOTIFY_USER=y | |||
| 1290 | CONFIG_PROC_FS=y | 1427 | CONFIG_PROC_FS=y |
| 1291 | CONFIG_PROC_KCORE=y | 1428 | CONFIG_PROC_KCORE=y |
| 1292 | CONFIG_PROC_SYSCTL=y | 1429 | CONFIG_PROC_SYSCTL=y |
| 1430 | CONFIG_PROC_PAGE_MONITOR=y | ||
| 1293 | CONFIG_SYSFS=y | 1431 | CONFIG_SYSFS=y |
| 1294 | CONFIG_TMPFS=y | 1432 | CONFIG_TMPFS=y |
| 1295 | # CONFIG_TMPFS_POSIX_ACL is not set | 1433 | # CONFIG_TMPFS_POSIX_ACL is not set |
| @@ -1311,6 +1449,7 @@ CONFIG_HUGETLB_PAGE=y | |||
| 1311 | # CONFIG_CRAMFS is not set | 1449 | # CONFIG_CRAMFS is not set |
| 1312 | # CONFIG_VXFS_FS is not set | 1450 | # CONFIG_VXFS_FS is not set |
| 1313 | # CONFIG_MINIX_FS is not set | 1451 | # CONFIG_MINIX_FS is not set |
| 1452 | # CONFIG_OMFS_FS is not set | ||
| 1314 | # CONFIG_HPFS_FS is not set | 1453 | # CONFIG_HPFS_FS is not set |
| 1315 | # CONFIG_QNX4FS_FS is not set | 1454 | # CONFIG_QNX4FS_FS is not set |
| 1316 | # CONFIG_ROMFS_FS is not set | 1455 | # CONFIG_ROMFS_FS is not set |
| @@ -1388,6 +1527,8 @@ CONFIG_DEBUG_FS=y | |||
| 1388 | CONFIG_DEBUG_KERNEL=y | 1527 | CONFIG_DEBUG_KERNEL=y |
| 1389 | # CONFIG_DEBUG_SHIRQ is not set | 1528 | # CONFIG_DEBUG_SHIRQ is not set |
| 1390 | CONFIG_DETECT_SOFTLOCKUP=y | 1529 | CONFIG_DETECT_SOFTLOCKUP=y |
| 1530 | # CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC is not set | ||
| 1531 | CONFIG_BOOTPARAM_SOFTLOCKUP_PANIC_VALUE=0 | ||
| 1391 | # CONFIG_SCHED_DEBUG is not set | 1532 | # CONFIG_SCHED_DEBUG is not set |
| 1392 | CONFIG_SCHEDSTATS=y | 1533 | CONFIG_SCHEDSTATS=y |
| 1393 | # CONFIG_TIMER_STATS is not set | 1534 | # CONFIG_TIMER_STATS is not set |
| @@ -1408,20 +1549,30 @@ CONFIG_DEBUG_BUGVERBOSE=y | |||
| 1408 | # CONFIG_DEBUG_INFO is not set | 1549 | # CONFIG_DEBUG_INFO is not set |
| 1409 | # CONFIG_DEBUG_VM is not set | 1550 | # CONFIG_DEBUG_VM is not set |
| 1410 | # CONFIG_DEBUG_WRITECOUNT is not set | 1551 | # CONFIG_DEBUG_WRITECOUNT is not set |
| 1552 | CONFIG_DEBUG_MEMORY_INIT=y | ||
| 1411 | # CONFIG_DEBUG_LIST is not set | 1553 | # CONFIG_DEBUG_LIST is not set |
| 1412 | # CONFIG_DEBUG_SG is not set | 1554 | # CONFIG_DEBUG_SG is not set |
| 1413 | # CONFIG_BOOT_PRINTK_DELAY is not set | 1555 | # CONFIG_BOOT_PRINTK_DELAY is not set |
| 1414 | # CONFIG_RCU_TORTURE_TEST is not set | 1556 | # CONFIG_RCU_TORTURE_TEST is not set |
| 1557 | # CONFIG_RCU_CPU_STALL_DETECTOR is not set | ||
| 1415 | # CONFIG_KPROBES_SANITY_TEST is not set | 1558 | # CONFIG_KPROBES_SANITY_TEST is not set |
| 1416 | # CONFIG_BACKTRACE_SELF_TEST is not set | 1559 | # CONFIG_BACKTRACE_SELF_TEST is not set |
| 1560 | # CONFIG_DEBUG_BLOCK_EXT_DEVT is not set | ||
| 1417 | # CONFIG_LKDTM is not set | 1561 | # CONFIG_LKDTM is not set |
| 1418 | # CONFIG_FAULT_INJECTION is not set | 1562 | # CONFIG_FAULT_INJECTION is not set |
| 1419 | CONFIG_HAVE_FTRACE=y | 1563 | CONFIG_SYSCTL_SYSCALL_CHECK=y |
| 1420 | CONFIG_HAVE_DYNAMIC_FTRACE=y | 1564 | CONFIG_HAVE_FUNCTION_TRACER=y |
| 1421 | # CONFIG_FTRACE is not set | 1565 | |
| 1566 | # | ||
| 1567 | # Tracers | ||
| 1568 | # | ||
| 1569 | # CONFIG_FUNCTION_TRACER is not set | ||
| 1422 | # CONFIG_IRQSOFF_TRACER is not set | 1570 | # CONFIG_IRQSOFF_TRACER is not set |
| 1423 | # CONFIG_SCHED_TRACER is not set | 1571 | # CONFIG_SCHED_TRACER is not set |
| 1424 | # CONFIG_CONTEXT_SWITCH_TRACER is not set | 1572 | # CONFIG_CONTEXT_SWITCH_TRACER is not set |
| 1573 | # CONFIG_BOOT_TRACER is not set | ||
| 1574 | # CONFIG_STACK_TRACER is not set | ||
| 1575 | # CONFIG_DYNAMIC_PRINTK_DEBUG is not set | ||
| 1425 | # CONFIG_SAMPLES is not set | 1576 | # CONFIG_SAMPLES is not set |
| 1426 | CONFIG_HAVE_ARCH_KGDB=y | 1577 | CONFIG_HAVE_ARCH_KGDB=y |
| 1427 | # CONFIG_KGDB is not set | 1578 | # CONFIG_KGDB is not set |
| @@ -1436,6 +1587,7 @@ CONFIG_HAVE_ARCH_KGDB=y | |||
| 1436 | CONFIG_KEYS=y | 1587 | CONFIG_KEYS=y |
| 1437 | # CONFIG_KEYS_DEBUG_PROC_KEYS is not set | 1588 | # CONFIG_KEYS_DEBUG_PROC_KEYS is not set |
| 1438 | # CONFIG_SECURITY is not set | 1589 | # CONFIG_SECURITY is not set |
| 1590 | # CONFIG_SECURITYFS is not set | ||
| 1439 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set | 1591 | # CONFIG_SECURITY_FILE_CAPABILITIES is not set |
| 1440 | CONFIG_XOR_BLOCKS=m | 1592 | CONFIG_XOR_BLOCKS=m |
| 1441 | CONFIG_ASYNC_CORE=m | 1593 | CONFIG_ASYNC_CORE=m |
| @@ -1446,10 +1598,12 @@ CONFIG_CRYPTO=y | |||
| 1446 | # | 1598 | # |
| 1447 | # Crypto core or helper | 1599 | # Crypto core or helper |
| 1448 | # | 1600 | # |
| 1601 | # CONFIG_CRYPTO_FIPS is not set | ||
| 1449 | CONFIG_CRYPTO_ALGAPI=y | 1602 | CONFIG_CRYPTO_ALGAPI=y |
| 1450 | CONFIG_CRYPTO_AEAD=y | 1603 | CONFIG_CRYPTO_AEAD=y |
| 1451 | CONFIG_CRYPTO_BLKCIPHER=y | 1604 | CONFIG_CRYPTO_BLKCIPHER=y |
| 1452 | CONFIG_CRYPTO_HASH=y | 1605 | CONFIG_CRYPTO_HASH=y |
| 1606 | CONFIG_CRYPTO_RNG=y | ||
| 1453 | CONFIG_CRYPTO_MANAGER=y | 1607 | CONFIG_CRYPTO_MANAGER=y |
| 1454 | CONFIG_CRYPTO_GF128MUL=m | 1608 | CONFIG_CRYPTO_GF128MUL=m |
| 1455 | CONFIG_CRYPTO_NULL=m | 1609 | CONFIG_CRYPTO_NULL=m |
| @@ -1523,6 +1677,11 @@ CONFIG_CRYPTO_TWOFISH_COMMON=m | |||
| 1523 | # | 1677 | # |
| 1524 | CONFIG_CRYPTO_DEFLATE=y | 1678 | CONFIG_CRYPTO_DEFLATE=y |
| 1525 | # CONFIG_CRYPTO_LZO is not set | 1679 | # CONFIG_CRYPTO_LZO is not set |
| 1680 | |||
| 1681 | # | ||
| 1682 | # Random Number Generation | ||
| 1683 | # | ||
| 1684 | # CONFIG_CRYPTO_ANSI_CPRNG is not set | ||
| 1526 | CONFIG_CRYPTO_HW=y | 1685 | CONFIG_CRYPTO_HW=y |
| 1527 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set | 1686 | # CONFIG_CRYPTO_DEV_HIFN_795X is not set |
| 1528 | 1687 | ||
| @@ -1530,7 +1689,6 @@ CONFIG_CRYPTO_HW=y | |||
| 1530 | # Library routines | 1689 | # Library routines |
| 1531 | # | 1690 | # |
| 1532 | CONFIG_BITREVERSE=y | 1691 | CONFIG_BITREVERSE=y |
| 1533 | # CONFIG_GENERIC_FIND_FIRST_BIT is not set | ||
| 1534 | CONFIG_CRC_CCITT=m | 1692 | CONFIG_CRC_CCITT=m |
| 1535 | CONFIG_CRC16=m | 1693 | CONFIG_CRC16=m |
| 1536 | # CONFIG_CRC_T10DIF is not set | 1694 | # CONFIG_CRC_T10DIF is not set |
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig index 4cf0ab13d187..93224b569187 100644 --- a/arch/x86/Kconfig +++ b/arch/x86/Kconfig | |||
| @@ -957,7 +957,7 @@ config ARCH_PHYS_ADDR_T_64BIT | |||
| 957 | config NUMA | 957 | config NUMA |
| 958 | bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" | 958 | bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" |
| 959 | depends on SMP | 959 | depends on SMP |
| 960 | depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && EXPERIMENTAL) | 960 | depends on X86_64 || (X86_32 && HIGHMEM64G && (X86_NUMAQ || X86_BIGSMP || X86_SUMMIT && ACPI) && BROKEN) |
| 961 | default n if X86_PC | 961 | default n if X86_PC |
| 962 | default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) | 962 | default y if (X86_NUMAQ || X86_SUMMIT || X86_BIGSMP) |
| 963 | help | 963 | help |
diff --git a/drivers/ata/libata-core.c b/drivers/ata/libata-core.c index 0cd3ad497136..4214bfb13bbd 100644 --- a/drivers/ata/libata-core.c +++ b/drivers/ata/libata-core.c | |||
| @@ -612,7 +612,7 @@ u64 ata_tf_read_block(struct ata_taskfile *tf, struct ata_device *dev) | |||
| 612 | if (tf->flags & ATA_TFLAG_LBA48) { | 612 | if (tf->flags & ATA_TFLAG_LBA48) { |
| 613 | block |= (u64)tf->hob_lbah << 40; | 613 | block |= (u64)tf->hob_lbah << 40; |
| 614 | block |= (u64)tf->hob_lbam << 32; | 614 | block |= (u64)tf->hob_lbam << 32; |
| 615 | block |= tf->hob_lbal << 24; | 615 | block |= (u64)tf->hob_lbal << 24; |
| 616 | } else | 616 | } else |
| 617 | block |= (tf->device & 0xf) << 24; | 617 | block |= (tf->device & 0xf) << 24; |
| 618 | 618 | ||
diff --git a/drivers/ata/libata-eh.c b/drivers/ata/libata-eh.c index 8077bdf5d30d..32da9a93ce44 100644 --- a/drivers/ata/libata-eh.c +++ b/drivers/ata/libata-eh.c | |||
| @@ -610,9 +610,6 @@ void ata_scsi_error(struct Scsi_Host *host) | |||
| 610 | if (ata_ncq_enabled(dev)) | 610 | if (ata_ncq_enabled(dev)) |
| 611 | ehc->saved_ncq_enabled |= 1 << devno; | 611 | ehc->saved_ncq_enabled |= 1 << devno; |
| 612 | } | 612 | } |
| 613 | |||
| 614 | /* set last reset timestamp to some time in the past */ | ||
| 615 | ehc->last_reset = jiffies - 60 * HZ; | ||
| 616 | } | 613 | } |
| 617 | 614 | ||
| 618 | ap->pflags |= ATA_PFLAG_EH_IN_PROGRESS; | 615 | ap->pflags |= ATA_PFLAG_EH_IN_PROGRESS; |
| @@ -2281,17 +2278,21 @@ int ata_eh_reset(struct ata_link *link, int classify, | |||
| 2281 | if (link->flags & ATA_LFLAG_NO_SRST) | 2278 | if (link->flags & ATA_LFLAG_NO_SRST) |
| 2282 | softreset = NULL; | 2279 | softreset = NULL; |
| 2283 | 2280 | ||
| 2284 | now = jiffies; | 2281 | /* make sure each reset attemp is at least COOL_DOWN apart */ |
| 2285 | deadline = ata_deadline(ehc->last_reset, ATA_EH_RESET_COOL_DOWN); | 2282 | if (ehc->i.flags & ATA_EHI_DID_RESET) { |
| 2286 | if (time_before(now, deadline)) | 2283 | now = jiffies; |
| 2287 | schedule_timeout_uninterruptible(deadline - now); | 2284 | WARN_ON(time_after(ehc->last_reset, now)); |
| 2285 | deadline = ata_deadline(ehc->last_reset, | ||
| 2286 | ATA_EH_RESET_COOL_DOWN); | ||
| 2287 | if (time_before(now, deadline)) | ||
| 2288 | schedule_timeout_uninterruptible(deadline - now); | ||
| 2289 | } | ||
| 2288 | 2290 | ||
| 2289 | spin_lock_irqsave(ap->lock, flags); | 2291 | spin_lock_irqsave(ap->lock, flags); |
| 2290 | ap->pflags |= ATA_PFLAG_RESETTING; | 2292 | ap->pflags |= ATA_PFLAG_RESETTING; |
| 2291 | spin_unlock_irqrestore(ap->lock, flags); | 2293 | spin_unlock_irqrestore(ap->lock, flags); |
| 2292 | 2294 | ||
| 2293 | ata_eh_about_to_do(link, NULL, ATA_EH_RESET); | 2295 | ata_eh_about_to_do(link, NULL, ATA_EH_RESET); |
| 2294 | ehc->last_reset = jiffies; | ||
| 2295 | 2296 | ||
| 2296 | ata_link_for_each_dev(dev, link) { | 2297 | ata_link_for_each_dev(dev, link) { |
| 2297 | /* If we issue an SRST then an ATA drive (not ATAPI) | 2298 | /* If we issue an SRST then an ATA drive (not ATAPI) |
| @@ -2379,7 +2380,6 @@ int ata_eh_reset(struct ata_link *link, int classify, | |||
| 2379 | /* | 2380 | /* |
| 2380 | * Perform reset | 2381 | * Perform reset |
| 2381 | */ | 2382 | */ |
| 2382 | ehc->last_reset = jiffies; | ||
| 2383 | if (ata_is_host_link(link)) | 2383 | if (ata_is_host_link(link)) |
| 2384 | ata_eh_freeze_port(ap); | 2384 | ata_eh_freeze_port(ap); |
| 2385 | 2385 | ||
| @@ -2391,6 +2391,7 @@ int ata_eh_reset(struct ata_link *link, int classify, | |||
| 2391 | reset == softreset ? "soft" : "hard"); | 2391 | reset == softreset ? "soft" : "hard"); |
| 2392 | 2392 | ||
| 2393 | /* mark that this EH session started with reset */ | 2393 | /* mark that this EH session started with reset */ |
| 2394 | ehc->last_reset = jiffies; | ||
| 2394 | if (reset == hardreset) | 2395 | if (reset == hardreset) |
| 2395 | ehc->i.flags |= ATA_EHI_DID_HARDRESET; | 2396 | ehc->i.flags |= ATA_EHI_DID_HARDRESET; |
| 2396 | else | 2397 | else |
| @@ -2535,7 +2536,7 @@ int ata_eh_reset(struct ata_link *link, int classify, | |||
| 2535 | ata_eh_done(link, NULL, ATA_EH_RESET); | 2536 | ata_eh_done(link, NULL, ATA_EH_RESET); |
| 2536 | if (slave) | 2537 | if (slave) |
| 2537 | ata_eh_done(slave, NULL, ATA_EH_RESET); | 2538 | ata_eh_done(slave, NULL, ATA_EH_RESET); |
| 2538 | ehc->last_reset = jiffies; | 2539 | ehc->last_reset = jiffies; /* update to completion time */ |
| 2539 | ehc->i.action |= ATA_EH_REVALIDATE; | 2540 | ehc->i.action |= ATA_EH_REVALIDATE; |
| 2540 | 2541 | ||
| 2541 | rc = 0; | 2542 | rc = 0; |
diff --git a/drivers/ata/pata_cs5535.c b/drivers/ata/pata_cs5535.c index 1b2d4a0f5f74..8b236af84c2e 100644 --- a/drivers/ata/pata_cs5535.c +++ b/drivers/ata/pata_cs5535.c | |||
| @@ -72,7 +72,6 @@ | |||
| 72 | /** | 72 | /** |
| 73 | * cs5535_cable_detect - detect cable type | 73 | * cs5535_cable_detect - detect cable type |
| 74 | * @ap: Port to detect on | 74 | * @ap: Port to detect on |
| 75 | * @deadline: deadline jiffies for the operation | ||
| 76 | * | 75 | * |
| 77 | * Perform cable detection for ATA66 capable cable. Return a libata | 76 | * Perform cable detection for ATA66 capable cable. Return a libata |
| 78 | * cable type. | 77 | * cable type. |
diff --git a/drivers/ata/pata_cs5536.c b/drivers/ata/pata_cs5536.c index 73f8332cb679..afed92976198 100644 --- a/drivers/ata/pata_cs5536.c +++ b/drivers/ata/pata_cs5536.c | |||
| @@ -110,7 +110,6 @@ static inline int cs5536_write(struct pci_dev *pdev, int reg, int val) | |||
| 110 | /** | 110 | /** |
| 111 | * cs5536_cable_detect - detect cable type | 111 | * cs5536_cable_detect - detect cable type |
| 112 | * @ap: Port to detect on | 112 | * @ap: Port to detect on |
| 113 | * @deadline: deadline jiffies for the operation | ||
| 114 | * | 113 | * |
| 115 | * Perform cable detection for ATA66 capable cable. Return a libata | 114 | * Perform cable detection for ATA66 capable cable. Return a libata |
| 116 | * cable type. | 115 | * cable type. |
diff --git a/drivers/ata/pata_pcmcia.c b/drivers/ata/pata_pcmcia.c index 271cb64d429e..64b2e2281ee7 100644 --- a/drivers/ata/pata_pcmcia.c +++ b/drivers/ata/pata_pcmcia.c | |||
| @@ -416,6 +416,7 @@ static struct pcmcia_device_id pcmcia_devices[] = { | |||
| 416 | PCMCIA_DEVICE_PROD_ID1("STI Flash", 0xe4a13209), | 416 | PCMCIA_DEVICE_PROD_ID1("STI Flash", 0xe4a13209), |
| 417 | PCMCIA_DEVICE_PROD_ID12("STI", "Flash 5.0", 0xbf2df18d, 0x8cb57a0e), | 417 | PCMCIA_DEVICE_PROD_ID12("STI", "Flash 5.0", 0xbf2df18d, 0x8cb57a0e), |
| 418 | PCMCIA_MFC_DEVICE_PROD_ID12(1, "SanDisk", "ConnectPlus", 0x7a954bd9, 0x74be00c6), | 418 | PCMCIA_MFC_DEVICE_PROD_ID12(1, "SanDisk", "ConnectPlus", 0x7a954bd9, 0x74be00c6), |
| 419 | PCMCIA_DEVICE_PROD_ID2("Flash Card", 0x5a362506), | ||
| 419 | PCMCIA_DEVICE_NULL, | 420 | PCMCIA_DEVICE_NULL, |
| 420 | }; | 421 | }; |
| 421 | 422 | ||
diff --git a/drivers/ata/pata_sch.c b/drivers/ata/pata_sch.c index c8cc027789fe..6aeeeeb34124 100644 --- a/drivers/ata/pata_sch.c +++ b/drivers/ata/pata_sch.c | |||
| @@ -83,7 +83,7 @@ static struct ata_port_operations sch_pata_ops = { | |||
| 83 | }; | 83 | }; |
| 84 | 84 | ||
| 85 | static struct ata_port_info sch_port_info = { | 85 | static struct ata_port_info sch_port_info = { |
| 86 | .flags = 0, | 86 | .flags = ATA_FLAG_SLAVE_POSS, |
| 87 | .pio_mask = ATA_PIO4, /* pio0-4 */ | 87 | .pio_mask = ATA_PIO4, /* pio0-4 */ |
| 88 | .mwdma_mask = ATA_MWDMA2, /* mwdma0-2 */ | 88 | .mwdma_mask = ATA_MWDMA2, /* mwdma0-2 */ |
| 89 | .udma_mask = ATA_UDMA5, /* udma0-5 */ | 89 | .udma_mask = ATA_UDMA5, /* udma0-5 */ |
diff --git a/drivers/dca/dca-core.c b/drivers/dca/dca-core.c index ec249d2db633..d883e1b8bb8c 100644 --- a/drivers/dca/dca-core.c +++ b/drivers/dca/dca-core.c | |||
| @@ -270,6 +270,6 @@ static void __exit dca_exit(void) | |||
| 270 | dca_sysfs_exit(); | 270 | dca_sysfs_exit(); |
| 271 | } | 271 | } |
| 272 | 272 | ||
| 273 | module_init(dca_init); | 273 | subsys_initcall(dca_init); |
| 274 | module_exit(dca_exit); | 274 | module_exit(dca_exit); |
| 275 | 275 | ||
diff --git a/drivers/dma/ioat_dma.c b/drivers/dma/ioat_dma.c index b0438c4f0c30..ecd743f7cc61 100644 --- a/drivers/dma/ioat_dma.c +++ b/drivers/dma/ioat_dma.c | |||
| @@ -525,7 +525,7 @@ static dma_cookie_t ioat1_tx_submit(struct dma_async_tx_descriptor *tx) | |||
| 525 | } | 525 | } |
| 526 | 526 | ||
| 527 | hw->ctl = IOAT_DMA_DESCRIPTOR_CTL_CP_STS; | 527 | hw->ctl = IOAT_DMA_DESCRIPTOR_CTL_CP_STS; |
| 528 | if (new->async_tx.callback) { | 528 | if (first->async_tx.callback) { |
| 529 | hw->ctl |= IOAT_DMA_DESCRIPTOR_CTL_INT_GN; | 529 | hw->ctl |= IOAT_DMA_DESCRIPTOR_CTL_INT_GN; |
| 530 | if (first != new) { | 530 | if (first != new) { |
| 531 | /* move callback into to last desc */ | 531 | /* move callback into to last desc */ |
| @@ -617,7 +617,7 @@ static dma_cookie_t ioat2_tx_submit(struct dma_async_tx_descriptor *tx) | |||
| 617 | } | 617 | } |
| 618 | 618 | ||
| 619 | hw->ctl |= IOAT_DMA_DESCRIPTOR_CTL_CP_STS; | 619 | hw->ctl |= IOAT_DMA_DESCRIPTOR_CTL_CP_STS; |
| 620 | if (new->async_tx.callback) { | 620 | if (first->async_tx.callback) { |
| 621 | hw->ctl |= IOAT_DMA_DESCRIPTOR_CTL_INT_GN; | 621 | hw->ctl |= IOAT_DMA_DESCRIPTOR_CTL_INT_GN; |
| 622 | if (first != new) { | 622 | if (first != new) { |
| 623 | /* move callback into to last desc */ | 623 | /* move callback into to last desc */ |
| @@ -807,6 +807,12 @@ static void ioat_dma_free_chan_resources(struct dma_chan *chan) | |||
| 807 | struct ioat_desc_sw *desc, *_desc; | 807 | struct ioat_desc_sw *desc, *_desc; |
| 808 | int in_use_descs = 0; | 808 | int in_use_descs = 0; |
| 809 | 809 | ||
| 810 | /* Before freeing channel resources first check | ||
| 811 | * if they have been previously allocated for this channel. | ||
| 812 | */ | ||
| 813 | if (ioat_chan->desccount == 0) | ||
| 814 | return; | ||
| 815 | |||
| 810 | tasklet_disable(&ioat_chan->cleanup_task); | 816 | tasklet_disable(&ioat_chan->cleanup_task); |
| 811 | ioat_dma_memcpy_cleanup(ioat_chan); | 817 | ioat_dma_memcpy_cleanup(ioat_chan); |
| 812 | 818 | ||
| @@ -869,6 +875,7 @@ static void ioat_dma_free_chan_resources(struct dma_chan *chan) | |||
| 869 | ioat_chan->last_completion = ioat_chan->completion_addr = 0; | 875 | ioat_chan->last_completion = ioat_chan->completion_addr = 0; |
| 870 | ioat_chan->pending = 0; | 876 | ioat_chan->pending = 0; |
| 871 | ioat_chan->dmacount = 0; | 877 | ioat_chan->dmacount = 0; |
| 878 | ioat_chan->desccount = 0; | ||
| 872 | ioat_chan->watchdog_completion = 0; | 879 | ioat_chan->watchdog_completion = 0; |
| 873 | ioat_chan->last_compl_desc_addr_hw = 0; | 880 | ioat_chan->last_compl_desc_addr_hw = 0; |
| 874 | ioat_chan->watchdog_tcp_cookie = | 881 | ioat_chan->watchdog_tcp_cookie = |
diff --git a/drivers/dma/iovlock.c b/drivers/dma/iovlock.c index e763d723e4cf..9f6fe46a9b87 100644 --- a/drivers/dma/iovlock.c +++ b/drivers/dma/iovlock.c | |||
| @@ -55,7 +55,6 @@ struct dma_pinned_list *dma_pin_iovec_pages(struct iovec *iov, size_t len) | |||
| 55 | int nr_iovecs = 0; | 55 | int nr_iovecs = 0; |
| 56 | int iovec_len_used = 0; | 56 | int iovec_len_used = 0; |
| 57 | int iovec_pages_used = 0; | 57 | int iovec_pages_used = 0; |
| 58 | long err; | ||
| 59 | 58 | ||
| 60 | /* don't pin down non-user-based iovecs */ | 59 | /* don't pin down non-user-based iovecs */ |
| 61 | if (segment_eq(get_fs(), KERNEL_DS)) | 60 | if (segment_eq(get_fs(), KERNEL_DS)) |
| @@ -72,23 +71,21 @@ struct dma_pinned_list *dma_pin_iovec_pages(struct iovec *iov, size_t len) | |||
| 72 | local_list = kmalloc(sizeof(*local_list) | 71 | local_list = kmalloc(sizeof(*local_list) |
| 73 | + (nr_iovecs * sizeof (struct dma_page_list)) | 72 | + (nr_iovecs * sizeof (struct dma_page_list)) |
| 74 | + (iovec_pages_used * sizeof (struct page*)), GFP_KERNEL); | 73 | + (iovec_pages_used * sizeof (struct page*)), GFP_KERNEL); |
| 75 | if (!local_list) { | 74 | if (!local_list) |
| 76 | err = -ENOMEM; | ||
| 77 | goto out; | 75 | goto out; |
| 78 | } | ||
| 79 | 76 | ||
| 80 | /* list of pages starts right after the page list array */ | 77 | /* list of pages starts right after the page list array */ |
| 81 | pages = (struct page **) &local_list->page_list[nr_iovecs]; | 78 | pages = (struct page **) &local_list->page_list[nr_iovecs]; |
| 82 | 79 | ||
| 80 | local_list->nr_iovecs = 0; | ||
| 81 | |||
| 83 | for (i = 0; i < nr_iovecs; i++) { | 82 | for (i = 0; i < nr_iovecs; i++) { |
| 84 | struct dma_page_list *page_list = &local_list->page_list[i]; | 83 | struct dma_page_list *page_list = &local_list->page_list[i]; |
| 85 | 84 | ||
| 86 | len -= iov[i].iov_len; | 85 | len -= iov[i].iov_len; |
| 87 | 86 | ||
| 88 | if (!access_ok(VERIFY_WRITE, iov[i].iov_base, iov[i].iov_len)) { | 87 | if (!access_ok(VERIFY_WRITE, iov[i].iov_base, iov[i].iov_len)) |
| 89 | err = -EFAULT; | ||
| 90 | goto unpin; | 88 | goto unpin; |
| 91 | } | ||
| 92 | 89 | ||
| 93 | page_list->nr_pages = num_pages_spanned(&iov[i]); | 90 | page_list->nr_pages = num_pages_spanned(&iov[i]); |
| 94 | page_list->base_address = iov[i].iov_base; | 91 | page_list->base_address = iov[i].iov_base; |
| @@ -109,10 +106,8 @@ struct dma_pinned_list *dma_pin_iovec_pages(struct iovec *iov, size_t len) | |||
| 109 | NULL); | 106 | NULL); |
| 110 | up_read(¤t->mm->mmap_sem); | 107 | up_read(¤t->mm->mmap_sem); |
| 111 | 108 | ||
| 112 | if (ret != page_list->nr_pages) { | 109 | if (ret != page_list->nr_pages) |
| 113 | err = -ENOMEM; | ||
| 114 | goto unpin; | 110 | goto unpin; |
| 115 | } | ||
| 116 | 111 | ||
| 117 | local_list->nr_iovecs = i + 1; | 112 | local_list->nr_iovecs = i + 1; |
| 118 | } | 113 | } |
| @@ -122,7 +117,7 @@ struct dma_pinned_list *dma_pin_iovec_pages(struct iovec *iov, size_t len) | |||
| 122 | unpin: | 117 | unpin: |
| 123 | dma_unpin_iovec_pages(local_list); | 118 | dma_unpin_iovec_pages(local_list); |
| 124 | out: | 119 | out: |
| 125 | return ERR_PTR(err); | 120 | return NULL; |
| 126 | } | 121 | } |
| 127 | 122 | ||
| 128 | void dma_unpin_iovec_pages(struct dma_pinned_list *pinned_list) | 123 | void dma_unpin_iovec_pages(struct dma_pinned_list *pinned_list) |
diff --git a/drivers/net/mlx4/en_netdev.c b/drivers/net/mlx4/en_netdev.c index a339afbeed38..a3f732418c49 100644 --- a/drivers/net/mlx4/en_netdev.c +++ b/drivers/net/mlx4/en_netdev.c | |||
| @@ -706,7 +706,7 @@ tx_err: | |||
| 706 | mlx4_en_release_rss_steer(priv); | 706 | mlx4_en_release_rss_steer(priv); |
| 707 | rx_err: | 707 | rx_err: |
| 708 | for (i = 0; i < priv->rx_ring_num; i++) | 708 | for (i = 0; i < priv->rx_ring_num; i++) |
| 709 | mlx4_en_deactivate_rx_ring(priv, &priv->rx_ring[rx_index]); | 709 | mlx4_en_deactivate_rx_ring(priv, &priv->rx_ring[i]); |
| 710 | cq_err: | 710 | cq_err: |
| 711 | while (rx_index--) | 711 | while (rx_index--) |
| 712 | mlx4_en_deactivate_cq(priv, &priv->rx_cq[rx_index]); | 712 | mlx4_en_deactivate_cq(priv, &priv->rx_cq[rx_index]); |
diff --git a/drivers/net/sfc/ethtool.c b/drivers/net/sfc/ethtool.c index fa98af58223e..cd0d0873d978 100644 --- a/drivers/net/sfc/ethtool.c +++ b/drivers/net/sfc/ethtool.c | |||
| @@ -174,8 +174,8 @@ static struct efx_ethtool_stat efx_ethtool_stats[] = { | |||
| 174 | 174 | ||
| 175 | /* EEPROM range with gPXE configuration */ | 175 | /* EEPROM range with gPXE configuration */ |
| 176 | #define EFX_ETHTOOL_EEPROM_MAGIC 0xEFAB | 176 | #define EFX_ETHTOOL_EEPROM_MAGIC 0xEFAB |
| 177 | #define EFX_ETHTOOL_EEPROM_MIN 0x100U | 177 | #define EFX_ETHTOOL_EEPROM_MIN 0x800U |
| 178 | #define EFX_ETHTOOL_EEPROM_MAX 0x400U | 178 | #define EFX_ETHTOOL_EEPROM_MAX 0x1800U |
| 179 | 179 | ||
| 180 | /************************************************************************** | 180 | /************************************************************************** |
| 181 | * | 181 | * |
diff --git a/drivers/net/usb/hso.c b/drivers/net/usb/hso.c index 1164c52e2c0a..8e90891f0e42 100644 --- a/drivers/net/usb/hso.c +++ b/drivers/net/usb/hso.c | |||
| @@ -2184,19 +2184,20 @@ static void hso_create_rfkill(struct hso_device *hso_dev, | |||
| 2184 | struct usb_interface *interface) | 2184 | struct usb_interface *interface) |
| 2185 | { | 2185 | { |
| 2186 | struct hso_net *hso_net = dev2net(hso_dev); | 2186 | struct hso_net *hso_net = dev2net(hso_dev); |
| 2187 | struct device *dev = hso_dev->dev; | 2187 | struct device *dev = &hso_net->net->dev; |
| 2188 | char *rfkn; | 2188 | char *rfkn; |
| 2189 | 2189 | ||
| 2190 | hso_net->rfkill = rfkill_allocate(&interface_to_usbdev(interface)->dev, | 2190 | hso_net->rfkill = rfkill_allocate(&interface_to_usbdev(interface)->dev, |
| 2191 | RFKILL_TYPE_WLAN); | 2191 | RFKILL_TYPE_WWAN); |
| 2192 | if (!hso_net->rfkill) { | 2192 | if (!hso_net->rfkill) { |
| 2193 | dev_err(dev, "%s - Out of memory", __func__); | 2193 | dev_err(dev, "%s - Out of memory\n", __func__); |
| 2194 | return; | 2194 | return; |
| 2195 | } | 2195 | } |
| 2196 | rfkn = kzalloc(20, GFP_KERNEL); | 2196 | rfkn = kzalloc(20, GFP_KERNEL); |
| 2197 | if (!rfkn) { | 2197 | if (!rfkn) { |
| 2198 | rfkill_free(hso_net->rfkill); | 2198 | rfkill_free(hso_net->rfkill); |
| 2199 | dev_err(dev, "%s - Out of memory", __func__); | 2199 | hso_net->rfkill = NULL; |
| 2200 | dev_err(dev, "%s - Out of memory\n", __func__); | ||
| 2200 | return; | 2201 | return; |
| 2201 | } | 2202 | } |
| 2202 | snprintf(rfkn, 20, "hso-%d", | 2203 | snprintf(rfkn, 20, "hso-%d", |
| @@ -2209,7 +2210,8 @@ static void hso_create_rfkill(struct hso_device *hso_dev, | |||
| 2209 | kfree(rfkn); | 2210 | kfree(rfkn); |
| 2210 | hso_net->rfkill->name = NULL; | 2211 | hso_net->rfkill->name = NULL; |
| 2211 | rfkill_free(hso_net->rfkill); | 2212 | rfkill_free(hso_net->rfkill); |
| 2212 | dev_err(dev, "%s - Failed to register rfkill", __func__); | 2213 | hso_net->rfkill = NULL; |
| 2214 | dev_err(dev, "%s - Failed to register rfkill\n", __func__); | ||
| 2213 | return; | 2215 | return; |
| 2214 | } | 2216 | } |
| 2215 | } | 2217 | } |
diff --git a/drivers/ssb/Kconfig b/drivers/ssb/Kconfig index 307b1f62d949..b1b947edcf01 100644 --- a/drivers/ssb/Kconfig +++ b/drivers/ssb/Kconfig | |||
| @@ -1,10 +1,11 @@ | |||
| 1 | menu "Sonics Silicon Backplane" | ||
| 2 | |||
| 3 | config SSB_POSSIBLE | 1 | config SSB_POSSIBLE |
| 4 | bool | 2 | bool |
| 5 | depends on HAS_IOMEM && HAS_DMA | 3 | depends on HAS_IOMEM && HAS_DMA |
| 6 | default y | 4 | default y |
| 7 | 5 | ||
| 6 | menu "Sonics Silicon Backplane" | ||
| 7 | depends on SSB_POSSIBLE | ||
| 8 | |||
| 8 | config SSB | 9 | config SSB |
| 9 | tristate "Sonics Silicon Backplane support" | 10 | tristate "Sonics Silicon Backplane support" |
| 10 | depends on SSB_POSSIBLE | 11 | depends on SSB_POSSIBLE |
diff --git a/include/linux/ssb/ssb.h b/include/linux/ssb/ssb.h index e530026eedf7..17d9b58f6379 100644 --- a/include/linux/ssb/ssb.h +++ b/include/linux/ssb/ssb.h | |||
| @@ -427,12 +427,16 @@ static inline int ssb_dma_mapping_error(struct ssb_device *dev, dma_addr_t addr) | |||
| 427 | { | 427 | { |
| 428 | switch (dev->bus->bustype) { | 428 | switch (dev->bus->bustype) { |
| 429 | case SSB_BUSTYPE_PCI: | 429 | case SSB_BUSTYPE_PCI: |
| 430 | #ifdef CONFIG_SSB_PCIHOST | ||
| 430 | return pci_dma_mapping_error(dev->bus->host_pci, addr); | 431 | return pci_dma_mapping_error(dev->bus->host_pci, addr); |
| 432 | #endif | ||
| 433 | break; | ||
| 431 | case SSB_BUSTYPE_SSB: | 434 | case SSB_BUSTYPE_SSB: |
| 432 | return dma_mapping_error(dev->dev, addr); | 435 | return dma_mapping_error(dev->dev, addr); |
| 433 | default: | 436 | default: |
| 434 | __ssb_dma_not_implemented(dev); | 437 | break; |
| 435 | } | 438 | } |
| 439 | __ssb_dma_not_implemented(dev); | ||
| 436 | return -ENOSYS; | 440 | return -ENOSYS; |
| 437 | } | 441 | } |
| 438 | 442 | ||
| @@ -441,12 +445,16 @@ static inline dma_addr_t ssb_dma_map_single(struct ssb_device *dev, void *p, | |||
| 441 | { | 445 | { |
| 442 | switch (dev->bus->bustype) { | 446 | switch (dev->bus->bustype) { |
| 443 | case SSB_BUSTYPE_PCI: | 447 | case SSB_BUSTYPE_PCI: |
| 448 | #ifdef CONFIG_SSB_PCIHOST | ||
| 444 | return pci_map_single(dev->bus->host_pci, p, size, dir); | 449 | return pci_map_single(dev->bus->host_pci, p, size, dir); |
| 450 | #endif | ||
| 451 | break; | ||
| 445 | case SSB_BUSTYPE_SSB: | 452 | case SSB_BUSTYPE_SSB: |
| 446 | return dma_map_single(dev->dev, p, size, dir); | 453 | return dma_map_single(dev->dev, p, size, dir); |
| 447 | default: | 454 | default: |
| 448 | __ssb_dma_not_implemented(dev); | 455 | break; |
| 449 | } | 456 | } |
| 457 | __ssb_dma_not_implemented(dev); | ||
| 450 | return 0; | 458 | return 0; |
| 451 | } | 459 | } |
| 452 | 460 | ||
| @@ -455,14 +463,18 @@ static inline void ssb_dma_unmap_single(struct ssb_device *dev, dma_addr_t dma_a | |||
| 455 | { | 463 | { |
| 456 | switch (dev->bus->bustype) { | 464 | switch (dev->bus->bustype) { |
| 457 | case SSB_BUSTYPE_PCI: | 465 | case SSB_BUSTYPE_PCI: |
| 466 | #ifdef CONFIG_SSB_PCIHOST | ||
| 458 | pci_unmap_single(dev->bus->host_pci, dma_addr, size, dir); | 467 | pci_unmap_single(dev->bus->host_pci, dma_addr, size, dir); |
| 459 | return; | 468 | return; |
| 469 | #endif | ||
| 470 | break; | ||
| 460 | case SSB_BUSTYPE_SSB: | 471 | case SSB_BUSTYPE_SSB: |
| 461 | dma_unmap_single(dev->dev, dma_addr, size, dir); | 472 | dma_unmap_single(dev->dev, dma_addr, size, dir); |
| 462 | return; | 473 | return; |
| 463 | default: | 474 | default: |
| 464 | __ssb_dma_not_implemented(dev); | 475 | break; |
| 465 | } | 476 | } |
| 477 | __ssb_dma_not_implemented(dev); | ||
| 466 | } | 478 | } |
| 467 | 479 | ||
| 468 | static inline void ssb_dma_sync_single_for_cpu(struct ssb_device *dev, | 480 | static inline void ssb_dma_sync_single_for_cpu(struct ssb_device *dev, |
| @@ -472,15 +484,19 @@ static inline void ssb_dma_sync_single_for_cpu(struct ssb_device *dev, | |||
| 472 | { | 484 | { |
| 473 | switch (dev->bus->bustype) { | 485 | switch (dev->bus->bustype) { |
| 474 | case SSB_BUSTYPE_PCI: | 486 | case SSB_BUSTYPE_PCI: |
| 487 | #ifdef CONFIG_SSB_PCIHOST | ||
| 475 | pci_dma_sync_single_for_cpu(dev->bus->host_pci, dma_addr, | 488 | pci_dma_sync_single_for_cpu(dev->bus->host_pci, dma_addr, |
| 476 | size, dir); | 489 | size, dir); |
| 477 | return; | 490 | return; |
| 491 | #endif | ||
| 492 | break; | ||
| 478 | case SSB_BUSTYPE_SSB: | 493 | case SSB_BUSTYPE_SSB: |
| 479 | dma_sync_single_for_cpu(dev->dev, dma_addr, size, dir); | 494 | dma_sync_single_for_cpu(dev->dev, dma_addr, size, dir); |
| 480 | return; | 495 | return; |
| 481 | default: | 496 | default: |
| 482 | __ssb_dma_not_implemented(dev); | 497 | break; |
| 483 | } | 498 | } |
| 499 | __ssb_dma_not_implemented(dev); | ||
| 484 | } | 500 | } |
| 485 | 501 | ||
| 486 | static inline void ssb_dma_sync_single_for_device(struct ssb_device *dev, | 502 | static inline void ssb_dma_sync_single_for_device(struct ssb_device *dev, |
| @@ -490,15 +506,19 @@ static inline void ssb_dma_sync_single_for_device(struct ssb_device *dev, | |||
| 490 | { | 506 | { |
| 491 | switch (dev->bus->bustype) { | 507 | switch (dev->bus->bustype) { |
| 492 | case SSB_BUSTYPE_PCI: | 508 | case SSB_BUSTYPE_PCI: |
| 509 | #ifdef CONFIG_SSB_PCIHOST | ||
| 493 | pci_dma_sync_single_for_device(dev->bus->host_pci, dma_addr, | 510 | pci_dma_sync_single_for_device(dev->bus->host_pci, dma_addr, |
| 494 | size, dir); | 511 | size, dir); |
| 495 | return; | 512 | return; |
| 513 | #endif | ||
| 514 | break; | ||
| 496 | case SSB_BUSTYPE_SSB: | 515 | case SSB_BUSTYPE_SSB: |
| 497 | dma_sync_single_for_device(dev->dev, dma_addr, size, dir); | 516 | dma_sync_single_for_device(dev->dev, dma_addr, size, dir); |
| 498 | return; | 517 | return; |
| 499 | default: | 518 | default: |
| 500 | __ssb_dma_not_implemented(dev); | 519 | break; |
| 501 | } | 520 | } |
| 521 | __ssb_dma_not_implemented(dev); | ||
| 502 | } | 522 | } |
| 503 | 523 | ||
| 504 | static inline void ssb_dma_sync_single_range_for_cpu(struct ssb_device *dev, | 524 | static inline void ssb_dma_sync_single_range_for_cpu(struct ssb_device *dev, |
| @@ -509,17 +529,21 @@ static inline void ssb_dma_sync_single_range_for_cpu(struct ssb_device *dev, | |||
| 509 | { | 529 | { |
| 510 | switch (dev->bus->bustype) { | 530 | switch (dev->bus->bustype) { |
| 511 | case SSB_BUSTYPE_PCI: | 531 | case SSB_BUSTYPE_PCI: |
| 532 | #ifdef CONFIG_SSB_PCIHOST | ||
| 512 | /* Just sync everything. That's all the PCI API can do. */ | 533 | /* Just sync everything. That's all the PCI API can do. */ |
| 513 | pci_dma_sync_single_for_cpu(dev->bus->host_pci, dma_addr, | 534 | pci_dma_sync_single_for_cpu(dev->bus->host_pci, dma_addr, |
| 514 | offset + size, dir); | 535 | offset + size, dir); |
| 515 | return; | 536 | return; |
| 537 | #endif | ||
| 538 | break; | ||
| 516 | case SSB_BUSTYPE_SSB: | 539 | case SSB_BUSTYPE_SSB: |
| 517 | dma_sync_single_range_for_cpu(dev->dev, dma_addr, offset, | 540 | dma_sync_single_range_for_cpu(dev->dev, dma_addr, offset, |
| 518 | size, dir); | 541 | size, dir); |
| 519 | return; | 542 | return; |
| 520 | default: | 543 | default: |
| 521 | __ssb_dma_not_implemented(dev); | 544 | break; |
| 522 | } | 545 | } |
| 546 | __ssb_dma_not_implemented(dev); | ||
| 523 | } | 547 | } |
| 524 | 548 | ||
| 525 | static inline void ssb_dma_sync_single_range_for_device(struct ssb_device *dev, | 549 | static inline void ssb_dma_sync_single_range_for_device(struct ssb_device *dev, |
| @@ -530,17 +554,21 @@ static inline void ssb_dma_sync_single_range_for_device(struct ssb_device *dev, | |||
| 530 | { | 554 | { |
| 531 | switch (dev->bus->bustype) { | 555 | switch (dev->bus->bustype) { |
| 532 | case SSB_BUSTYPE_PCI: | 556 | case SSB_BUSTYPE_PCI: |
| 557 | #ifdef CONFIG_SSB_PCIHOST | ||
| 533 | /* Just sync everything. That's all the PCI API can do. */ | 558 | /* Just sync everything. That's all the PCI API can do. */ |
| 534 | pci_dma_sync_single_for_device(dev->bus->host_pci, dma_addr, | 559 | pci_dma_sync_single_for_device(dev->bus->host_pci, dma_addr, |
| 535 | offset + size, dir); | 560 | offset + size, dir); |
| 536 | return; | 561 | return; |
| 562 | #endif | ||
| 563 | break; | ||
| 537 | case SSB_BUSTYPE_SSB: | 564 | case SSB_BUSTYPE_SSB: |
| 538 | dma_sync_single_range_for_device(dev->dev, dma_addr, offset, | 565 | dma_sync_single_range_for_device(dev->dev, dma_addr, offset, |
| 539 | size, dir); | 566 | size, dir); |
| 540 | return; | 567 | return; |
| 541 | default: | 568 | default: |
| 542 | __ssb_dma_not_implemented(dev); | 569 | break; |
| 543 | } | 570 | } |
| 571 | __ssb_dma_not_implemented(dev); | ||
| 544 | } | 572 | } |
| 545 | 573 | ||
| 546 | 574 | ||
diff --git a/net/8021q/vlanproc.c b/net/8021q/vlanproc.c index 0feefa4e1a4b..3628e0a81b40 100644 --- a/net/8021q/vlanproc.c +++ b/net/8021q/vlanproc.c | |||
| @@ -314,7 +314,7 @@ static int vlandev_seq_show(struct seq_file *seq, void *offset) | |||
| 314 | dev_info->ingress_priority_map[6], | 314 | dev_info->ingress_priority_map[6], |
| 315 | dev_info->ingress_priority_map[7]); | 315 | dev_info->ingress_priority_map[7]); |
| 316 | 316 | ||
| 317 | seq_printf(seq, "EGRESSS priority Mappings: "); | 317 | seq_printf(seq, " EGRESS priority mappings: "); |
| 318 | for (i = 0; i < 16; i++) { | 318 | for (i = 0; i < 16; i++) { |
| 319 | const struct vlan_priority_tci_mapping *mp | 319 | const struct vlan_priority_tci_mapping *mp |
| 320 | = dev_info->egress_priority_map[i]; | 320 | = dev_info->egress_priority_map[i]; |
diff --git a/net/core/skbuff.c b/net/core/skbuff.c index ebb6b94f8af2..d49ef8301b5b 100644 --- a/net/core/skbuff.c +++ b/net/core/skbuff.c | |||
| @@ -486,8 +486,8 @@ int skb_recycle_check(struct sk_buff *skb, int skb_size) | |||
| 486 | shinfo->frag_list = NULL; | 486 | shinfo->frag_list = NULL; |
| 487 | 487 | ||
| 488 | memset(skb, 0, offsetof(struct sk_buff, tail)); | 488 | memset(skb, 0, offsetof(struct sk_buff, tail)); |
| 489 | skb_reset_tail_pointer(skb); | ||
| 490 | skb->data = skb->head + NET_SKB_PAD; | 489 | skb->data = skb->head + NET_SKB_PAD; |
| 490 | skb_reset_tail_pointer(skb); | ||
| 491 | 491 | ||
| 492 | return 1; | 492 | return 1; |
| 493 | } | 493 | } |
diff --git a/net/dsa/slave.c b/net/dsa/slave.c index 37616884b8a9..1af5a79309e9 100644 --- a/net/dsa/slave.c +++ b/net/dsa/slave.c | |||
| @@ -10,6 +10,7 @@ | |||
| 10 | 10 | ||
| 11 | #include <linux/list.h> | 11 | #include <linux/list.h> |
| 12 | #include <linux/netdevice.h> | 12 | #include <linux/netdevice.h> |
| 13 | #include <linux/etherdevice.h> | ||
| 13 | #include <linux/phy.h> | 14 | #include <linux/phy.h> |
| 14 | #include "dsa_priv.h" | 15 | #include "dsa_priv.h" |
| 15 | 16 | ||
| @@ -49,11 +50,57 @@ void dsa_slave_mii_bus_init(struct dsa_switch *ds) | |||
| 49 | /* slave device handling ****************************************************/ | 50 | /* slave device handling ****************************************************/ |
| 50 | static int dsa_slave_open(struct net_device *dev) | 51 | static int dsa_slave_open(struct net_device *dev) |
| 51 | { | 52 | { |
| 53 | struct dsa_slave_priv *p = netdev_priv(dev); | ||
| 54 | struct net_device *master = p->parent->master_netdev; | ||
| 55 | int err; | ||
| 56 | |||
| 57 | if (!(master->flags & IFF_UP)) | ||
| 58 | return -ENETDOWN; | ||
| 59 | |||
| 60 | if (compare_ether_addr(dev->dev_addr, master->dev_addr)) { | ||
| 61 | err = dev_unicast_add(master, dev->dev_addr, ETH_ALEN); | ||
| 62 | if (err < 0) | ||
| 63 | goto out; | ||
| 64 | } | ||
| 65 | |||
| 66 | if (dev->flags & IFF_ALLMULTI) { | ||
| 67 | err = dev_set_allmulti(master, 1); | ||
| 68 | if (err < 0) | ||
| 69 | goto del_unicast; | ||
| 70 | } | ||
| 71 | if (dev->flags & IFF_PROMISC) { | ||
| 72 | err = dev_set_promiscuity(master, 1); | ||
| 73 | if (err < 0) | ||
| 74 | goto clear_allmulti; | ||
| 75 | } | ||
| 76 | |||
| 52 | return 0; | 77 | return 0; |
| 78 | |||
| 79 | clear_allmulti: | ||
| 80 | if (dev->flags & IFF_ALLMULTI) | ||
| 81 | dev_set_allmulti(master, -1); | ||
| 82 | del_unicast: | ||
| 83 | if (compare_ether_addr(dev->dev_addr, master->dev_addr)) | ||
| 84 | dev_unicast_delete(master, dev->dev_addr, ETH_ALEN); | ||
| 85 | out: | ||
| 86 | return err; | ||
| 53 | } | 87 | } |
| 54 | 88 | ||
| 55 | static int dsa_slave_close(struct net_device *dev) | 89 | static int dsa_slave_close(struct net_device *dev) |
| 56 | { | 90 | { |
| 91 | struct dsa_slave_priv *p = netdev_priv(dev); | ||
| 92 | struct net_device *master = p->parent->master_netdev; | ||
| 93 | |||
| 94 | dev_mc_unsync(master, dev); | ||
| 95 | dev_unicast_unsync(master, dev); | ||
| 96 | if (dev->flags & IFF_ALLMULTI) | ||
| 97 | dev_set_allmulti(master, -1); | ||
| 98 | if (dev->flags & IFF_PROMISC) | ||
| 99 | dev_set_promiscuity(master, -1); | ||
| 100 | |||
| 101 | if (compare_ether_addr(dev->dev_addr, master->dev_addr)) | ||
| 102 | dev_unicast_delete(master, dev->dev_addr, ETH_ALEN); | ||
| 103 | |||
| 57 | return 0; | 104 | return 0; |
| 58 | } | 105 | } |
| 59 | 106 | ||
| @@ -77,9 +124,30 @@ static void dsa_slave_set_rx_mode(struct net_device *dev) | |||
| 77 | dev_unicast_sync(master, dev); | 124 | dev_unicast_sync(master, dev); |
| 78 | } | 125 | } |
| 79 | 126 | ||
| 80 | static int dsa_slave_set_mac_address(struct net_device *dev, void *addr) | 127 | static int dsa_slave_set_mac_address(struct net_device *dev, void *a) |
| 81 | { | 128 | { |
| 82 | memcpy(dev->dev_addr, addr + 2, 6); | 129 | struct dsa_slave_priv *p = netdev_priv(dev); |
| 130 | struct net_device *master = p->parent->master_netdev; | ||
| 131 | struct sockaddr *addr = a; | ||
| 132 | int err; | ||
| 133 | |||
| 134 | if (!is_valid_ether_addr(addr->sa_data)) | ||
| 135 | return -EADDRNOTAVAIL; | ||
| 136 | |||
| 137 | if (!(dev->flags & IFF_UP)) | ||
| 138 | goto out; | ||
| 139 | |||
| 140 | if (compare_ether_addr(addr->sa_data, master->dev_addr)) { | ||
| 141 | err = dev_unicast_add(master, addr->sa_data, ETH_ALEN); | ||
| 142 | if (err < 0) | ||
| 143 | return err; | ||
| 144 | } | ||
| 145 | |||
| 146 | if (compare_ether_addr(dev->dev_addr, master->dev_addr)) | ||
| 147 | dev_unicast_delete(master, dev->dev_addr, ETH_ALEN); | ||
| 148 | |||
| 149 | out: | ||
| 150 | memcpy(dev->dev_addr, addr->sa_data, ETH_ALEN); | ||
| 83 | 151 | ||
| 84 | return 0; | 152 | return 0; |
| 85 | } | 153 | } |
diff --git a/net/dsa/tag_dsa.c b/net/dsa/tag_dsa.c index bdc0510b53b7..31866543332e 100644 --- a/net/dsa/tag_dsa.c +++ b/net/dsa/tag_dsa.c | |||
| @@ -159,6 +159,7 @@ static int dsa_rcv(struct sk_buff *skb, struct net_device *dev, | |||
| 159 | 159 | ||
| 160 | skb->dev = ds->ports[source_port]; | 160 | skb->dev = ds->ports[source_port]; |
| 161 | skb_push(skb, ETH_HLEN); | 161 | skb_push(skb, ETH_HLEN); |
| 162 | skb->pkt_type = PACKET_HOST; | ||
| 162 | skb->protocol = eth_type_trans(skb, skb->dev); | 163 | skb->protocol = eth_type_trans(skb, skb->dev); |
| 163 | 164 | ||
| 164 | skb->dev->last_rx = jiffies; | 165 | skb->dev->last_rx = jiffies; |
diff --git a/net/dsa/tag_edsa.c b/net/dsa/tag_edsa.c index f985ea993843..9f4ce55eae59 100644 --- a/net/dsa/tag_edsa.c +++ b/net/dsa/tag_edsa.c | |||
| @@ -178,6 +178,7 @@ static int edsa_rcv(struct sk_buff *skb, struct net_device *dev, | |||
| 178 | 178 | ||
| 179 | skb->dev = ds->ports[source_port]; | 179 | skb->dev = ds->ports[source_port]; |
| 180 | skb_push(skb, ETH_HLEN); | 180 | skb_push(skb, ETH_HLEN); |
| 181 | skb->pkt_type = PACKET_HOST; | ||
| 181 | skb->protocol = eth_type_trans(skb, skb->dev); | 182 | skb->protocol = eth_type_trans(skb, skb->dev); |
| 182 | 183 | ||
| 183 | skb->dev->last_rx = jiffies; | 184 | skb->dev->last_rx = jiffies; |
diff --git a/net/dsa/tag_trailer.c b/net/dsa/tag_trailer.c index d3117764b2c2..efd26697e716 100644 --- a/net/dsa/tag_trailer.c +++ b/net/dsa/tag_trailer.c | |||
| @@ -95,6 +95,7 @@ static int trailer_rcv(struct sk_buff *skb, struct net_device *dev, | |||
| 95 | 95 | ||
| 96 | skb->dev = ds->ports[source_port]; | 96 | skb->dev = ds->ports[source_port]; |
| 97 | skb_push(skb, ETH_HLEN); | 97 | skb_push(skb, ETH_HLEN); |
| 98 | skb->pkt_type = PACKET_HOST; | ||
| 98 | skb->protocol = eth_type_trans(skb, skb->dev); | 99 | skb->protocol = eth_type_trans(skb, skb->dev); |
| 99 | 100 | ||
| 100 | skb->dev->last_rx = jiffies; | 101 | skb->dev->last_rx = jiffies; |
diff --git a/net/ipv4/proc.c b/net/ipv4/proc.c index 8f5a403f6f6b..a631a1f110ca 100644 --- a/net/ipv4/proc.c +++ b/net/ipv4/proc.c | |||
| @@ -237,43 +237,45 @@ static const struct snmp_mib snmp4_net_list[] = { | |||
| 237 | SNMP_MIB_SENTINEL | 237 | SNMP_MIB_SENTINEL |
| 238 | }; | 238 | }; |
| 239 | 239 | ||
| 240 | static void icmpmsg_put_line(struct seq_file *seq, unsigned long *vals, | ||
| 241 | unsigned short *type, int count) | ||
| 242 | { | ||
| 243 | int j; | ||
| 244 | |||
| 245 | if (count) { | ||
| 246 | seq_printf(seq, "\nIcmpMsg:"); | ||
| 247 | for (j = 0; j < count; ++j) | ||
| 248 | seq_printf(seq, " %sType%u", | ||
| 249 | type[j] & 0x100 ? "Out" : "In", | ||
| 250 | type[j] & 0xff); | ||
| 251 | seq_printf(seq, "\nIcmpMsg:"); | ||
| 252 | for (j = 0; j < count; ++j) | ||
| 253 | seq_printf(seq, " %lu", vals[j]); | ||
| 254 | } | ||
| 255 | } | ||
| 256 | |||
| 240 | static void icmpmsg_put(struct seq_file *seq) | 257 | static void icmpmsg_put(struct seq_file *seq) |
| 241 | { | 258 | { |
| 242 | #define PERLINE 16 | 259 | #define PERLINE 16 |
| 243 | 260 | ||
| 244 | int j, i, count; | 261 | int i, count; |
| 245 | static int out[PERLINE]; | 262 | unsigned short type[PERLINE]; |
| 263 | unsigned long vals[PERLINE], val; | ||
| 246 | struct net *net = seq->private; | 264 | struct net *net = seq->private; |
| 247 | 265 | ||
| 248 | count = 0; | 266 | count = 0; |
| 249 | for (i = 0; i < ICMPMSG_MIB_MAX; i++) { | 267 | for (i = 0; i < ICMPMSG_MIB_MAX; i++) { |
| 250 | 268 | val = snmp_fold_field((void **) net->mib.icmpmsg_statistics, i); | |
| 251 | if (snmp_fold_field((void **) net->mib.icmpmsg_statistics, i)) | 269 | if (val) { |
| 252 | out[count++] = i; | 270 | type[count] = i; |
| 253 | if (count < PERLINE) | 271 | vals[count++] = val; |
| 254 | continue; | 272 | } |
| 255 | 273 | if (count == PERLINE) { | |
| 256 | seq_printf(seq, "\nIcmpMsg:"); | 274 | icmpmsg_put_line(seq, vals, type, count); |
| 257 | for (j = 0; j < PERLINE; ++j) | 275 | count = 0; |
| 258 | seq_printf(seq, " %sType%u", i & 0x100 ? "Out" : "In", | 276 | } |
| 259 | i & 0xff); | ||
| 260 | seq_printf(seq, "\nIcmpMsg: "); | ||
| 261 | for (j = 0; j < PERLINE; ++j) | ||
| 262 | seq_printf(seq, " %lu", | ||
| 263 | snmp_fold_field((void **) net->mib.icmpmsg_statistics, | ||
| 264 | out[j])); | ||
| 265 | seq_putc(seq, '\n'); | ||
| 266 | } | ||
| 267 | if (count) { | ||
| 268 | seq_printf(seq, "\nIcmpMsg:"); | ||
| 269 | for (j = 0; j < count; ++j) | ||
| 270 | seq_printf(seq, " %sType%u", out[j] & 0x100 ? "Out" : | ||
| 271 | "In", out[j] & 0xff); | ||
| 272 | seq_printf(seq, "\nIcmpMsg:"); | ||
| 273 | for (j = 0; j < count; ++j) | ||
| 274 | seq_printf(seq, " %lu", snmp_fold_field((void **) | ||
| 275 | net->mib.icmpmsg_statistics, out[j])); | ||
| 276 | } | 277 | } |
| 278 | icmpmsg_put_line(seq, vals, type, count); | ||
| 277 | 279 | ||
| 278 | #undef PERLINE | 280 | #undef PERLINE |
| 279 | } | 281 | } |
diff --git a/net/ipv6/ip6mr.c b/net/ipv6/ip6mr.c index 182f8a177e7f..52a7eb0e2c2c 100644 --- a/net/ipv6/ip6mr.c +++ b/net/ipv6/ip6mr.c | |||
| @@ -981,14 +981,15 @@ int __init ip6_mr_init(void) | |||
| 981 | goto proc_cache_fail; | 981 | goto proc_cache_fail; |
| 982 | #endif | 982 | #endif |
| 983 | return 0; | 983 | return 0; |
| 984 | reg_notif_fail: | ||
| 985 | kmem_cache_destroy(mrt_cachep); | ||
| 986 | #ifdef CONFIG_PROC_FS | 984 | #ifdef CONFIG_PROC_FS |
| 987 | proc_vif_fail: | ||
| 988 | unregister_netdevice_notifier(&ip6_mr_notifier); | ||
| 989 | proc_cache_fail: | 985 | proc_cache_fail: |
| 990 | proc_net_remove(&init_net, "ip6_mr_vif"); | 986 | proc_net_remove(&init_net, "ip6_mr_vif"); |
| 987 | proc_vif_fail: | ||
| 988 | unregister_netdevice_notifier(&ip6_mr_notifier); | ||
| 991 | #endif | 989 | #endif |
| 990 | reg_notif_fail: | ||
| 991 | del_timer(&ipmr_expire_timer); | ||
| 992 | kmem_cache_destroy(mrt_cachep); | ||
| 992 | return err; | 993 | return err; |
| 993 | } | 994 | } |
| 994 | 995 | ||
diff --git a/net/key/af_key.c b/net/key/af_key.c index 3440a4637f01..5b22e011653b 100644 --- a/net/key/af_key.c +++ b/net/key/af_key.c | |||
| @@ -3188,6 +3188,7 @@ static struct xfrm_policy *pfkey_compile_policy(struct sock *sk, int opt, | |||
| 3188 | return xp; | 3188 | return xp; |
| 3189 | 3189 | ||
| 3190 | out: | 3190 | out: |
| 3191 | xp->walk.dead = 1; | ||
| 3191 | xfrm_policy_destroy(xp); | 3192 | xfrm_policy_destroy(xp); |
| 3192 | return NULL; | 3193 | return NULL; |
| 3193 | } | 3194 | } |
diff --git a/net/mac80211/debugfs_sta.c b/net/mac80211/debugfs_sta.c index 189d0bafa91a..b85c4f27b361 100644 --- a/net/mac80211/debugfs_sta.c +++ b/net/mac80211/debugfs_sta.c | |||
| @@ -199,7 +199,7 @@ static ssize_t sta_agg_status_write(struct file *file, | |||
| 199 | /* toggle Rx aggregation command */ | 199 | /* toggle Rx aggregation command */ |
| 200 | tid_num = tid_num - 100; | 200 | tid_num = tid_num - 100; |
| 201 | if (tid_static_rx[tid_num] == 1) { | 201 | if (tid_static_rx[tid_num] == 1) { |
| 202 | strcpy(state, "off "); | 202 | strcpy(state, "off"); |
| 203 | ieee80211_sta_stop_rx_ba_session(sta->sdata, da, tid_num, 0, | 203 | ieee80211_sta_stop_rx_ba_session(sta->sdata, da, tid_num, 0, |
| 204 | WLAN_REASON_QSTA_REQUIRE_SETUP); | 204 | WLAN_REASON_QSTA_REQUIRE_SETUP); |
| 205 | sta->ampdu_mlme.tid_state_rx[tid_num] |= | 205 | sta->ampdu_mlme.tid_state_rx[tid_num] |= |
diff --git a/net/netfilter/ipvs/ip_vs_xmit.c b/net/netfilter/ipvs/ip_vs_xmit.c index 02ddc2b3ce2e..e90d52f199bc 100644 --- a/net/netfilter/ipvs/ip_vs_xmit.c +++ b/net/netfilter/ipvs/ip_vs_xmit.c | |||
| @@ -713,7 +713,8 @@ ip_vs_tunnel_xmit_v6(struct sk_buff *skb, struct ip_vs_conn *cp, | |||
| 713 | iph = ipv6_hdr(skb); | 713 | iph = ipv6_hdr(skb); |
| 714 | iph->version = 6; | 714 | iph->version = 6; |
| 715 | iph->nexthdr = IPPROTO_IPV6; | 715 | iph->nexthdr = IPPROTO_IPV6; |
| 716 | iph->payload_len = old_iph->payload_len + sizeof(old_iph); | 716 | iph->payload_len = old_iph->payload_len; |
| 717 | be16_add_cpu(&iph->payload_len, sizeof(*old_iph)); | ||
| 717 | iph->priority = old_iph->priority; | 718 | iph->priority = old_iph->priority; |
| 718 | memset(&iph->flow_lbl, 0, sizeof(iph->flow_lbl)); | 719 | memset(&iph->flow_lbl, 0, sizeof(iph->flow_lbl)); |
| 719 | iph->daddr = rt->rt6i_dst.addr; | 720 | iph->daddr = rt->rt6i_dst.addr; |
diff --git a/security/keys/internal.h b/security/keys/internal.h index b39f5c2e2c4b..239098f0fd76 100644 --- a/security/keys/internal.h +++ b/security/keys/internal.h | |||
| @@ -107,6 +107,7 @@ extern key_ref_t search_process_keyrings(struct key_type *type, | |||
| 107 | 107 | ||
| 108 | extern struct key *find_keyring_by_name(const char *name, bool skip_perm_check); | 108 | extern struct key *find_keyring_by_name(const char *name, bool skip_perm_check); |
| 109 | 109 | ||
| 110 | extern int install_user_keyrings(struct task_struct *tsk); | ||
| 110 | extern int install_thread_keyring(struct task_struct *tsk); | 111 | extern int install_thread_keyring(struct task_struct *tsk); |
| 111 | extern int install_process_keyring(struct task_struct *tsk); | 112 | extern int install_process_keyring(struct task_struct *tsk); |
| 112 | 113 | ||
diff --git a/security/keys/process_keys.c b/security/keys/process_keys.c index 5be6d018759a..45b240af6dbe 100644 --- a/security/keys/process_keys.c +++ b/security/keys/process_keys.c | |||
| @@ -40,7 +40,7 @@ struct key_user root_key_user = { | |||
| 40 | /* | 40 | /* |
| 41 | * install user and user session keyrings for a particular UID | 41 | * install user and user session keyrings for a particular UID |
| 42 | */ | 42 | */ |
| 43 | static int install_user_keyrings(struct task_struct *tsk) | 43 | int install_user_keyrings(struct task_struct *tsk) |
| 44 | { | 44 | { |
| 45 | struct user_struct *user = tsk->user; | 45 | struct user_struct *user = tsk->user; |
| 46 | struct key *uid_keyring, *session_keyring; | 46 | struct key *uid_keyring, *session_keyring; |
diff --git a/security/keys/request_key.c b/security/keys/request_key.c index ba32ca6469bd..abea08f87fe2 100644 --- a/security/keys/request_key.c +++ b/security/keys/request_key.c | |||
| @@ -74,6 +74,10 @@ static int call_sbin_request_key(struct key_construction *cons, | |||
| 74 | 74 | ||
| 75 | kenter("{%d},{%d},%s", key->serial, authkey->serial, op); | 75 | kenter("{%d},{%d},%s", key->serial, authkey->serial, op); |
| 76 | 76 | ||
| 77 | ret = install_user_keyrings(tsk); | ||
| 78 | if (ret < 0) | ||
| 79 | goto error_alloc; | ||
| 80 | |||
| 77 | /* allocate a new session keyring */ | 81 | /* allocate a new session keyring */ |
| 78 | sprintf(desc, "_req.%u", key->serial); | 82 | sprintf(desc, "_req.%u", key->serial); |
| 79 | 83 | ||
