• Yinghai Lu's avatar
    x86, kdump: Set crashkernel_low automatically · c729de8f
    Yinghai Lu authored
    Chao said that kdump does does work well on his system on 3.8
    without extra parameter, even iommu does not work with kdump.
    And now have to append crashkernel_low=Y in first kernel to make
    kdump work.
    
    We have now modified crashkernel=X to allocate memory beyong 4G (if
    available) and do not allocate low range for crashkernel if the user
    does not specify that with crashkernel_low=Y.  This causes regression
    if iommu is not enabled.  Without iommu, swiotlb needs to be setup in
    first 4G and there is no low memory available to second kernel.
    
    Set crashkernel_low automatically if the user does not specify that.
    
    For system that does support IOMMU with kdump properly, user could
    specify crashkernel_low=0 to save that 72M low ram.
    
    -v3: add swiotlb_size() according to Konrad.
    -v4: add comments what 8M is for according to hpa.
         also update more crashkernel_low= in kernel-parameters.txt
    -v5: update changelog according to Vivek.
    -v6: Change description about swiotlb referring according to HATAYAMA.
    Reported-by: 's avatarWANG Chao <chaowang@redhat.com>
    Tested-by: 's avatarWANG Chao <chaowang@redhat.com>
    Signed-off-by: 's avatarYinghai Lu <yinghai@kernel.org>
    Link: http://lkml.kernel.org/r/1366089828-19692-2-git-send-email-yinghai@kernel.orgAcked-by: 's avatarVivek Goyal <vgoyal@redhat.com>
    Signed-off-by: 's avatarH. Peter Anvin <hpa@linux.intel.com>
    c729de8f
swiotlb.c 26.7 KB