The check is missing in upstream. Patch sent but until this gets
merged, define it in compat tree for fixing compat-drm builds.
Also add a temporary header with the same name which will be used
to check whether the header should be included or not.
Signed-off-by: Ozan Çağlayan <[email protected]>
---
include/linux/compat-3.5.h | 6 ++++++
include/linux/vga_switcheroo.h | 6 ++++++
2 files changed, 12 insertions(+)
create mode 100644 include/linux/vga_switcheroo.h
diff --git a/include/linux/compat-3.5.h b/include/linux/compat-3.5.h
index 74c8176..e999aee 100644
--- a/include/linux/compat-3.5.h
+++ b/include/linux/compat-3.5.h
@@ -78,6 +78,12 @@ static inline int fault_in_multipages_readable(const char __user *uaddr,
/* switcheroo is available on >= 2.6.34 */
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
#include <linux/vga_switcheroo.h>
+
+/* FIXME: The include guard is sent upstream, drop this
+ * once the guard is merged. */
+#ifndef LINUX_VGA_SWITCHEROO_H
+#define LINUX_VGA_SWITCHEROO_H
+#endif
/*
* This backports:
*
diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h
new file mode 100644
index 0000000..26ac71d
--- /dev/null
+++ b/include/linux/vga_switcheroo.h
@@ -0,0 +1,6 @@
+/* Hack for fixing the missing include guard in upstream
+ * header. We will drop this when the patch is merged upstream. */
+
+#ifndef LINUX_VGA_SWITCHEROO_H
+#include_next <linux/vga_switcheroo.h>
+#endif
--
1.7.10.2
On Fri, Jun 22, 2012 at 4:25 AM, Ozan Çağlayan <[email protected]> wrote:
>> How about just adding this file but with something like this:
>>
>> #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
>> /*
>> * XXX: The include guard was sent upstream, drop this
>> * once the guard is merged.
>> */
>> #ifndef LINUX_VGA_SWITCHEROO_H /* in case this gets upstream */
>> #include_next <linux/vga_switcheroo.h>
>> #ifndef LINUX_VGA_SWITCHEROO_H /* do not redefine once this gets upstream */
>> #define LINUX_VGA_SWITCHEROO_H
>> #endif /* case 1 LINUX_VGA_SWITCHEROO_H
>> #endif /* case 2 LINUX_VGA_SWITCHEROO_H
>> #endif /* (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34)) */
>
> Ah, that is much clever, thanks.
No problem!
> I've tested in and it works correctly, will send a v3. But just to
> make clear: I'm just adding a vga_switcheroo.h with the above content
> and I don't touch compat-3.5.h right?
Yeap.
Luis
On Thu, Jun 21, 2012 at 8:25 AM, Ozan Çağlayan <[email protected]> wrote:
> The check is missing in upstream. Patch sent but until this gets
> merged, define it in compat tree for fixing compat-drm builds.
>
> Also add a temporary header with the same name which will be used
> to check whether the header should be included or not.
>
> Signed-off-by: Ozan Çağlayan <[email protected]>
> ---
> include/linux/compat-3.5.h | 6 ++++++
> include/linux/vga_switcheroo.h | 6 ++++++
> 2 files changed, 12 insertions(+)
> create mode 100644 include/linux/vga_switcheroo.h
>
> diff --git a/include/linux/compat-3.5.h b/include/linux/compat-3.5.h
> index 74c8176..e999aee 100644
> --- a/include/linux/compat-3.5.h
> +++ b/include/linux/compat-3.5.h
> @@ -78,6 +78,12 @@ static inline int fault_in_multipages_readable(const char __user *uaddr,
> /* switcheroo is available on >= 2.6.34 */
> #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
> #include <linux/vga_switcheroo.h>
> +
> +/* FIXME: The include guard is sent upstream, drop this
> + * once the guard is merged. */
> +#ifndef LINUX_VGA_SWITCHEROO_H
> +#define LINUX_VGA_SWITCHEROO_H
> +#endif
Don't you want this under the ifdef above?
> /*
> * This backports:
> *
> diff --git a/include/linux/vga_switcheroo.h b/include/linux/vga_switcheroo.h
> new file mode 100644
> index 0000000..26ac71d
> --- /dev/null
> +++ b/include/linux/vga_switcheroo.h
> @@ -0,0 +1,6 @@
> +/* Hack for fixing the missing include guard in upstream
> + * header. We will drop this when the patch is merged upstream. */
> +
How about just adding this file but with something like this:
#if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
/*
* XXX: The include guard was sent upstream, drop this
* once the guard is merged.
*/
#ifndef LINUX_VGA_SWITCHEROO_H /* in case this gets upstream */
#include_next <linux/vga_switcheroo.h>
#ifndef LINUX_VGA_SWITCHEROO_H /* do not redefine once this gets upstream */
#define LINUX_VGA_SWITCHEROO_H
#endif /* case 1 LINUX_VGA_SWITCHEROO_H
#endif /* case 2 LINUX_VGA_SWITCHEROO_H
#endif /* (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34)) */
Luis
> How about just adding this file but with something like this:
>
> #if (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34))
> /*
> * XXX: The include guard was sent upstream, drop this
> * once the guard is merged.
> */
> #ifndef LINUX_VGA_SWITCHEROO_H /* in case this gets upstream */
> #include_next <linux/vga_switcheroo.h>
> #ifndef LINUX_VGA_SWITCHEROO_H /* do not redefine once this gets upstream */
> #define LINUX_VGA_SWITCHEROO_H
> #endif /* case 1 LINUX_VGA_SWITCHEROO_H
> #endif /* case 2 LINUX_VGA_SWITCHEROO_H
> #endif /* (LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,34)) */
Ah, that is much clever, thanks.
I've tested in and it works correctly, will send a v3. But just to
make clear: I'm just adding a vga_switcheroo.h with the above content
and I don't touch compat-3.5.h right?
--
Ozan Çağlayan