Re: [PATCH] cleanup hardcoding __pa/__va macros etc. (take-2)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>> The idea is to differentiate the Kseg0/Kseg1 segments in the physical area.
>> Beyond these areas lies the mapped area (or the HIGHMEM). What complicates
>> this matter further is their overlapping nature. The __pa()/__va() treated
>> all addresses mapped into PAGE_OFFSET (8000_0000) area. The effort is to
>> correctly differentiate these areas.
> 
> Yes, __va() and __pa() are used to convert an physical address from/to
> an kernel logical address (i.e. low unmapped virtual address).
> 
> I think passing another sort of addresses to them is simply wrong.

Agreed. 

But, then again treating all addresses as above PAGE_OFFSET is also wrong :)
I looked at it just as a work around. These macros are called from so many
other places that if an access is made at say 4000_0000 the kernel will oops
telling it was C000_0000 access error. Now that confused me a lot! With this
change now kernel oops on 4000_0000 :)

Anyway, you may ignore __pa/__va macros.

Could you please look into other changes I proposed?


> 
> P.S.
> Please do not reply to git-commits@xxxxxxxxxxxxxxx

I am sorry. It was a stupid mistake in creating address book entry.




[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux