diff options
-rw-r--r-- | freed-ora/current/f17/TODO | 1 | ||||
-rw-r--r-- | freed-ora/current/f17/config-arm-generic | 61 | ||||
-rw-r--r-- | freed-ora/current/f17/config-arm-highbank | 6 | ||||
-rw-r--r-- | freed-ora/current/f17/config-arm-imx | 4 | ||||
-rw-r--r-- | freed-ora/current/f17/config-arm-kirkwood | 5 | ||||
-rw-r--r-- | freed-ora/current/f17/config-arm-omap | 2 | ||||
-rw-r--r-- | freed-ora/current/f17/config-arm-tegra | 8 | ||||
-rw-r--r-- | freed-ora/current/f17/config-powerpc64 | 4 | ||||
-rw-r--r-- | freed-ora/current/f17/config-x86-32-generic | 3 | ||||
-rw-r--r-- | freed-ora/current/f17/dl2k-Clean-up-rio_ioctl.patch | 120 | ||||
-rw-r--r-- | freed-ora/current/f17/dvbs-fix-zigzag.patch | 15 | ||||
-rw-r--r-- | freed-ora/current/f17/kernel.spec | 36 | ||||
-rw-r--r-- | freed-ora/current/f17/patch-3.3-gnu-3.3.6-gnu.xz.sign | 7 | ||||
-rw-r--r-- | freed-ora/current/f17/patch-3.3-gnu-3.3.7-gnu.xz.sign | 7 | ||||
-rw-r--r-- | freed-ora/current/f17/rtlwifi-fix-for-race-condition-when-firmware-is-cach.patch | 86 | ||||
-rw-r--r-- | freed-ora/current/f17/sources | 2 |
16 files changed, 189 insertions, 178 deletions
diff --git a/freed-ora/current/f17/TODO b/freed-ora/current/f17/TODO index 652000ee2..872876078 100644 --- a/freed-ora/current/f17/TODO +++ b/freed-ora/current/f17/TODO @@ -1,5 +1,6 @@ Config TODOs: * review & disable a bunch of the I2C, RTC, DVB, SOUND options. +* Re-enable CONFIG_RELOCATABLE for 32bit builds with 3.4 Spec file TODOs: diff --git a/freed-ora/current/f17/config-arm-generic b/freed-ora/current/f17/config-arm-generic index 5373603fd..da4830a7d 100644 --- a/freed-ora/current/f17/config-arm-generic +++ b/freed-ora/current/f17/config-arm-generic @@ -1,15 +1,34 @@ CONFIG_ARM=y CONFIG_SYS_SUPPORTS_APM_EMULATION=y -# CONFIG_SMP is not set +CONFIG_SMP=y +CONFIG_SMP_ON_UP=y +CONFIG_ARM_CPU_TOPOLOGY=y +CONFIG_NR_CPUS=4 +CONFIG_HOTPLUG_CPU=y # CONFIG_CMDLINE_FORCE is not set CONFIG_CC_OPTIMIZE_FOR_SIZE=y -CONFIG_ARCH_VERSATILE=y -CONFIG_ARCH_VERSATILE_PB=y -CONFIG_MACH_VERSATILE_AB=y -CONFIG_MACH_VERSATILE_DT=y +CONFIG_ARCH_VEXPRESS=y +CONFIG_ARCH_VEXPRESS_CA9X4=y +CONFIG_PLAT_VERSATILE_CLCD=y +CONFIG_PLAT_VERSATILE_SCHED_CLOCK=y +CONFIG_PLAT_VERSATILE=y +CONFIG_ARM_TIMER_SP804=y + +CONFIG_CPU_V7=y +CONFIG_CPU_32v6K=y +CONFIG_CPU_32v7=y +CONFIG_CPU_ABRT_EV7=y +CONFIG_CPU_PABRT_V7=y +CONFIG_CPU_CACHE_V7=y +CONFIG_CPU_CACHE_VIPT=y +CONFIG_CPU_COPY_V6=y +CONFIG_CPU_TLB_V7=y +CONFIG_CPU_HAS_ASID=y +CONFIG_CPU_CP15=y +CONFIG_CPU_CP15_MMU=y CONFIG_HIGHMEM=y # CONFIG_HIGHPTE is not set @@ -36,6 +55,8 @@ CONFIG_HIGH_RES_TIMERS=y # CONFIG_FPE_NWFPE is not set CONFIG_FPE_FASTFPE=y CONFIG_VFP=y +CONFIG_VFPv3=y +CONFIG_NEON=y CONFIG_PM=y # CONFIG_PM_DEBUG is not set @@ -169,6 +190,36 @@ CONFIG_PL330_DMA=y CONFIG_DEFAULT_MMAP_MIN_ADDR=32768 CONFIG_LSM_MMAP_MIN_ADDR=32768 +# CONFIG_ARM_LPAE is not set +# CONFIG_ARM_THUMBEE is not set +CONFIG_SWP_EMULATE=y +# CONFIG_CPU_BPREDICT_DISABLE is not set +CONFIG_CACHE_L2X0=y +# CONFIG_ARM_ERRATA_430973 is not set +# CONFIG_ARM_ERRATA_458693 is not set +# CONFIG_ARM_ERRATA_460075 is not set +# CONFIG_ARM_ERRATA_742230 is not set +# CONFIG_ARM_ERRATA_742231 is not set +# CONFIG_PL310_ERRATA_588369 is not set +# CONFIG_PL310_ERRATA_727915 is not set +# CONFIG_ARM_ERRATA_743622 is not set +# CONFIG_ARM_ERRATA_754322 is not set +# CONFIG_ARM_ERRATA_754327 is not set +# CONFIG_ARM_ERRATA_764369 is not set +# CONFIG_PL310_ERRATA_769419 is not set +CONFIG_SCHED_MC=y +# CONFIG_SCHED_SMT is not set +CONFIG_LOCAL_TIMERS=y +# CONFIG_THUMB2_KERNEL is not set +# CONFIG_PATA_PLATFORM is not set +CONFIG_ETHERNET=y +CONFIG_NET_VENDOR_BROADCOM=y +# CONFIG_SERIAL_AMBA_PL010 is not set +# CONFIG_MPCORE_WATCHDOG is not set + +CONFIG_DVB_PLL=m +CONFIG_DVB_TDA1004X=m + # disable TPM on arm at least on the trimslices it causes havoc # CONFIG_TCG_TPM is not set # CONFIG_IMA is not set diff --git a/freed-ora/current/f17/config-arm-highbank b/freed-ora/current/f17/config-arm-highbank index c20f104f2..60178dd1f 100644 --- a/freed-ora/current/f17/config-arm-highbank +++ b/freed-ora/current/f17/config-arm-highbank @@ -17,10 +17,6 @@ CONFIG_SWP_EMULATE=y CONFIG_ARM_TIMER_SP804=y -CONFIG_VFP=y -CONFIG_VFPv3=y -CONFIG_NEON=y - CONFIG_SATA_AHCI_PLATFORM=y CONFIG_ATA_SFF=y @@ -33,5 +29,3 @@ CONFIG_GPIO_PL061=y CONFIG_SERIAL_AMBA_PL010=y CONFIG_SERIAL_AMBA_PL010_CONSOLE=y -# CONFIG_DVB_TDA1004X is not set -# CONFIG_DVB_PLL is not set diff --git a/freed-ora/current/f17/config-arm-imx b/freed-ora/current/f17/config-arm-imx index f4c7d26cb..23e7a5ed7 100644 --- a/freed-ora/current/f17/config-arm-imx +++ b/freed-ora/current/f17/config-arm-imx @@ -3,8 +3,6 @@ CONFIG_ARCH_MX51=y CONFIG_MACH_MX51_BABBAGE=y CONFIG_MACH_MX51_3DS=y CONFIG_MACH_EUKREA_CPUIMX51=y -CONFIG_VFP=y -CONFIG_NEON=y CONFIG_MACH_EUKREA_CPUIMX51SD=y CONFIG_MACH_MX51_EFIKAMX=y @@ -51,8 +49,6 @@ CONFIG_HW_RANDOM_MXC_RNGA=m CONFIG_I2C_IMX=m CONFIG_GPIO_GENERIC_PLATFORM=y CONFIG_GPIO_MCP23S08=m -CONFIG_DVB_TDA1004X=m -CONFIG_DVB_PLL=m CONFIG_SND_IMX_SOC=m CONFIG_USB_EHCI_MXC=y # CONFIG_USB_IMX21_HCD is not set diff --git a/freed-ora/current/f17/config-arm-kirkwood b/freed-ora/current/f17/config-arm-kirkwood index 592b5aa1b..d55c89b4d 100644 --- a/freed-ora/current/f17/config-arm-kirkwood +++ b/freed-ora/current/f17/config-arm-kirkwood @@ -43,3 +43,8 @@ CONFIG_CRYPTO_DEV_MV_CESA=m # CONFIG_INPUT_GP2A is not set # CONFIG_INPUT_GPIO_TILT_POLLED is not set + +# CONFIG_VFP is not set +# CONFIG_VFPv3 is not set +# CONFIG_NEON is not set +# CONFIG_SMP is not set diff --git a/freed-ora/current/f17/config-arm-omap b/freed-ora/current/f17/config-arm-omap index 74b4e56cc..ddcd67d22 100644 --- a/freed-ora/current/f17/config-arm-omap +++ b/freed-ora/current/f17/config-arm-omap @@ -659,8 +659,6 @@ CONFIG_RADIO_TEF6862=m # CONFIG_TTPCI_EEPROM is not set # CONFIG_SMS_SDIO_DRV is not set # CONFIG_DVB_DUMMY_FE is not set -CONFIG_DVB_TDA1004X=m -CONFIG_DVB_PLL=m CONFIG_DRM=m CONFIG_DRM_OMAP=m CONFIG_DRM_OMAP_NUM_CRTCS=2 diff --git a/freed-ora/current/f17/config-arm-tegra b/freed-ora/current/f17/config-arm-tegra index 9037d4b26..bc7fbe83e 100644 --- a/freed-ora/current/f17/config-arm-tegra +++ b/freed-ora/current/f17/config-arm-tegra @@ -5,9 +5,6 @@ CONFIG_ARCH_TEGRA_3x_SOC=y # CONFIG_ARM_LPAE is not set CONFIG_TEGRA_PCI=y -CONFIG_VFP=y -CONFIG_VFPv3=y - CONFIG_MACH_HARMONY=y CONFIG_MACH_KAEN=y CONFIG_MACH_PAZ00=y @@ -20,9 +17,6 @@ CONFIG_MACH_VENTANA=y CONFIG_TEGRA_DEBUG_UARTD=y CONFIG_NO_HZ=y -CONFIG_SMP=y -CONFIG_NR_CPUS=4 -CONFIG_ARM_CPU_TOPOLOGY=y CONFIG_PREEMPT=y CONFIG_AEABI=y @@ -98,8 +92,6 @@ CONFIG_LEDS_RENESAS_TPU=y # CONFIG_NET_VENDOR_BROADCOM is not set # CONFIG_INPUT_GP2A is not set # CONFIG_INPUT_GPIO_TILT_POLLED is not set -# CONFIG_DVB_TDA1004X is not set -# CONFIG_DVB_PLL is not set # CONFIG_SND_SOC_TEGRA_ALC5632 is not set CONFIG_PCI=y diff --git a/freed-ora/current/f17/config-powerpc64 b/freed-ora/current/f17/config-powerpc64 index f54bcdc34..f94a9755c 100644 --- a/freed-ora/current/f17/config-powerpc64 +++ b/freed-ora/current/f17/config-powerpc64 @@ -154,6 +154,10 @@ CONFIG_SPARSEMEM_VMEMMAP=y CONFIG_PSERIES_ENERGY=m +CONFIG_CPU_IDLE=y +# CONFIG_CPU_IDLE_GOV_LADDER is not set +CONFIG_PSERIES_IDLE=y + CONFIG_PPC_ICSWX=y CONFIG_IO_EVENT_IRQ=y CONFIG_HW_RANDOM_AMD=m diff --git a/freed-ora/current/f17/config-x86-32-generic b/freed-ora/current/f17/config-x86-32-generic index 3fd696c64..3a6a689c5 100644 --- a/freed-ora/current/f17/config-x86-32-generic +++ b/freed-ora/current/f17/config-x86-32-generic @@ -88,6 +88,9 @@ CONFIG_X86_LONGRUN=y CONFIG_X86_HT=y CONFIG_X86_TRAMPOLINE=y +# Turn back on in 3.4 +# CONFIG_RELOCATABLE is not set + # CONFIG_4KSTACKS is not set diff --git a/freed-ora/current/f17/dl2k-Clean-up-rio_ioctl.patch b/freed-ora/current/f17/dl2k-Clean-up-rio_ioctl.patch deleted file mode 100644 index 2ef4eed6d..000000000 --- a/freed-ora/current/f17/dl2k-Clean-up-rio_ioctl.patch +++ /dev/null @@ -1,120 +0,0 @@ -From 1bb57e940e1958e40d51f2078f50c3a96a9b2d75 Mon Sep 17 00:00:00 2001 -From: Jeff Mahoney <jeffm@suse.com> -Date: Wed, 25 Apr 2012 14:32:09 +0000 -Subject: [PATCH] dl2k: Clean up rio_ioctl - -The dl2k driver's rio_ioctl call has a few issues: -- No permissions checking -- Implements SIOCGMIIREG and SIOCGMIIREG using the SIOCDEVPRIVATE numbers -- Has a few ioctls that may have been used for debugging at one point - but have no place in the kernel proper. - -This patch removes all but the MII ioctls, renumbers them to use the -standard ones, and adds the proper permission check for SIOCSMIIREG. - -We can also get rid of the dl2k-specific struct mii_data in favor of -the generic struct mii_ioctl_data. - -Since we have the phyid on hand, we can add the SIOCGMIIPHY ioctl too. - -Most of the MII code for the driver could probably be converted to use -the generic MII library but I don't have a device to test the results. - -Reported-by: Stephan Mueller <stephan.mueller@atsec.com> -Signed-off-by: Jeff Mahoney <jeffm@suse.com> -Signed-off-by: David S. Miller <davem@davemloft.net> ---- - drivers/net/ethernet/dlink/dl2k.c | 52 ++++++------------------------------ - drivers/net/ethernet/dlink/dl2k.h | 7 ----- - 2 files changed, 9 insertions(+), 50 deletions(-) - -diff --git a/drivers/net/ethernet/dlink/dl2k.c b/drivers/net/ethernet/dlink/dl2k.c -index b2dc2c8..2e09edb 100644 ---- a/drivers/net/ethernet/dlink/dl2k.c -+++ b/drivers/net/ethernet/dlink/dl2k.c -@@ -1259,55 +1259,21 @@ rio_ioctl (struct net_device *dev, struct ifreq *rq, int cmd) - { - int phy_addr; - struct netdev_private *np = netdev_priv(dev); -- struct mii_data *miidata = (struct mii_data *) &rq->ifr_ifru; -- -- struct netdev_desc *desc; -- int i; -+ struct mii_ioctl_data *miidata = if_mii(rq); - - phy_addr = np->phy_addr; - switch (cmd) { -- case SIOCDEVPRIVATE: -- break; -- -- case SIOCDEVPRIVATE + 1: -- miidata->out_value = mii_read (dev, phy_addr, miidata->reg_num); -+ case SIOCGMIIPHY: -+ miidata->phy_id = phy_addr; - break; -- case SIOCDEVPRIVATE + 2: -- mii_write (dev, phy_addr, miidata->reg_num, miidata->in_value); -+ case SIOCGMIIREG: -+ miidata->val_out = mii_read (dev, phy_addr, miidata->reg_num); - break; -- case SIOCDEVPRIVATE + 3: -- break; -- case SIOCDEVPRIVATE + 4: -- break; -- case SIOCDEVPRIVATE + 5: -- netif_stop_queue (dev); -+ case SIOCSMIIREG: -+ if (!capable(CAP_NET_ADMIN)) -+ return -EPERM; -+ mii_write (dev, phy_addr, miidata->reg_num, miidata->val_in); - break; -- case SIOCDEVPRIVATE + 6: -- netif_wake_queue (dev); -- break; -- case SIOCDEVPRIVATE + 7: -- printk -- ("tx_full=%x cur_tx=%lx old_tx=%lx cur_rx=%lx old_rx=%lx\n", -- netif_queue_stopped(dev), np->cur_tx, np->old_tx, np->cur_rx, -- np->old_rx); -- break; -- case SIOCDEVPRIVATE + 8: -- printk("TX ring:\n"); -- for (i = 0; i < TX_RING_SIZE; i++) { -- desc = &np->tx_ring[i]; -- printk -- ("%02x:cur:%08x next:%08x status:%08x frag1:%08x frag0:%08x", -- i, -- (u32) (np->tx_ring_dma + i * sizeof (*desc)), -- (u32)le64_to_cpu(desc->next_desc), -- (u32)le64_to_cpu(desc->status), -- (u32)(le64_to_cpu(desc->fraginfo) >> 32), -- (u32)le64_to_cpu(desc->fraginfo)); -- printk ("\n"); -- } -- printk ("\n"); -- break; -- - default: - return -EOPNOTSUPP; - } -diff --git a/drivers/net/ethernet/dlink/dl2k.h b/drivers/net/ethernet/dlink/dl2k.h -index ba0adca..30c2da3 100644 ---- a/drivers/net/ethernet/dlink/dl2k.h -+++ b/drivers/net/ethernet/dlink/dl2k.h -@@ -365,13 +365,6 @@ struct ioctl_data { - char *data; - }; - --struct mii_data { -- __u16 reserved; -- __u16 reg_num; -- __u16 in_value; -- __u16 out_value; --}; -- - /* The Rx and Tx buffer descriptors. */ - struct netdev_desc { - __le64 next_desc; --- -1.7.7.6 - diff --git a/freed-ora/current/f17/dvbs-fix-zigzag.patch b/freed-ora/current/f17/dvbs-fix-zigzag.patch deleted file mode 100644 index 4bc9daaf4..000000000 --- a/freed-ora/current/f17/dvbs-fix-zigzag.patch +++ /dev/null @@ -1,15 +0,0 @@ -diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c -index 39696c6..de7dc29 100644 ---- a/drivers/media/dvb/dvb-core/dvb_frontend.c -+++ b/drivers/media/dvb/dvb-core/dvb_frontend.c -@@ -1898,6 +1898,10 @@ static int dtv_set_frontend(struct dvb_frontend *fe) - } else { - /* default values */ - switch (c->delivery_system) { -+ case SYS_DVBS: -+ case SYS_DVBS2: -+ case SYS_ISDBS: -+ case SYS_TURBO: - case SYS_DVBC_ANNEX_A: - case SYS_DVBC_ANNEX_C: - fepriv->min_delay = HZ / 20; diff --git a/freed-ora/current/f17/kernel.spec b/freed-ora/current/f17/kernel.spec index 5e26c1ea3..826ce031d 100644 --- a/freed-ora/current/f17/kernel.spec +++ b/freed-ora/current/f17/kernel.spec @@ -54,7 +54,7 @@ Summary: The Linux kernel # For non-released -rc kernels, this will be appended after the rcX and # gitX tags, so a 3 here would become part of release "0.rcX.gitX.3" # -%global baserelease 3 +%global baserelease 1 %global fedora_build %{baserelease} # base_sublevel is the kernel version we're starting with and patching @@ -104,7 +104,7 @@ Summary: The Linux kernel %if 0%{?released_kernel} # Do we have a -stable update to apply? -%define stable_update 6 +%define stable_update 7 # Is it a -stable RC? %define stable_rc 0 # Set rpm version accordingly @@ -756,7 +756,6 @@ Patch2802: linux-2.6-silence-acpi-blacklist.patch # media patches Patch2900: add-poll-requested-events.patch Patch2901: drivers-media-update.patch -Patch2902: dvbs-fix-zigzag.patch # fs fixes Patch4000: ext4-fix-resize-when-resizing-within-single-group.patch @@ -857,9 +856,6 @@ Patch22013: ipw2x00-add-supported-cipher-suites-to-wiphy-initialization.patch Patch22014: efifb-skip-DMI-checks-if-bootloader-knows.patch -#rhbz 818820 -Patch22016: dl2k-Clean-up-rio_ioctl.patch - #rhbz 726143 Patch22017: 0001-drm-radeon-don-t-mess-with-hot-plug-detect-for-eDP-o.patch @@ -869,6 +865,9 @@ Patch22018: atl1c_net_next_update-3.3.patch #rhbz 795176 Patch22019: rtl818x-fix-sleeping-function-called-from-invalid-context.patch +#rhbz 822120 +Patch22020: rtlwifi-fix-for-race-condition-when-firmware-is-cach.patch + # END OF PATCH DEFINITIONS %endif @@ -1603,7 +1602,6 @@ ApplyPatch quite-apm.patch # Media (V4L/DVB/IR) updates/fixes/experimental drivers # apply if non-empty ApplyPatch add-poll-requested-events.patch -ApplyPatch dvbs-fix-zigzag.patch ApplyOptionalPatch drivers-media-update.patch # Patches headed upstream @@ -1679,9 +1677,6 @@ ApplyPatch ipw2x00-add-supported-cipher-suites-to-wiphy-initialization.patch ApplyPatch efifb-skip-DMI-checks-if-bootloader-knows.patch -#rhbz 818820 -ApplyPatch dl2k-Clean-up-rio_ioctl.patch - #rhbz 726143 ApplyPatch 0001-drm-radeon-don-t-mess-with-hot-plug-detect-for-eDP-o.patch @@ -1691,6 +1686,9 @@ ApplyPatch atl1c_net_next_update-3.3.patch #rhbz 795176 ApplyPatch rtl818x-fix-sleeping-function-called-from-invalid-context.patch +#rhbz 822120 +ApplyPatch rtlwifi-fix-for-race-condition-when-firmware-is-cach.patch + # END OF PATCH APPLICATIONS %endif @@ -2556,6 +2554,24 @@ fi # '-' | | # '-' %changelog +* Mon May 21 2012 Alexandre Oliva <lxoliva@fsfla.org> -libre +- GNU Linux-libre 3.3.7-gnu. + +* Mon May 21 2012 Justin M. Forbes <jforbes@redhat.com> 3.3.7-1 +- Linux 3.3.7 +- Disable CONFIG_RELOCATABLE for 32bit builds. Turn back on for 3.4 + +* Fri May 18 2012 Josh Boyer <jwboyer@redhat.com> +- Additional fixes for CVE-2011-4131 (rhbz 822874 822869) + +* Thu May 17 2012 Josh Boyer <jwboyer@redhat.com> +- Fix rtlwifi async firmware load race condition (rhbz 822120) +- Enable cpu_idle drivers for ppc64/pseries (requested by Ben Herrenschmidt) + +* Wed May 16 2012 Dennis Gilmore <dennis@ausil.us> +- set arch for arm kernel to VEXPRESS allows v7 emulation +- enable SMP everywhere but disable on kirkwood as its up only + * Wed May 16 2012 Justin M. Forbes <jforbes@redhat.com> 3.3.6-3 - fix rtl8187: ->brightness_set can not sleep (rhbz 795176) diff --git a/freed-ora/current/f17/patch-3.3-gnu-3.3.6-gnu.xz.sign b/freed-ora/current/f17/patch-3.3-gnu-3.3.6-gnu.xz.sign deleted file mode 100644 index d0c573ca4..000000000 --- a/freed-ora/current/f17/patch-3.3-gnu-3.3.6-gnu.xz.sign +++ /dev/null @@ -1,7 +0,0 @@ ------BEGIN PGP SIGNATURE----- -Version: GnuPG v2.0.18 (GNU/Linux) - -iEYEABECAAYFAk+warwACgkQvLfPh359R6d9+QCglEj0bmJRls2lR1R728kCGbP0 -qHUAn079mlbL8uVupU95vJaV1L6j9p2O -=f175 ------END PGP SIGNATURE----- diff --git a/freed-ora/current/f17/patch-3.3-gnu-3.3.7-gnu.xz.sign b/freed-ora/current/f17/patch-3.3-gnu-3.3.7-gnu.xz.sign new file mode 100644 index 000000000..f0247d217 --- /dev/null +++ b/freed-ora/current/f17/patch-3.3-gnu-3.3.7-gnu.xz.sign @@ -0,0 +1,7 @@ +-----BEGIN PGP SIGNATURE----- +Version: GnuPG v2.0.18 (GNU/Linux) + +iEYEABECAAYFAk+660IACgkQvLfPh359R6dVLgCgk9jXp1ZBBaCxHwgdQ/UW5TeQ +N78AnjDEKsumNm57jF+KS9aeuAPSomB8 +=vs8N +-----END PGP SIGNATURE----- diff --git a/freed-ora/current/f17/rtlwifi-fix-for-race-condition-when-firmware-is-cach.patch b/freed-ora/current/f17/rtlwifi-fix-for-race-condition-when-firmware-is-cach.patch new file mode 100644 index 000000000..431ec00b6 --- /dev/null +++ b/freed-ora/current/f17/rtlwifi-fix-for-race-condition-when-firmware-is-cach.patch @@ -0,0 +1,86 @@ +From 574e02abaf816b582685805f0c1150ca9f1f18ee Mon Sep 17 00:00:00 2001 +From: Larry Finger <Larry.Finger@lwfinger.net> +Date: Fri, 4 May 2012 08:27:43 -0500 +Subject: [PATCH] rtlwifi: fix for race condition when firmware is cached + +In commit b0302ab, the rtlwifi family of drivers was converted to use +asynchronous firmware loading. Unfortumately, the implementation was +racy, and the ieee80211 routines could be started before rtl_init_core() +was called to setup the data. + +This patch fixes the bug noted in https://bugzilla.kernel.org/show_bug.cgi?id=43187. + +Reported-by: Joshua Roys <Joshua.Roys@gtri.gatech.edu> +Tested-by: Neptune Ning <frostyplanet@gmail.com> +Signed-off-by: Larry Finger <Larry.Finger@lwfinger.net> +Cc: Stable <stable@vger.kernel.org> [3.3] +Signed-off-by: John W. Linville <linville@tuxdriver.com> +--- + drivers/net/wireless/rtlwifi/pci.c | 16 ++++++++-------- + drivers/net/wireless/rtlwifi/usb.c | 10 +++++----- + 2 files changed, 13 insertions(+), 13 deletions(-) + +diff --git a/drivers/net/wireless/rtlwifi/pci.c b/drivers/net/wireless/rtlwifi/pci.c +index b588ca8..03c400e 100644 +--- a/drivers/net/wireless/rtlwifi/pci.c ++++ b/drivers/net/wireless/rtlwifi/pci.c +@@ -1865,14 +1865,6 @@ int __devinit rtl_pci_probe(struct pci_dev *pdev, + /*like read eeprom and so on */ + rtlpriv->cfg->ops->read_eeprom_info(hw); + +- if (rtlpriv->cfg->ops->init_sw_vars(hw)) { +- RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, +- ("Can't init_sw_vars.\n")); +- goto fail3; +- } +- +- rtlpriv->cfg->ops->init_sw_leds(hw); +- + /*aspm */ + rtl_pci_init_aspm(hw); + +@@ -1892,6 +1884,14 @@ int __devinit rtl_pci_probe(struct pci_dev *pdev, + goto fail3; + } + ++ if (rtlpriv->cfg->ops->init_sw_vars(hw)) { ++ RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, ++ ("Can't init_sw_vars.\n")); ++ goto fail3; ++ } ++ ++ rtlpriv->cfg->ops->init_sw_leds(hw); ++ + err = sysfs_create_group(&pdev->dev.kobj, &rtl_attribute_group); + if (err) { + RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, +diff --git a/drivers/net/wireless/rtlwifi/usb.c b/drivers/net/wireless/rtlwifi/usb.c +index 049e207..20b53ae 100644 +--- a/drivers/net/wireless/rtlwifi/usb.c ++++ b/drivers/net/wireless/rtlwifi/usb.c +@@ -970,12 +970,6 @@ int __devinit rtl_usb_probe(struct usb_interface *intf, + rtlpriv->cfg->ops->read_chip_version(hw); + /*like read eeprom and so on */ + rtlpriv->cfg->ops->read_eeprom_info(hw); +- if (rtlpriv->cfg->ops->init_sw_vars(hw)) { +- RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, +- ("Can't init_sw_vars.\n")); +- goto error_out; +- } +- rtlpriv->cfg->ops->init_sw_leds(hw); + err = _rtl_usb_init(hw); + err = _rtl_usb_init_sw(hw); + /* Init mac80211 sw */ +@@ -985,6 +979,12 @@ int __devinit rtl_usb_probe(struct usb_interface *intf, + ("Can't allocate sw for mac80211.\n")); + goto error_out; + } ++ if (rtlpriv->cfg->ops->init_sw_vars(hw)) { ++ RT_TRACE(rtlpriv, COMP_ERR, DBG_EMERG, ++ ("Can't init_sw_vars.\n")); ++ goto error_out; ++ } ++ rtlpriv->cfg->ops->init_sw_leds(hw); + + return 0; + error_out: diff --git a/freed-ora/current/f17/sources b/freed-ora/current/f17/sources index 647ca16a8..746743e75 100644 --- a/freed-ora/current/f17/sources +++ b/freed-ora/current/f17/sources @@ -1,2 +1,2 @@ 5487da14ca81715a469c7594d39722fa linux-libre-3.3-gnu.tar.xz -6d9d139e4b53802615833372728cc0e4 patch-3.3-gnu-3.3.6-gnu.xz +7c6765b6223ad361c1c49310679ac1d0 patch-3.3-gnu-3.3.7-gnu.xz |