diff mbox

[kvm-kmod,2/2] sync: copy linux/vfio.h from kvm source tree

Message ID 20140422145202.GB1630@ERROL.INI.CMU.EDU (mailing list archive)
State New, archived
Headers show

Commit Message

Gabriel L. Somlo April 22, 2014, 2:52 p.m. UTC
Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
---

vfio.c gets copied by sync, and it needs vfio.h. I don't think there's
an easy way to #define ourselves out of this one, copying vfio.h into
kvm-kmod/include/linux/ seems to be the path of least resistance...

Thanks,
   Gabriel

P.S. I'm not a native Python speaker, so, while the glob() line does the
job, it may not be the most beautiful way to express the new requirement :)

 sync | 1 +
 1 file changed, 1 insertion(+)

Comments

Jan Kiszka April 22, 2014, 2:57 p.m. UTC | #1
On 2014-04-22 16:52, gsomlo@gmail.com wrote:
> Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
> ---
> 
> vfio.c gets copied by sync, and it needs vfio.h. I don't think there's
> an easy way to #define ourselves out of this one, copying vfio.h into
> kvm-kmod/include/linux/ seems to be the path of least resistance...
> 
> Thanks,
>    Gabriel
> 
> P.S. I'm not a native Python speaker, so, while the glob() line does the
> job, it may not be the most beautiful way to express the new requirement :)

I've a different mother languages as well ;).

Did you try if ...linux/{kvm*,vfio}.h works? If we have shell power here
for pattern matching, it should.

Jan

> 
>  sync | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/sync b/sync
> index e447ec4..9902a11 100755
> --- a/sync
> +++ b/sync
> @@ -433,6 +433,7 @@ def header_sync(arch):
>      T = 'header'
>      rmtree(T)
>      for file in (glob('%(linux)s/include/linux/kvm*.h' % { 'linux': linux }) +
> +                 glob('%(linux)s/include/linux/vfio.h' % { 'linux': linux }) +
>                   glob('%(linux)s/include/uapi/linux/kvm*.h' % { 'linux': linux })):
>          out = ('%(T)s/include/linux/%(name)s'
>                 % { 'T': T, 'name': os.path.basename(file) })
>
Gabriel L. Somlo April 22, 2014, 6:43 p.m. UTC | #2
On Tue, Apr 22, 2014 at 04:57:32PM +0200, Jan Kiszka wrote:
> On 2014-04-22 16:52, gsomlo@gmail.com wrote:
> > Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
> > ---
> > 
> > vfio.c gets copied by sync, and it needs vfio.h. I don't think there's
> > an easy way to #define ourselves out of this one, copying vfio.h into
> > kvm-kmod/include/linux/ seems to be the path of least resistance...
> > 
> > Thanks,
> >    Gabriel
> > 
> > P.S. I'm not a native Python speaker, so, while the glob() line does the
> > job, it may not be the most beautiful way to express the new requirement :)
> 
> I've a different mother languages as well ;).
> 
> Did you try if ...linux/{kvm*,vfio}.h works? If we have shell power here
> for pattern matching, it should.

I played around a bit, and I couldn't find a way to do full regex for
a glob() argument.

You can pick from a set of characters at a time:

'foo[0-9]bar' would match 'foo0bar', 'foo1bar', etc.

But nothing I found allows you to pick from a set of *substrings*,
which is what we'd need:

'foo(xyz|abc)bar' to match 'fooxyzbar' and 'fooabcbar' (but *not* say,
'foo123bar').

I tried parentheses, curly braces, with and without '\', with no success.

Not sure at this point there *is* a more eloquent way to express it
than what I sent you originally.

Learning Python *is* on my bucket list, just not right this minute... :)

Thanks,
--Gabriel

> > 
> >  sync | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/sync b/sync
> > index e447ec4..9902a11 100755
> > --- a/sync
> > +++ b/sync
> > @@ -433,6 +433,7 @@ def header_sync(arch):
> >      T = 'header'
> >      rmtree(T)
> >      for file in (glob('%(linux)s/include/linux/kvm*.h' % { 'linux': linux }) +
> > +                 glob('%(linux)s/include/linux/vfio.h' % { 'linux': linux }) +
> >                   glob('%(linux)s/include/uapi/linux/kvm*.h' % { 'linux': linux })):
> >          out = ('%(T)s/include/linux/%(name)s'
> >                 % { 'T': T, 'name': os.path.basename(file) })
> > 
> 
> -- 
> Siemens AG, Corporate Technology, CT RTC ITP SES-DE
> Corporate Competence Center Embedded Linux
--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Jan Kiszka April 23, 2014, 6 a.m. UTC | #3
On 2014-04-22 20:43, Gabriel L. Somlo wrote:
> On Tue, Apr 22, 2014 at 04:57:32PM +0200, Jan Kiszka wrote:
>> On 2014-04-22 16:52, gsomlo@gmail.com wrote:
>>> Signed-off-by: Gabriel Somlo <somlo@cmu.edu>
>>> ---
>>>
>>> vfio.c gets copied by sync, and it needs vfio.h. I don't think there's
>>> an easy way to #define ourselves out of this one, copying vfio.h into
>>> kvm-kmod/include/linux/ seems to be the path of least resistance...
>>>
>>> Thanks,
>>>    Gabriel
>>>
>>> P.S. I'm not a native Python speaker, so, while the glob() line does the
>>> job, it may not be the most beautiful way to express the new requirement :)
>>
>> I've a different mother languages as well ;).
>>
>> Did you try if ...linux/{kvm*,vfio}.h works? If we have shell power here
>> for pattern matching, it should.
> 
> I played around a bit, and I couldn't find a way to do full regex for
> a glob() argument.
> 
> You can pick from a set of characters at a time:
> 
> 'foo[0-9]bar' would match 'foo0bar', 'foo1bar', etc.
> 
> But nothing I found allows you to pick from a set of *substrings*,
> which is what we'd need:
> 
> 'foo(xyz|abc)bar' to match 'fooxyzbar' and 'fooabcbar' (but *not* say,
> 'foo123bar').
> 
> I tried parentheses, curly braces, with and without '\', with no success.
> 
> Not sure at this point there *is* a more eloquent way to express it
> than what I sent you originally.
> 
> Learning Python *is* on my bucket list, just not right this minute... :)

Anyway, thanks for the patches - merged now as-is.

Jan
diff mbox

Patch

diff --git a/sync b/sync
index e447ec4..9902a11 100755
--- a/sync
+++ b/sync
@@ -433,6 +433,7 @@  def header_sync(arch):
     T = 'header'
     rmtree(T)
     for file in (glob('%(linux)s/include/linux/kvm*.h' % { 'linux': linux }) +
+                 glob('%(linux)s/include/linux/vfio.h' % { 'linux': linux }) +
                  glob('%(linux)s/include/uapi/linux/kvm*.h' % { 'linux': linux })):
         out = ('%(T)s/include/linux/%(name)s'
                % { 'T': T, 'name': os.path.basename(file) })