lkml.org 
[lkml]   [2014]   [Jan]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH 1/3] memblock, nobootmem: Add memblock_virt_alloc_low()
From
On Fri, Jan 24, 2014 at 11:25 AM, Konrad Rzeszutek Wilk
<konrad.wilk@oracle.com> wrote:
> On Fri, Jan 24, 2014 at 11:11:10AM -0800, Yinghai Lu wrote:
>> The new memblock_virt APIs are used to replaced old bootmem API.
>>
>> We need to allocate page below 4G for swiotlb.
>>
>> That should fix regression on Andrew's system that is using swiotlb.
>
> Please include the title of the patch that caused the regression.
> I presume it is "mm/lib/swiotlb: Use memblock apis for early memory allocations"
>
> Interestingly enough when I asked about it:
>
> https://lkml.org/lkml/2013/11/9/280
>
>
> >> v_overflow_buffer = memblock_virt_alloc_align_nopanic(
> >> + PAGE_ALIGN(io_tlb_overflow),
> >> + PAGE_SIZE);
> >
> > Does this guarantee that the pages will be allocated below 4GB?
> >
> Yes. The memblock layer still allocates memory from lowmem. As I
> mentioned, there is no change in the behavior than what is today
> apart from just the interface change.
>
> How did that happend? Was there another patch in the series that altered
> such assumption?
>

Yes, that is one.

He chose to set memblock.current_limit to max_low_mapped. (that is under 4g).

but it broke big numa system as all boot mem is under 4G and system
with lots of memory will need to
have big chunk for vmemmap .

Before that patch, we need to add another API to make sure those
swiotlb under 4G.

Thanks

Yinghai


\
 
 \ /
  Last update: 2014-01-24 21:21    [W:0.082 / U:0.156 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site