diff options
author | Greg Kroah-Hartman <gregkh@suse.de> | 2011-04-14 16:12:13 -0700 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@suse.de> | 2011-04-14 16:12:13 -0700 |
commit | c009a014beed801068859b2aa25686b8d6367299 (patch) | |
tree | 0e79687af0b5c91ae4f07d08706076e0d55188e2 | |
parent | 38582e201138679c3f25e9dbd1eb9601d2b3d16b (diff) | |
download | longterm-queue-2.6.33-c009a014beed801068859b2aa25686b8d6367299.tar.gz |
.33 patches
10 files changed, 390 insertions, 0 deletions
diff --git a/queue-2.6.33/cifs-always-do-is_path_accessible-check-in-cifs_mount.patch b/queue-2.6.33/cifs-always-do-is_path_accessible-check-in-cifs_mount.patch new file mode 100644 index 0000000..b85daed --- /dev/null +++ b/queue-2.6.33/cifs-always-do-is_path_accessible-check-in-cifs_mount.patch @@ -0,0 +1,42 @@ +From 70945643722ffeac779d2529a348f99567fa5c33 Mon Sep 17 00:00:00 2001 +From: Jeff Layton <jlayton@redhat.com> +Date: Mon, 14 Mar 2011 13:48:08 -0400 +Subject: cifs: always do is_path_accessible check in cifs_mount + +From: Jeff Layton <jlayton@redhat.com> + +commit 70945643722ffeac779d2529a348f99567fa5c33 upstream. + +Currently, we skip doing the is_path_accessible check in cifs_mount if +there is no prefixpath. I have a report of at least one server however +that allows a TREE_CONNECT to a share that has a DFS referral at its +root. The reporter in this case was using a UNC that had no prefixpath, +so the is_path_accessible check was not triggered and the box later hit +a BUG() because we were chasing a DFS referral on the root dentry for +the mount. + +This patch fixes this by removing the check for a zero-length +prefixpath. That should make the is_path_accessible check be done in +this situation and should allow the client to chase the DFS referral at +mount time instead. + +Reported-and-Tested-by: Yogesh Sharma <ysharma@cymer.com> +Signed-off-by: Jeff Layton <jlayton@redhat.com> +Signed-off-by: Steve French <sfrench@us.ibm.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + fs/cifs/connect.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/fs/cifs/connect.c ++++ b/fs/cifs/connect.c +@@ -2554,7 +2554,7 @@ try_mount_again: + + remote_path_check: + /* check if a whole path (including prepath) is not remote */ +- if (!rc && cifs_sb->prepathlen && tcon) { ++ if (!rc && tcon) { + /* build_path_to_root works only when we have a valid tcon */ + full_path = cifs_build_path_to_root(cifs_sb); + if (full_path == NULL) { diff --git a/queue-2.6.33/cifs-set-ra_pages-in-backing_dev_info.patch b/queue-2.6.33/cifs-set-ra_pages-in-backing_dev_info.patch new file mode 100644 index 0000000..f3fca35 --- /dev/null +++ b/queue-2.6.33/cifs-set-ra_pages-in-backing_dev_info.patch @@ -0,0 +1,43 @@ +From 2b6c26a0a62cc0bab0ad487533d5581d7c293fef Mon Sep 17 00:00:00 2001 +From: Jeff Layton <jlayton@redhat.com> +Date: Fri, 25 Mar 2011 16:25:57 -0400 +Subject: cifs: set ra_pages in backing_dev_info + +From: Jeff Layton <jlayton@redhat.com> + +commit 2b6c26a0a62cc0bab0ad487533d5581d7c293fef upstream. + +Commit 522440ed made cifs set backing_dev_info on the mapping attached +to new inodes. This change caused a fairly significant read performance +regression, as cifs started doing page-sized reads exclusively. + +By virtue of the fact that they're allocated as part of cifs_sb_info by +kzalloc, the ra_pages on cifs BDIs get set to 0, which prevents any +readahead. This forces the normal read codepaths to use readpage instead +of readpages causing a four-fold increase in the number of read calls +with the default rsize. + +Fix it by setting ra_pages in the BDI to the same value as that in the +default_backing_dev_info. + +Fixes https://bugzilla.kernel.org/show_bug.cgi?id=31662 + +Reported-and-Tested-by: Till <till2.schaefer@uni-dortmund.de> +Signed-off-by: Jeff Layton <jlayton@redhat.com> +Signed-off-by: Steve French <sfrench@us.ibm.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + fs/cifs/cifsfs.c | 1 + + 1 file changed, 1 insertion(+) + +--- a/fs/cifs/cifsfs.c ++++ b/fs/cifs/cifsfs.c +@@ -132,6 +132,7 @@ cifs_read_super(struct super_block *sb, + ("cifs_mount failed w/return code = %d", rc)); + goto out_mount_failed; + } ++ cifs_sb->bdi.ra_pages = default_backing_dev_info.ra_pages; + + sb->s_magic = CIFS_MAGIC_NUMBER; + sb->s_op = &cifs_super_ops; diff --git a/queue-2.6.33/drm-radeon-kms-pll-tweaks-for-rv6xx.patch b/queue-2.6.33/drm-radeon-kms-pll-tweaks-for-rv6xx.patch new file mode 100644 index 0000000..aea1f36 --- /dev/null +++ b/queue-2.6.33/drm-radeon-kms-pll-tweaks-for-rv6xx.patch @@ -0,0 +1,37 @@ +From 9bb09fa1b5b07459279301ac6220d575f307597b Mon Sep 17 00:00:00 2001 +From: Alex Deucher <alexdeucher@gmail.com> +Date: Thu, 7 Apr 2011 10:31:25 -0400 +Subject: drm/radeon/kms: pll tweaks for rv6xx + +From: Alex Deucher <alexdeucher@gmail.com> + +commit 9bb09fa1b5b07459279301ac6220d575f307597b upstream. + +Prefer minm over maxp. + +Fixes: +https://bugs.freedesktop.org/show_bug.cgi?id=35994 + +Signed-off-by: Alex Deucher <alexdeucher@gmail.com> +Signed-off-by: Dave Airlie <airlied@redhat.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + drivers/gpu/drm/radeon/atombios_crtc.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- a/drivers/gpu/drm/radeon/atombios_crtc.c ++++ b/drivers/gpu/drm/radeon/atombios_crtc.c +@@ -435,6 +435,12 @@ static u32 atombios_adjust_pll(struct dr + pll->flags |= RADEON_PLL_PREFER_HIGH_FB_DIV; + else + pll->flags |= RADEON_PLL_PREFER_LOW_REF_DIV; ++ ++ if ((rdev->family == CHIP_R600) || ++ (rdev->family == CHIP_RV610) || ++ (rdev->family == CHIP_RV630) || ++ (rdev->family == CHIP_RV670)) ++ pll->flags |= RADEON_PLL_PREFER_MINM_OVER_MAXP; + } else { + pll->flags |= RADEON_PLL_LEGACY; + diff --git a/queue-2.6.33/mca.c-fix-cast-from-integer-to-pointer-warning.patch b/queue-2.6.33/mca.c-fix-cast-from-integer-to-pointer-warning.patch new file mode 100644 index 0000000..f7faab5 --- /dev/null +++ b/queue-2.6.33/mca.c-fix-cast-from-integer-to-pointer-warning.patch @@ -0,0 +1,43 @@ +From c1d036c4d1cb00b7e8473a2ad0a78f13e13a8183 Mon Sep 17 00:00:00 2001 +From: Jeff Mahoney <jeffm@suse.com> +Date: Thu, 24 Feb 2011 17:23:09 -0500 +Subject: [IA64] mca.c: Fix cast from integer to pointer warning + +From: Jeff Mahoney <jeffm@suse.com> + +commit c1d036c4d1cb00b7e8473a2ad0a78f13e13a8183 upstream. + +ia64_mca_cpu_init has a void *data local variable that is assigned +the value from either __get_free_pages() or mca_bootmem(). The problem +is that __get_free_pages returns an unsigned long and mca_bootmem, via +alloc_bootmem(), returns a void *. format_mca_init_stack takes the void *, +and it's also used with __pa(), but that casts it to long anyway. + +This results in the following build warning: + +arch/ia64/kernel/mca.c:1898: warning: assignment makes pointer from +integer without a cast + +Cast the return of __get_free_pages to a void * to avoid +the warning. + +Signed-off-by: Jeff Mahoney <jeffm@suse.com> +Signed-off-by: Tony Luck <tony.luck@intel.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + arch/ia64/kernel/mca.c | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +--- a/arch/ia64/kernel/mca.c ++++ b/arch/ia64/kernel/mca.c +@@ -1858,7 +1858,8 @@ ia64_mca_cpu_init(void *cpu_data) + data = mca_bootmem(); + first_time = 0; + } else +- data = __get_free_pages(GFP_KERNEL, get_order(sz)); ++ data = (void *)__get_free_pages(GFP_KERNEL, ++ get_order(sz)); + if (!data) + panic("Could not allocate MCA memory for cpu %d\n", + cpu); diff --git a/queue-2.6.33/net-cdc-phonet-handle-empty-phonet-header.patch b/queue-2.6.33/net-cdc-phonet-handle-empty-phonet-header.patch new file mode 100644 index 0000000..88c6b26 --- /dev/null +++ b/queue-2.6.33/net-cdc-phonet-handle-empty-phonet-header.patch @@ -0,0 +1,72 @@ +From 468c3f924f043cad7a04f4f4d5224a2c9bc886c1 Mon Sep 17 00:00:00 2001 +From: Jiri Slaby <jslaby@suse.cz> +Date: Sun, 13 Mar 2011 06:54:31 +0000 +Subject: NET: cdc-phonet, handle empty phonet header +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +From: Jiri Slaby <jslaby@suse.cz> + +commit 468c3f924f043cad7a04f4f4d5224a2c9bc886c1 upstream. + +Currently, for N 5800 XM I get: +cdc_phonet: probe of 1-6:1.10 failed with error -22 + +It's because phonet_header is empty. Extra altsetting looks like +there: +E 05 24 00 01 10 03 24 ab 05 24 06 0a 0b 04 24 fd .$....$..$....$. +E 00 . + +I don't see the header used anywhere so just check if the phonet +descriptor is there, not the structure itself. + +Signed-off-by: Jiri Slaby <jslaby@suse.cz> +Cc: Rémi Denis-Courmont <remi.denis-courmont@nokia.com> +Cc: David S. Miller <davem@davemloft.net> +Acked-by: Rémi Denis-Courmont <remi.denis-courmont@nokia.com> +Signed-off-by: David S. Miller <davem@davemloft.net> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + drivers/net/usb/cdc-phonet.c | 9 +++------ + 1 file changed, 3 insertions(+), 6 deletions(-) + +--- a/drivers/net/usb/cdc-phonet.c ++++ b/drivers/net/usb/cdc-phonet.c +@@ -325,13 +325,13 @@ int usbpn_probe(struct usb_interface *in + { + static const char ifname[] = "usbpn%d"; + const struct usb_cdc_union_desc *union_header = NULL; +- const struct usb_cdc_header_desc *phonet_header = NULL; + const struct usb_host_interface *data_desc; + struct usb_interface *data_intf; + struct usb_device *usbdev = interface_to_usbdev(intf); + struct net_device *dev; + struct usbpn_dev *pnd; + u8 *data; ++ int phonet = 0; + int len, err; + + data = intf->altsetting->extra; +@@ -352,10 +352,7 @@ int usbpn_probe(struct usb_interface *in + (struct usb_cdc_union_desc *)data; + break; + case 0xAB: +- if (phonet_header || dlen < 5) +- break; +- phonet_header = +- (struct usb_cdc_header_desc *)data; ++ phonet = 1; + break; + } + } +@@ -363,7 +360,7 @@ int usbpn_probe(struct usb_interface *in + len -= dlen; + } + +- if (!union_header || !phonet_header) ++ if (!union_header || !phonet) + return -EINVAL; + + data_intf = usb_ifnum_to_if(usbdev, union_header->bSlaveInterface0); diff --git a/queue-2.6.33/series b/queue-2.6.33/series new file mode 100644 index 0000000..cfa2d59 --- /dev/null +++ b/queue-2.6.33/series @@ -0,0 +1,9 @@ +drm-radeon-kms-pll-tweaks-for-rv6xx.patch +cifs-always-do-is_path_accessible-check-in-cifs_mount.patch +cifs-set-ra_pages-in-backing_dev_info.patch +video-sn9c102-world-wirtable-sysfs-files.patch +ubifs-restrict-world-writable-debugfs-files.patch +net-cdc-phonet-handle-empty-phonet-header.patch +x86-fix-a-bogus-unwind-annotation-in-lib-semaphore_32.s.patch +tioca-fix-assignment-from-incompatible-pointer-warnings.patch +mca.c-fix-cast-from-integer-to-pointer-warning.patch diff --git a/queue-2.6.33/tioca-fix-assignment-from-incompatible-pointer-warnings.patch b/queue-2.6.33/tioca-fix-assignment-from-incompatible-pointer-warnings.patch new file mode 100644 index 0000000..fb8c5d4 --- /dev/null +++ b/queue-2.6.33/tioca-fix-assignment-from-incompatible-pointer-warnings.patch @@ -0,0 +1,31 @@ +From b4a6b3436531f6c5256e6d60d388c3c28ff1a0e9 Mon Sep 17 00:00:00 2001 +From: Jeff Mahoney <jeffm@suse.com> +Date: Thu, 24 Feb 2011 15:33:24 -0500 +Subject: [IA64] tioca: Fix assignment from incompatible pointer warnings + +From: Jeff Mahoney <jeffm@suse.com> + +commit b4a6b3436531f6c5256e6d60d388c3c28ff1a0e9 upstream. + +The prototype for sn_pci_provider->{dma_map,dma_map_consistent} expects +an unsigned long instead of a u64. + +Signed-off-by: Jeff Mahoney <jeffm@suse.com> +Signed-off-by: Tony Luck <tony.luck@intel.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + arch/ia64/sn/pci/tioca_provider.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/arch/ia64/sn/pci/tioca_provider.c ++++ b/arch/ia64/sn/pci/tioca_provider.c +@@ -508,7 +508,7 @@ tioca_dma_unmap(struct pci_dev *pdev, dm + * use the GART mapped mode. + */ + static u64 +-tioca_dma_map(struct pci_dev *pdev, u64 paddr, size_t byte_count, int dma_flags) ++tioca_dma_map(struct pci_dev *pdev, unsigned long paddr, size_t byte_count, int dma_flags) + { + u64 mapaddr; + diff --git a/queue-2.6.33/ubifs-restrict-world-writable-debugfs-files.patch b/queue-2.6.33/ubifs-restrict-world-writable-debugfs-files.patch new file mode 100644 index 0000000..87d8ef5 --- /dev/null +++ b/queue-2.6.33/ubifs-restrict-world-writable-debugfs-files.patch @@ -0,0 +1,44 @@ +From 8c559d30b4e59cf6994215ada1fe744928f494bf Mon Sep 17 00:00:00 2001 +From: Vasiliy Kulikov <segoon@openwall.com> +Date: Fri, 4 Feb 2011 15:24:19 +0300 +Subject: UBIFS: restrict world-writable debugfs files + +From: Vasiliy Kulikov <segoon@openwall.com> + +commit 8c559d30b4e59cf6994215ada1fe744928f494bf upstream. + +Don't allow everybody to dump sensitive information about filesystems. + +Signed-off-by: Vasiliy Kulikov <segoon@openwall.com> +Signed-off-by: Artem Bityutskiy <Artem.Bityutskiy@nokia.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + fs/ubifs/debug.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- a/fs/ubifs/debug.c ++++ b/fs/ubifs/debug.c +@@ -2655,19 +2655,19 @@ int dbg_debugfs_init_fs(struct ubifs_inf + } + + fname = "dump_lprops"; +- dent = debugfs_create_file(fname, S_IWUGO, d->dfs_dir, c, &dfs_fops); ++ dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, c, &dfs_fops); + if (IS_ERR(dent)) + goto out_remove; + d->dfs_dump_lprops = dent; + + fname = "dump_budg"; +- dent = debugfs_create_file(fname, S_IWUGO, d->dfs_dir, c, &dfs_fops); ++ dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, c, &dfs_fops); + if (IS_ERR(dent)) + goto out_remove; + d->dfs_dump_budg = dent; + + fname = "dump_tnc"; +- dent = debugfs_create_file(fname, S_IWUGO, d->dfs_dir, c, &dfs_fops); ++ dent = debugfs_create_file(fname, S_IWUSR, d->dfs_dir, c, &dfs_fops); + if (IS_ERR(dent)) + goto out_remove; + d->dfs_dump_tnc = dent; diff --git a/queue-2.6.33/video-sn9c102-world-wirtable-sysfs-files.patch b/queue-2.6.33/video-sn9c102-world-wirtable-sysfs-files.patch new file mode 100644 index 0000000..57b80a6 --- /dev/null +++ b/queue-2.6.33/video-sn9c102-world-wirtable-sysfs-files.patch @@ -0,0 +1,36 @@ +From 14ddc3188d50855ae2a419a6aced995e2834e5d4 Mon Sep 17 00:00:00 2001 +From: Vasiliy Kulikov <segoon@openwall.com> +Date: Fri, 4 Feb 2011 09:23:33 -0300 +Subject: [media] video: sn9c102: world-wirtable sysfs files + +From: Vasiliy Kulikov <segoon@openwall.com> + +commit 14ddc3188d50855ae2a419a6aced995e2834e5d4 upstream. + +Don't allow everybody to change video settings. + +Signed-off-by: Vasiliy Kulikov <segoon@openwall.com> +Acked-by: Mauro Carvalho Chehab <mchehab@redhat.com> +Acked-by: Luca Risolia <luca.risolia@studio.unibo.it> +Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + drivers/media/video/sn9c102/sn9c102_core.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +--- a/drivers/media/video/sn9c102/sn9c102_core.c ++++ b/drivers/media/video/sn9c102/sn9c102_core.c +@@ -1430,9 +1430,9 @@ static DEVICE_ATTR(i2c_reg, S_IRUGO | S_ + sn9c102_show_i2c_reg, sn9c102_store_i2c_reg); + static DEVICE_ATTR(i2c_val, S_IRUGO | S_IWUSR, + sn9c102_show_i2c_val, sn9c102_store_i2c_val); +-static DEVICE_ATTR(green, S_IWUGO, NULL, sn9c102_store_green); +-static DEVICE_ATTR(blue, S_IWUGO, NULL, sn9c102_store_blue); +-static DEVICE_ATTR(red, S_IWUGO, NULL, sn9c102_store_red); ++static DEVICE_ATTR(green, S_IWUSR, NULL, sn9c102_store_green); ++static DEVICE_ATTR(blue, S_IWUSR, NULL, sn9c102_store_blue); ++static DEVICE_ATTR(red, S_IWUSR, NULL, sn9c102_store_red); + static DEVICE_ATTR(frame_header, S_IRUGO, sn9c102_show_frame_header, NULL); + + diff --git a/queue-2.6.33/x86-fix-a-bogus-unwind-annotation-in-lib-semaphore_32.s.patch b/queue-2.6.33/x86-fix-a-bogus-unwind-annotation-in-lib-semaphore_32.s.patch new file mode 100644 index 0000000..4efb249 --- /dev/null +++ b/queue-2.6.33/x86-fix-a-bogus-unwind-annotation-in-lib-semaphore_32.s.patch @@ -0,0 +1,33 @@ +From e938c287ea8d977e079f07464ac69923412663ce Mon Sep 17 00:00:00 2001 +From: Jan Beulich <JBeulich@novell.com> +Date: Tue, 1 Mar 2011 14:28:02 +0000 +Subject: x86: Fix a bogus unwind annotation in lib/semaphore_32.S + +From: Jan Beulich <JBeulich@novell.com> + +commit e938c287ea8d977e079f07464ac69923412663ce upstream. + +'simple' would have required specifying current frame address +and return address location manually, but that's obviously not +the case (and not necessary) here. + +Signed-off-by: Jan Beulich <jbeulich@novell.com> +LKML-Reference: <4D6D1082020000780003454C@vpn.id2.novell.com> +Signed-off-by: Ingo Molnar <mingo@elte.hu> +Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de> + +--- + arch/x86/lib/semaphore_32.S | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/arch/x86/lib/semaphore_32.S ++++ b/arch/x86/lib/semaphore_32.S +@@ -36,7 +36,7 @@ + */ + #ifdef CONFIG_SMP + ENTRY(__write_lock_failed) +- CFI_STARTPROC simple ++ CFI_STARTPROC + FRAME + 2: LOCK_PREFIX + addl $ RW_LOCK_BIAS,(%eax) |