From: Greg Kroah-Hartman Date: Thu, 24 Jun 2010 23:23:28 +0000 (-0700) Subject: .27 patches X-Git-Tag: v2.6.31.14~21 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=b8f0aa4c176e3c477a0950dce0881306faf44be2;p=thirdparty%2Fkernel%2Fstable-queue.git .27 patches --- diff --git a/queue-2.6.27/do_generic_file_read-clear-page-errors-when-issuing-a-fresh-read-of-the-page.patch b/queue-2.6.27/do_generic_file_read-clear-page-errors-when-issuing-a-fresh-read-of-the-page.patch new file mode 100644 index 00000000000..218d474d218 --- /dev/null +++ b/queue-2.6.27/do_generic_file_read-clear-page-errors-when-issuing-a-fresh-read-of-the-page.patch @@ -0,0 +1,47 @@ +From 91803b499cca2fe558abad709ce83dc896b80950 Mon Sep 17 00:00:00 2001 +From: Jeff Moyer +Date: Wed, 26 May 2010 11:49:40 -0400 +Subject: do_generic_file_read: clear page errors when issuing a fresh read of the page + +From: Jeff Moyer + +commit 91803b499cca2fe558abad709ce83dc896b80950 upstream. + +I/O errors can happen due to temporary failures, like multipath +errors or losing network contact with the iSCSI server. Because +of that, the VM will retry readpage on the page. + +However, do_generic_file_read does not clear PG_error. This +causes the system to be unable to actually use the data in the +page cache page, even if the subsequent readpage completes +successfully! + +The function filemap_fault has had a ClearPageError before +readpage forever. This patch simply adds the same to +do_generic_file_read. + +Signed-off-by: Jeff Moyer +Signed-off-by: Rik van Riel +Acked-by: Larry Woodman +Signed-off-by: Linus Torvalds +Signed-off-by: Greg Kroah-Hartman + +--- + mm/filemap.c | 6 ++++++ + 1 file changed, 6 insertions(+) + +--- a/mm/filemap.c ++++ b/mm/filemap.c +@@ -1118,6 +1118,12 @@ page_not_up_to_date_locked: + } + + readpage: ++ /* ++ * A previous I/O error may have been due to temporary ++ * failures, eg. multipath errors. ++ * PG_error will be set again if readpage fails. ++ */ ++ ClearPageError(page); + /* Start the actual read. The read will unlock the page. */ + error = mapping->a_ops->readpage(filp, page); + diff --git a/queue-2.6.27/gconfig-fix-build-failure-on-fedora-13.patch b/queue-2.6.27/gconfig-fix-build-failure-on-fedora-13.patch new file mode 100644 index 00000000000..764cf967cc1 --- /dev/null +++ b/queue-2.6.27/gconfig-fix-build-failure-on-fedora-13.patch @@ -0,0 +1,41 @@ +From cbab05f041a4cff6ca15856bdd35238b282b64eb Mon Sep 17 00:00:00 2001 +From: Richard Kennedy +Date: Thu, 27 May 2010 10:22:28 +0100 +Subject: gconfig: fix build failure on fedora 13 + +From: Richard Kennedy + +commit cbab05f041a4cff6ca15856bdd35238b282b64eb upstream. + +Making gconfig fails on fedora 13 as the linker cannot resolve dlsym. + +Adding libdl to the link command fixes this. + +make shows this error :- + /usr/bin/ld: scripts/kconfig/kconfig_load.o: undefined reference to symbol 'dlsym@@GLIBC_2.2.5' + /usr/bin/ld: note: 'dlsym@@GLIBC_2.2.5' is defined in DSO /lib64/libdl.so.2 so try adding it to the linker command line + /lib64/libdl.so.2: could not read symbols: Invalid operation + +tested on x86_64 fedora 13. + +Signed-off-by: Richard Kennedy +Reviewed-by: WANG Cong +Signed-off-by: Andrew Morton +Signed-off-by: Michal Marek +Signed-off-by: Greg Kroah-Hartman + +--- + scripts/kconfig/Makefile | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/scripts/kconfig/Makefile ++++ b/scripts/kconfig/Makefile +@@ -161,7 +161,7 @@ HOSTCFLAGS_zconf.tab.o := -I$(src) + HOSTLOADLIBES_qconf = $(KC_QT_LIBS) -ldl + HOSTCXXFLAGS_qconf.o = $(KC_QT_CFLAGS) -D LKC_DIRECT_LINK + +-HOSTLOADLIBES_gconf = `pkg-config --libs gtk+-2.0 gmodule-2.0 libglade-2.0` ++HOSTLOADLIBES_gconf = `pkg-config --libs gtk+-2.0 gmodule-2.0 libglade-2.0` -ldl + HOSTCFLAGS_gconf.o = `pkg-config --cflags gtk+-2.0 gmodule-2.0 libglade-2.0` \ + -D LKC_DIRECT_LINK + diff --git a/queue-2.6.27/ipmi-handle-run_to_completion-properly-in-deliver_recv_msg.patch b/queue-2.6.27/ipmi-handle-run_to_completion-properly-in-deliver_recv_msg.patch new file mode 100644 index 00000000000..0793bf62d0e --- /dev/null +++ b/queue-2.6.27/ipmi-handle-run_to_completion-properly-in-deliver_recv_msg.patch @@ -0,0 +1,44 @@ +From a747c5abc329611220f16df0bb4cf0ca4a7fdf0c Mon Sep 17 00:00:00 2001 +From: Jiri Kosina +Date: Wed, 26 May 2010 14:43:53 -0700 +Subject: ipmi: handle run_to_completion properly in deliver_recv_msg() + +From: Jiri Kosina + +commit a747c5abc329611220f16df0bb4cf0ca4a7fdf0c upstream. + +If run_to_completion flag is set, it means that we are running in a +single-threaded mode, and thus no locks are held. + +This fixes a deadlock when IPMI notifier is being called during panic. + +Signed-off-by: Jiri Kosina +Acked-by: Corey Minyard +Signed-off-by: Andrew Morton +Signed-off-by: Linus Torvalds +Signed-off-by: Greg Kroah-Hartman + +--- + drivers/char/ipmi/ipmi_si_intf.c | 11 ++++++++--- + 1 file changed, 8 insertions(+), 3 deletions(-) + +--- a/drivers/char/ipmi/ipmi_si_intf.c ++++ b/drivers/char/ipmi/ipmi_si_intf.c +@@ -313,9 +313,14 @@ static void deliver_recv_msg(struct smi_ + { + /* Deliver the message to the upper layer with the lock + released. */ +- spin_unlock(&(smi_info->si_lock)); +- ipmi_smi_msg_received(smi_info->intf, msg); +- spin_lock(&(smi_info->si_lock)); ++ ++ if (smi_info->run_to_completion) { ++ ipmi_smi_msg_received(smi_info->intf, msg); ++ } else { ++ spin_unlock(&(smi_info->si_lock)); ++ ipmi_smi_msg_received(smi_info->intf, msg); ++ spin_lock(&(smi_info->si_lock)); ++ } + } + + static void return_hosed_msg(struct smi_info *smi_info, int cCode) diff --git a/queue-2.6.27/series b/queue-2.6.27/series index b29b12cca02..55e3b8df82a 100644 --- a/queue-2.6.27/series +++ b/queue-2.6.27/series @@ -7,3 +7,6 @@ powerpc-oprofile-fix-potential-buffer-overrun-in-op_model_cell.c.patch md-raid1-fix-counting-of-write-targets.patch md-fix-read-balancing-in-raid1-and-raid10-on-drives-2tb.patch md-set-mddev-readonly-flag-on-blkdev-blkroset-ioctl.patch +do_generic_file_read-clear-page-errors-when-issuing-a-fresh-read-of-the-page.patch +ipmi-handle-run_to_completion-properly-in-deliver_recv_msg.patch +gconfig-fix-build-failure-on-fedora-13.patch