[dpdk-dev,v4,4/4] xen_dom0: replace strict_strtoul with kstrtoul

Message ID 1418209443-1744-5-git-send-email-jmiao@redhat.com (mailing list archive)
State Superseded, archived
Headers

Commit Message

Jincheng Miao Dec. 10, 2014, 11:04 a.m. UTC
  And add xen_dom0/compat.h for be compatible with older kernel.

Signed-off-by: Jincheng Miao <jmiao@redhat.com>
---
 lib/librte_eal/linuxapp/xen_dom0/compat.h       | 16 ++++++++++++++++
 lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c |  2 +-
 2 files changed, 17 insertions(+), 1 deletion(-)
 create mode 100644 lib/librte_eal/linuxapp/xen_dom0/compat.h
  

Comments

Thomas Monjalon Dec. 10, 2014, 12:27 p.m. UTC | #1
2014-12-10 19:04, Jincheng Miao:
> And add xen_dom0/compat.h for be compatible with older kernel.
> 
> Signed-off-by: Jincheng Miao <jmiao@redhat.com>
[...]
> new file mode 100644
> index 0000000..89dab27
> --- /dev/null
> +++ b/lib/librte_eal/linuxapp/xen_dom0/compat.h
[...]
> --- a/lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c
> +++ b/lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c
> @@ -123,7 +123,7 @@ store_memsize(struct device *dev, struct device_attribute *attr,
>  	int err = 0;
>  	unsigned long mem_size;
>  
> -	if (0 != strict_strtoul(buf, 0, &mem_size))
> +	if (0 != kstrtoul(buf, 0, &mem_size))
>  		return  -EINVAL;
>  
>  	mutex_lock(&dom0_dev.data_lock);
> 

Still no include of compat.h
  
Jincheng Miao Dec. 10, 2014, 1:03 p.m. UTC | #2
----- Original Message -----
> 2014-12-10 19:04, Jincheng Miao:
> > And add xen_dom0/compat.h for be compatible with older kernel.
> > 
> > Signed-off-by: Jincheng Miao <jmiao@redhat.com>
> [...]
> > new file mode 100644
> > index 0000000..89dab27
> > --- /dev/null
> > +++ b/lib/librte_eal/linuxapp/xen_dom0/compat.h
> [...]
> > --- a/lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c
> > +++ b/lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c
> > @@ -123,7 +123,7 @@ store_memsize(struct device *dev, struct
> > device_attribute *attr,
> >  	int err = 0;
> >  	unsigned long mem_size;
> >  
> > -	if (0 != strict_strtoul(buf, 0, &mem_size))
> > +	if (0 != kstrtoul(buf, 0, &mem_size))
> >  		return  -EINVAL;
> >  
> >  	mutex_lock(&dom0_dev.data_lock);
> > 
> 
> Still no include of compat.h

Sorry for that, resend PATCH v4 4/4 again.

> 
> --
> Thomas
>
  

Patch

diff --git a/lib/librte_eal/linuxapp/xen_dom0/compat.h b/lib/librte_eal/linuxapp/xen_dom0/compat.h
new file mode 100644
index 0000000..89dab27
--- /dev/null
+++ b/lib/librte_eal/linuxapp/xen_dom0/compat.h
@@ -0,0 +1,16 @@ 
+/*
+ * Minimal wrappers to allow compiling xen_dom0 on older kernels.
+ */
+
+#ifndef RHEL_RELEASE_VERSION
+#define RHEL_RELEASE_VERSION(a, b) (((a) << 8) + (b))
+#endif
+
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 39) && \
+	(!(defined(RHEL_RELEASE_CODE) && \
+	 RHEL_RELEASE_CODE >= RHEL_RELEASE_VERSION(6, 4)))
+
+#define kstrtoul strict_strtoul
+
+#endif /* < 2.6.39 */
+
diff --git a/lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c b/lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c
index dfb271d..8a3727d 100644
--- a/lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c
+++ b/lib/librte_eal/linuxapp/xen_dom0/dom0_mm_misc.c
@@ -123,7 +123,7 @@  store_memsize(struct device *dev, struct device_attribute *attr,
 	int err = 0;
 	unsigned long mem_size;
 
-	if (0 != strict_strtoul(buf, 0, &mem_size))
+	if (0 != kstrtoul(buf, 0, &mem_size))
 		return  -EINVAL;
 
 	mutex_lock(&dom0_dev.data_lock);