diff --git a/block-stray-block-put-after-teardown.patch b/block-stray-block-put-after-teardown.patch new file mode 100644 index 000000000..f4bf9c40c --- /dev/null +++ b/block-stray-block-put-after-teardown.patch @@ -0,0 +1,11 @@ +--- linux-2.6.39.noarch/block/elevator.c~ 2011-08-09 10:07:41.532774872 -0400 ++++ linux-2.6.39.noarch/block/elevator.c 2011-08-09 10:07:56.131724173 -0400 +@@ -815,7 +815,7 @@ void elv_completed_request(struct reques + */ + if (blk_account_rq(rq)) { + q->in_flight[rq_is_sync(rq)]--; +- if ((rq->cmd_flags & REQ_SORTED) && ++ if ((rq->cmd_flags & REQ_SORTED) && e->ops && + e->ops->elevator_completed_req_fn) + e->ops->elevator_completed_req_fn(q, rq); + } diff --git a/kernel.spec b/kernel.spec index b0e948304..bf5ea6f0f 100644 --- a/kernel.spec +++ b/kernel.spec @@ -51,7 +51,7 @@ Summary: The Linux kernel # For non-released -rc kernels, this will be prepended with "0.", so # for example a 3 here will become 0.3 # -%global baserelease 1 +%global baserelease 2 %global fedora_build %{baserelease} # base_sublevel is the kernel version we're starting with and patching @@ -623,6 +623,8 @@ Patch1825: drm-intel-make-lvds-work.patch Patch1900: linux-2.6-intel-iommu-igfx.patch +Patch2000: block-stray-block-put-after-teardown.patch + # Quiet boot fixes # silence the ACPI blacklist code Patch2802: linux-2.6-silence-acpi-blacklist.patch @@ -1181,6 +1183,8 @@ ApplyOptionalPatch drm-intel-next.patch ApplyPatch drm-intel-make-lvds-work.patch ApplyPatch linux-2.6-intel-iommu-igfx.patch +ApplyPatch block-stray-block-put-after-teardown.patch + # silence the ACPI blacklist code ApplyPatch linux-2.6-silence-acpi-blacklist.patch @@ -1821,6 +1825,9 @@ fi # and build. %changelog +* Tue Aug 09 2011 Dave Jones 2.6.40.1-2 +- Fix stray block put after queue teardown (rhbz 728872) + * Sun Aug 07 2011 Dave Jones - Utrace fixes. (rhbz 728379)