title: Kmalloc Alignment
body: <p>Lets say I allocate with kmalloc an array of uint64_t (and lets assume the size of the array is 32kB). I have the following questions :</p>
  
  <p>1) Is the array guaranteed to be page aligned ?
  2) Is the array guaranteed to be cache / block aligned ?
  3) Is there no guarantee at all ? </p>
  
  <p>When I allocate the array , and i use virt_to_phys to get the physical address of the array i am gettign physical addresses like 00000040142d5c00 and virtual addresses like fffffe07df400000</p>
  
  <p>Is there any chance that i will end up with alignment smaller than uint64_t , lets say 4 byte alignment or not ? </p>
  
  <p>Thank you in advance</p>