Re: [PATCH 5/13] KVM: virtualization infrastructure

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

 



Arnd Bergmann wrote:
+struct segment_descriptor {
+    u16 limit_low;
+    u16 base_low;
+    u8  base_mid;
+    u8  type : 4;
+    u8  system : 1;
+    u8  dpl : 2;
+    u8  present : 1;
+    u8  limit_high : 4;
+    u8  avl : 1;
+    u8  long_mode : 1;
+    u8  default_op : 1;
+    u8  granularity : 1;
+    u8  base_high;
+} __attribute__((packed));
Bitfields are generally frowned upon. It's better to define
constants for each of these and use a u64.
Any specific reasons?  I find the code much more readable (and
lowercase) with bitfields.

The strongest reason against bitfields is that they are not
endian-clean. This doesn't apply on a architecture-specific
patch such as KVM, but it just feels wrong to read code
with bit fields in the kernel.


Okay, will change.  It's very localized anyway.

--
Do not meddle in the internals of kernels, for they are subtle and quick to panic.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux