* [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup
@ 2013-06-13 20:17 Yinghai Lu
2013-06-13 20:17 ` [PATCH v3 1/2] x86, mtrr: Fix original mtrr range get " Yinghai Lu
` (2 more replies)
0 siblings, 3 replies; 10+ messages in thread
From: Yinghai Lu @ 2013-06-13 20:17 UTC (permalink / raw)
To: H. Peter Anvin, Andrew Morton
Cc: Thomas Gleixner, Ingo Molnar, Joshua Covington, linux-kernel,
Yinghai Lu
Joshua reported: Commit cd7b304dfaf1 (x86, range: fix missing merge
during add range) broke mtrr cleanup on his setup in 3.9.5.
corresponding commit in upstream is fbe06b7bae7c.
*BAD*gran_size: 64K chunk_size: 16M num_reg: 6 lose cover RAM: -0G
https://bugzilla.kernel.org/show_bug.cgi?id=59491
Fix it from two places, so late mtrr cleanup side and range add side.
x86, mtrr: Fix original mtrr range get for mtrr_cleanup
range: Do not add new blank slot with add_range_with_merge
Please apply them for v3.10.
Thanks
Yinghai
^ permalink raw reply [flat|nested] 10+ messages in thread* [PATCH v3 1/2] x86, mtrr: Fix original mtrr range get for mtrr_cleanup 2013-06-13 20:17 [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup Yinghai Lu @ 2013-06-13 20:17 ` Yinghai Lu 2013-06-18 16:25 ` Josh Boyer 2013-06-18 16:52 ` [tip:x86/urgent] " tip-bot for Yinghai Lu 2013-06-13 20:17 ` [PATCH v3 2/2] range: Do not add new blank slot with add_range_with_merge Yinghai Lu 2013-06-18 16:29 ` [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup H. Peter Anvin 2 siblings, 2 replies; 10+ messages in thread From: Yinghai Lu @ 2013-06-13 20:17 UTC (permalink / raw) To: H. Peter Anvin, Andrew Morton Cc: Thomas Gleixner, Ingo Molnar, Joshua Covington, linux-kernel, Yinghai Lu, stable Joshua reported: Commit cd7b304dfaf1 (x86, range: fix missing merge during add range) broke mtrr cleanup on his setup in 3.9.5. corresponding commit in upstream is fbe06b7bae7c. *BAD*gran_size: 64K chunk_size: 16M num_reg: 6 lose cover RAM: -0G https://bugzilla.kernel.org/show_bug.cgi?id=59491 So it rejects new var mtrr layout. It turns out we have some problem with initial mtrr range retrievel. current sequence is: x86_get_mtrr_mem_range ==> bunchs of add_range_with_merge ==> bunchs of subract_range ==> clean_sort_range add_range_with_merge for [0,1M) sort_range() add_range_with_merge could have blank slots, so we can not just sort only, that will have final result have extra blank slot in head. So move that calling add_range_with_merge for [0,1M), with that we could avoid extra clean_sort_range calling. Reported-by: Joshua Covington <joshuacov@googlemail.com> Tested-by: Joshua Covington <joshuacov@googlemail.com> Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: <stable@vger.kernel.org> v3.9 --- arch/x86/kernel/cpu/mtrr/cleanup.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) Index: linux-2.6/arch/x86/kernel/cpu/mtrr/cleanup.c =================================================================== --- linux-2.6.orig/arch/x86/kernel/cpu/mtrr/cleanup.c +++ linux-2.6/arch/x86/kernel/cpu/mtrr/cleanup.c @@ -714,15 +714,15 @@ int __init mtrr_cleanup(unsigned address if (mtrr_tom2) x_remove_size = (mtrr_tom2 >> PAGE_SHIFT) - x_remove_base; - nr_range = x86_get_mtrr_mem_range(range, 0, x_remove_base, x_remove_size); /* * [0, 1M) should always be covered by var mtrr with WB * and fixed mtrrs should take effect before var mtrr for it: */ - nr_range = add_range_with_merge(range, RANGE_NUM, nr_range, 0, + nr_range = add_range_with_merge(range, RANGE_NUM, 0, 0, 1ULL<<(20 - PAGE_SHIFT)); - /* Sort the ranges: */ - sort_range(range, nr_range); + /* add from var mtrr at last */ + nr_range = x86_get_mtrr_mem_range(range, nr_range, + x_remove_base, x_remove_size); range_sums = sum_ranges(range, nr_range); printk(KERN_INFO "total RAM covered: %ldM\n", ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v3 1/2] x86, mtrr: Fix original mtrr range get for mtrr_cleanup 2013-06-13 20:17 ` [PATCH v3 1/2] x86, mtrr: Fix original mtrr range get " Yinghai Lu @ 2013-06-18 16:25 ` Josh Boyer 2013-06-18 16:52 ` [tip:x86/urgent] " tip-bot for Yinghai Lu 1 sibling, 0 replies; 10+ messages in thread From: Josh Boyer @ 2013-06-18 16:25 UTC (permalink / raw) To: Yinghai Lu Cc: H. Peter Anvin, Andrew Morton, Thomas Gleixner, Ingo Molnar, Joshua Covington, Linux-Kernel@Vger. Kernel. Org, stable@vger.kernel.org, Linus Torvalds On Thu, Jun 13, 2013 at 4:17 PM, Yinghai Lu <yinghai@kernel.org> wrote: > Joshua reported: Commit cd7b304dfaf1 (x86, range: fix missing merge > during add range) broke mtrr cleanup on his setup in 3.9.5. > corresponding commit in upstream is fbe06b7bae7c. > > *BAD*gran_size: 64K chunk_size: 16M num_reg: 6 lose cover RAM: -0G > > https://bugzilla.kernel.org/show_bug.cgi?id=59491 > > So it rejects new var mtrr layout. > > It turns out we have some problem with initial mtrr range retrievel. > current sequence is: > x86_get_mtrr_mem_range > ==> bunchs of add_range_with_merge > ==> bunchs of subract_range > ==> clean_sort_range > add_range_with_merge for [0,1M) > sort_range() > > add_range_with_merge could have blank slots, so we can not just > sort only, that will have final result have extra blank slot in head. > > So move that calling add_range_with_merge for [0,1M), with that we > could avoid extra clean_sort_range calling. > > Reported-by: Joshua Covington <joshuacov@googlemail.com> > Tested-by: Joshua Covington <joshuacov@googlemail.com> > Signed-off-by: Yinghai Lu <yinghai@kernel.org> > Cc: <stable@vger.kernel.org> v3.9 We're at -rc6 now and this and it's companion aren't in Linus' tree, which means the broken 3.9.y stable series doesn't have them either. It's been posted for a while now, and v3 was really a minor cleanup. Is there some reason this is still not merged? We've been carrying v2 in Fedora for a bit now and it's cleared up the issue for a number of people. josh ^ permalink raw reply [flat|nested] 10+ messages in thread
* [tip:x86/urgent] x86, mtrr: Fix original mtrr range get for mtrr_cleanup 2013-06-13 20:17 ` [PATCH v3 1/2] x86, mtrr: Fix original mtrr range get " Yinghai Lu 2013-06-18 16:25 ` Josh Boyer @ 2013-06-18 16:52 ` tip-bot for Yinghai Lu 1 sibling, 0 replies; 10+ messages in thread From: tip-bot for Yinghai Lu @ 2013-06-18 16:52 UTC (permalink / raw) To: linux-tip-commits; +Cc: linux-kernel, hpa, mingo, yinghai, joshuacov, tglx, hpa Commit-ID: d8d386c10630d8f7837700f4c466443d49e12cc0 Gitweb: http://git.kernel.org/tip/d8d386c10630d8f7837700f4c466443d49e12cc0 Author: Yinghai Lu <yinghai@kernel.org> AuthorDate: Thu, 13 Jun 2013 13:17:01 -0700 Committer: H. Peter Anvin <hpa@linux.intel.com> CommitDate: Tue, 18 Jun 2013 11:32:02 -0500 x86, mtrr: Fix original mtrr range get for mtrr_cleanup Joshua reported: Commit cd7b304dfaf1 (x86, range: fix missing merge during add range) broke mtrr cleanup on his setup in 3.9.5. corresponding commit in upstream is fbe06b7bae7c. *BAD*gran_size: 64K chunk_size: 16M num_reg: 6 lose cover RAM: -0G https://bugzilla.kernel.org/show_bug.cgi?id=59491 So it rejects new var mtrr layout. It turns out we have some problem with initial mtrr range retrieval. The current sequence is: x86_get_mtrr_mem_range ==> bunchs of add_range_with_merge ==> bunchs of subract_range ==> clean_sort_range add_range_with_merge for [0,1M) sort_range() add_range_with_merge could have blank slots, so we can not just sort only, that will have final result have extra blank slot in head. So move that calling add_range_with_merge for [0,1M), with that we could avoid extra clean_sort_range calling. Reported-by: Joshua Covington <joshuacov@googlemail.com> Tested-by: Joshua Covington <joshuacov@googlemail.com> Signed-off-by: Yinghai Lu <yinghai@kernel.org> Link: http://lkml.kernel.org/r/1371154622-8929-2-git-send-email-yinghai@kernel.org Cc: <stable@vger.kernel.org> v3.9 Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> --- arch/x86/kernel/cpu/mtrr/cleanup.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/arch/x86/kernel/cpu/mtrr/cleanup.c b/arch/x86/kernel/cpu/mtrr/cleanup.c index 35ffda5..5f90b85 100644 --- a/arch/x86/kernel/cpu/mtrr/cleanup.c +++ b/arch/x86/kernel/cpu/mtrr/cleanup.c @@ -714,15 +714,15 @@ int __init mtrr_cleanup(unsigned address_bits) if (mtrr_tom2) x_remove_size = (mtrr_tom2 >> PAGE_SHIFT) - x_remove_base; - nr_range = x86_get_mtrr_mem_range(range, 0, x_remove_base, x_remove_size); /* * [0, 1M) should always be covered by var mtrr with WB * and fixed mtrrs should take effect before var mtrr for it: */ - nr_range = add_range_with_merge(range, RANGE_NUM, nr_range, 0, + nr_range = add_range_with_merge(range, RANGE_NUM, 0, 0, 1ULL<<(20 - PAGE_SHIFT)); - /* Sort the ranges: */ - sort_range(range, nr_range); + /* add from var mtrr at last */ + nr_range = x86_get_mtrr_mem_range(range, nr_range, + x_remove_base, x_remove_size); range_sums = sum_ranges(range, nr_range); printk(KERN_INFO "total RAM covered: %ldM\n", ^ permalink raw reply related [flat|nested] 10+ messages in thread
* [PATCH v3 2/2] range: Do not add new blank slot with add_range_with_merge 2013-06-13 20:17 [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup Yinghai Lu 2013-06-13 20:17 ` [PATCH v3 1/2] x86, mtrr: Fix original mtrr range get " Yinghai Lu @ 2013-06-13 20:17 ` Yinghai Lu 2013-06-18 16:52 ` [tip:x86/urgent] " tip-bot for Yinghai Lu 2013-06-18 16:29 ` [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup H. Peter Anvin 2 siblings, 1 reply; 10+ messages in thread From: Yinghai Lu @ 2013-06-13 20:17 UTC (permalink / raw) To: H. Peter Anvin, Andrew Morton Cc: Thomas Gleixner, Ingo Molnar, Joshua Covington, linux-kernel, Yinghai Lu, stable Joshua reported: Commit cd7b304dfaf1 (x86, range: fix missing merge during add range) broke mtrr cleanup on his setup in 3.9.5. corresponding commit in upstream is fbe06b7bae7c. The reason is add_range_with_merge could generate blank spot. We could avoid that by searching new expanded start/end, that new range should include all connected ranges in range array. At last add the new expanded start/end to the range array. Also move up left array so do not add new blank slot in the range array. -v2: move left array to avoid enhance add_range() -v3: include fix from Joshua about memmove declaring when DYN_DEBUG is used. Reported-by: Joshua Covington <joshuacov@googlemail.com> Tested-by: Joshua Covington <joshuacov@googlemail.com> Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: <stable@vger.kernel.org> v3.9 --- kernel/range.c | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) Index: linux-2.6/kernel/range.c =================================================================== --- linux-2.6.orig/kernel/range.c +++ linux-2.6/kernel/range.c @@ -4,7 +4,7 @@ #include <linux/kernel.h> #include <linux/init.h> #include <linux/sort.h> - +#include <linux/string.h> #include <linux/range.h> int add_range(struct range *range, int az, int nr_range, u64 start, u64 end) @@ -32,9 +32,8 @@ int add_range_with_merge(struct range *r if (start >= end) return nr_range; - /* Try to merge it with old one: */ + /* get new start/end: */ for (i = 0; i < nr_range; i++) { - u64 final_start, final_end; u64 common_start, common_end; if (!range[i].end) @@ -45,14 +44,16 @@ int add_range_with_merge(struct range *r if (common_start > common_end) continue; - final_start = min(range[i].start, start); - final_end = max(range[i].end, end); - - /* clear it and add it back for further merge */ - range[i].start = 0; - range[i].end = 0; - return add_range_with_merge(range, az, nr_range, - final_start, final_end); + /* new start/end, will add it back at last */ + start = min(range[i].start, start); + end = max(range[i].end, end); + + memmove(&range[i], &range[i + 1], + (nr_range - (i + 1)) * sizeof(range[i])); + range[nr_range - 1].start = 0; + range[nr_range - 1].end = 0; + nr_range--; + i--; } /* Need to add it: */ ^ permalink raw reply [flat|nested] 10+ messages in thread
* [tip:x86/urgent] range: Do not add new blank slot with add_range_with_merge 2013-06-13 20:17 ` [PATCH v3 2/2] range: Do not add new blank slot with add_range_with_merge Yinghai Lu @ 2013-06-18 16:52 ` tip-bot for Yinghai Lu 0 siblings, 0 replies; 10+ messages in thread From: tip-bot for Yinghai Lu @ 2013-06-18 16:52 UTC (permalink / raw) To: linux-tip-commits; +Cc: linux-kernel, hpa, mingo, yinghai, joshuacov, tglx, hpa Commit-ID: 0541881502a1276149889fe468662ff6a8fc8f6d Gitweb: http://git.kernel.org/tip/0541881502a1276149889fe468662ff6a8fc8f6d Author: Yinghai Lu <yinghai@kernel.org> AuthorDate: Thu, 13 Jun 2013 13:17:02 -0700 Committer: H. Peter Anvin <hpa@linux.intel.com> CommitDate: Tue, 18 Jun 2013 11:32:10 -0500 range: Do not add new blank slot with add_range_with_merge Joshua reported: Commit cd7b304dfaf1 (x86, range: fix missing merge during add range) broke mtrr cleanup on his setup in 3.9.5. corresponding commit in upstream is fbe06b7bae7c. The reason is add_range_with_merge could generate blank spot. We could avoid that by searching new expanded start/end, that new range should include all connected ranges in range array. At last add the new expanded start/end to the range array. Also move up left array so do not add new blank slot in the range array. -v2: move left array to avoid enhance add_range() -v3: include fix from Joshua about memmove declaring when DYN_DEBUG is used. Reported-by: Joshua Covington <joshuacov@googlemail.com> Tested-by: Joshua Covington <joshuacov@googlemail.com> Signed-off-by: Yinghai Lu <yinghai@kernel.org> Link: http://lkml.kernel.org/r/1371154622-8929-3-git-send-email-yinghai@kernel.org Cc: <stable@vger.kernel.org> v3.9 Signed-off-by: H. Peter Anvin <hpa@linux.intel.com> --- kernel/range.c | 21 +++++++++++---------- 1 file changed, 11 insertions(+), 10 deletions(-) diff --git a/kernel/range.c b/kernel/range.c index eb911db..322ea8e 100644 --- a/kernel/range.c +++ b/kernel/range.c @@ -4,7 +4,7 @@ #include <linux/kernel.h> #include <linux/init.h> #include <linux/sort.h> - +#include <linux/string.h> #include <linux/range.h> int add_range(struct range *range, int az, int nr_range, u64 start, u64 end) @@ -32,9 +32,8 @@ int add_range_with_merge(struct range *range, int az, int nr_range, if (start >= end) return nr_range; - /* Try to merge it with old one: */ + /* get new start/end: */ for (i = 0; i < nr_range; i++) { - u64 final_start, final_end; u64 common_start, common_end; if (!range[i].end) @@ -45,14 +44,16 @@ int add_range_with_merge(struct range *range, int az, int nr_range, if (common_start > common_end) continue; - final_start = min(range[i].start, start); - final_end = max(range[i].end, end); + /* new start/end, will add it back at last */ + start = min(range[i].start, start); + end = max(range[i].end, end); - /* clear it and add it back for further merge */ - range[i].start = 0; - range[i].end = 0; - return add_range_with_merge(range, az, nr_range, - final_start, final_end); + memmove(&range[i], &range[i + 1], + (nr_range - (i + 1)) * sizeof(range[i])); + range[nr_range - 1].start = 0; + range[nr_range - 1].end = 0; + nr_range--; + i--; } /* Need to add it: */ ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup 2013-06-13 20:17 [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup Yinghai Lu 2013-06-13 20:17 ` [PATCH v3 1/2] x86, mtrr: Fix original mtrr range get " Yinghai Lu 2013-06-13 20:17 ` [PATCH v3 2/2] range: Do not add new blank slot with add_range_with_merge Yinghai Lu @ 2013-06-18 16:29 ` H. Peter Anvin 2013-06-18 17:28 ` Yinghai Lu 2 siblings, 1 reply; 10+ messages in thread From: H. Peter Anvin @ 2013-06-18 16:29 UTC (permalink / raw) To: Yinghai Lu Cc: Andrew Morton, Thomas Gleixner, Ingo Molnar, Joshua Covington, linux-kernel On 06/13/2013 03:17 PM, Yinghai Lu wrote: > Joshua reported: Commit cd7b304dfaf1 (x86, range: fix missing merge > during add range) broke mtrr cleanup on his setup in 3.9.5. > corresponding commit in upstream is fbe06b7bae7c. > > *BAD*gran_size: 64K chunk_size: 16M num_reg: 6 lose cover RAM: -0G > > https://bugzilla.kernel.org/show_bug.cgi?id=59491 > > Fix it from two places, so late mtrr cleanup side and range add side. > > x86, mtrr: Fix original mtrr range get for mtrr_cleanup > range: Do not add new blank slot with add_range_with_merge > > Please apply them for v3.10. > On this subject: what do we need to happen to be able to dump the MTRR cleanup stuff? -hpa ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup 2013-06-18 16:29 ` [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup H. Peter Anvin @ 2013-06-18 17:28 ` Yinghai Lu 2013-06-18 17:33 ` H. Peter Anvin 0 siblings, 1 reply; 10+ messages in thread From: Yinghai Lu @ 2013-06-18 17:28 UTC (permalink / raw) To: H. Peter Anvin Cc: Andrew Morton, Thomas Gleixner, Ingo Molnar, Joshua Covington, Linux Kernel Mailing List On Tue, Jun 18, 2013 at 9:29 AM, H. Peter Anvin <hpa@zytor.com> wrote: > > On this subject: what do we need to happen to be able to dump the MTRR > cleanup stuff? the old x server like to add Write-combining entry in MTRR. looks like drm for mga200 is adding that too ? We need to make them to use PAT instead. Yinghai ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup 2013-06-18 17:28 ` Yinghai Lu @ 2013-06-18 17:33 ` H. Peter Anvin 2013-06-18 18:24 ` Yinghai Lu 0 siblings, 1 reply; 10+ messages in thread From: H. Peter Anvin @ 2013-06-18 17:33 UTC (permalink / raw) To: Yinghai Lu Cc: Andrew Morton, Thomas Gleixner, Ingo Molnar, Joshua Covington, Linux Kernel Mailing List On 06/18/2013 12:28 PM, Yinghai Lu wrote: > On Tue, Jun 18, 2013 at 9:29 AM, H. Peter Anvin <hpa@zytor.com> wrote: >> >> On this subject: what do we need to happen to be able to dump the MTRR >> cleanup stuff? > > the old x server like to add Write-combining entry in MTRR. > looks like drm for mga200 is adding that too ? > "Old X server" here has been a long time now. I need to dig into the MGA200 I guess... > We need to make them to use PAT instead. Yes. -hpa ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup 2013-06-18 17:33 ` H. Peter Anvin @ 2013-06-18 18:24 ` Yinghai Lu 0 siblings, 0 replies; 10+ messages in thread From: Yinghai Lu @ 2013-06-18 18:24 UTC (permalink / raw) To: H. Peter Anvin Cc: Andrew Morton, Thomas Gleixner, Ingo Molnar, Joshua Covington, Linux Kernel Mailing List On Tue, Jun 18, 2013 at 10:33 AM, H. Peter Anvin <hpa@zytor.com> wrote: > On 06/18/2013 12:28 PM, Yinghai Lu wrote: >> On Tue, Jun 18, 2013 at 9:29 AM, H. Peter Anvin <hpa@zytor.com> wrote: >>> >>> On this subject: what do we need to happen to be able to dump the MTRR >>> cleanup stuff? >> >> the old x server like to add Write-combining entry in MTRR. >> looks like drm for mga200 is adding that too ? >> > > "Old X server" here has been a long time now. I need to dig into the > MGA200 I guess... > >> We need to make them to use PAT instead. looks that we have more mtrr_add calling: drivers/gpu/drm/ast/ast_ttm.c: ast->fb_mtrr = drm_mtrr_add(pci_resource_start(dev->pdev, 0), drivers/gpu/drm/cirrus/cirrus_ttm.c: cirrus->fb_mtrr = drm_mtrr_add(pci_resource_start(dev->pdev, 0), drivers/gpu/drm/drm_bufs.c: map->mtrr = mtrr_add(map->offset, map->size, drivers/gpu/drm/drm_pci.c: mtrr_add(dev->agp->agp_info.aper_base, drivers/gpu/drm/i915/i915_dma.c: dev_priv->mm.gtt_mtrr = mtrr_add(base, size, MTRR_TYPE_WRCOMB, 1); drivers/gpu/drm/mgag200/mgag200_ttm.c: mdev->fb_mtrr = drm_mtrr_add(pci_resource_start(dev->pdev, 0), drivers/gpu/drm/nouveau/nouveau_ttm.c: drm->ttm.mtrr = drm_mtrr_add(pci_resource_start(dev->pdev, 1), drivers/gpu/drm/radeon/radeon_object.c: rdev->mc.vram_mtrr = mtrr_add(rdev->mc.aper_base, rdev->mc.aper_size, drivers/gpu/drm/savage/savage_bci.c: drm_mtrr_add(dev_priv->mtrr[0].base, drivers/gpu/drm/savage/savage_bci.c: drm_mtrr_add(dev_priv->mtrr[1].base, drivers/gpu/drm/savage/savage_bci.c: drm_mtrr_add(dev_priv->mtrr[2].base, drivers/gpu/drm/savage/savage_bci.c: drm_mtrr_add(dev_priv->mtrr[0].base, drivers/gpu/drm/vmwgfx/vmwgfx_drv.c: dev_priv->mmio_mtrr = drm_mtrr_add(dev_priv->mmio_start, drivers/infiniband/hw/ipath/ipath_wc_x86_64.c: cookie = mtrr_add(pioaddr, piolen, MTRR_TYPE_WRCOMB, 0); drivers/infiniband/hw/ipath/ipath_wc_x86_64.c: "mtrr_add() WC for PIO bufs " drivers/infiniband/hw/qib/qib_wc_x86_64.c: cookie = mtrr_add(pioaddr, piolen, MTRR_TYPE_WRCOMB, 0); drivers/infiniband/hw/qib/qib_wc_x86_64.c: "mtrr_add() WC for PIO bufs failed (%d)\n", drivers/media/pci/ivtv/ivtvfb.c: if (mtrr_add(oi->fb_start_aligned_physaddr, drivers/message/fusion/mptbase.c: ioc->mtrr_reg = mtrr_add(ioc->req_frames_dma, drivers/net/ethernet/myricom/myri10ge/myri10ge.c: mgp->mtrr = mtrr_add(mgp->iomem_base, mgp->board_span, will be in drm: drivers/staging/xgifb/XGI_main_26.c: xgifb_info->mtrr = mtrr_add(xgifb_info->video_base, video: drivers/video/arkfb.c: par->mtrr_reg = mtrr_add(info->fix.smem_start, info->fix.smem_len, MTRR_TYPE_WRCOMB, 1); drivers/video/aty/aty128fb.c: par->mtrr.vram = mtrr_add(info->fix.smem_start, drivers/video/aty/atyfb_base.c: par->mtrr_aper = mtrr_add(par->res_start, par->res_size, drivers/video/aty/atyfb_base.c: par->mtrr_reg = mtrr_add(par->res_start + 0x800000 - drivers/video/aty/radeon_base.c: rinfo->mtrr_hdl = nomtrr ? -1 : mtrr_add(rinfo->fb_base_phys, drivers/video/gbefb.c: mtrr_add(gbe_mem_phys, gbe_mem_size, MTRR_TYPE_WRCOMB, 1); drivers/video/i740fb.c: par->mtrr_reg = mtrr_add(info->fix.smem_start, drivers/video/i810/i810_main.h: par->mtrr_reg = mtrr_add((u32) par->aperture.physical, drivers/video/intelfb/intelfbdrv.c: dinfo->mtrr_reg = mtrr_add(dinfo->aperture.physical, drivers/video/kyro/fbdev.c: mtrr_add(kyro_fix.smem_start, drivers/video/matrox/matroxfb_base.c: minfo->mtrr.vram = mtrr_add(video_base_phys, minfo->video.len, MTRR_TYPE_WRCOMB, 1); drivers/video/neofb.c: mtrr_add(info->fix.smem_start, pci_resource_len(dev, 0), drivers/video/nvidia/nvidia.c: par->mtrr.vram = mtrr_add(nvidiafb_fix.smem_start, drivers/video/pm2fb.c: mtrr_add(pm2fb_fix.smem_start, drivers/video/pm3fb.c: par->mtrr_handle = mtrr_add(pm3fb_fix.smem_start, drivers/video/riva/fbdev.c: default_par->mtrr.vram = mtrr_add(rivafb_fix.smem_start, drivers/video/s3fb.c: par->mtrr_reg = mtrr_add(info->fix.smem_start, info->fix.smem_len, MTRR_TYPE_WRCOMB, 1); drivers/video/savage/savagefb_driver.c: par->video.mtrr = mtrr_add(par->video.pbase, video_len, drivers/video/sgivwfb.c: mtrr_add(sgivwfb_mem_phys, sgivwfb_mem_size, MTRR_TYPE_WRCOMB, 1); drivers/video/sis/sis_main.c: ivideo->mtrr = mtrr_add(ivideo->video_base, ivideo->video_size, drivers/video/tdfxfb.c:static inline int mtrr_add(unsigned long base, unsigned long size, drivers/video/tdfxfb.c: mtrr_add(info->fix.smem_start, info->fix.smem_len, drivers/video/uvesafb.c: rc = mtrr_add(info->fix.smem_start, drivers/video/vesafb.c: rc = mtrr_add(vesafb_fix.smem_start, temp_size, drivers/video/vt8623fb.c: par->mtrr_reg = mtrr_add(info->fix.smem_start, info->fix.smem_len, MTRR_TYPE_WRCOMB, 1); ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2013-06-18 18:24 UTC | newest] Thread overview: 10+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2013-06-13 20:17 [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup Yinghai Lu 2013-06-13 20:17 ` [PATCH v3 1/2] x86, mtrr: Fix original mtrr range get " Yinghai Lu 2013-06-18 16:25 ` Josh Boyer 2013-06-18 16:52 ` [tip:x86/urgent] " tip-bot for Yinghai Lu 2013-06-13 20:17 ` [PATCH v3 2/2] range: Do not add new blank slot with add_range_with_merge Yinghai Lu 2013-06-18 16:52 ` [tip:x86/urgent] " tip-bot for Yinghai Lu 2013-06-18 16:29 ` [PATCH v3 0/2] x86, mtrr: fixs for mtrr_cleanup H. Peter Anvin 2013-06-18 17:28 ` Yinghai Lu 2013-06-18 17:33 ` H. Peter Anvin 2013-06-18 18:24 ` Yinghai Lu
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox