Bug 249811 - Type __s64 may be not decleared
Type __s64 may be not decleared
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: kernel (Show other bugs)
All Linux
low Severity low
: ---
: ---
Assigned To: Anton Arapov
Martin Jenner
Depends On:
  Show dependency treegraph
Reported: 2007-07-27 04:32 EDT by Andrew
Modified: 2014-06-18 04:00 EDT (History)
2 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2007-08-06 07:11:50 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
Patch to /usr/include/linux/videodev2.patch (278 bytes, patch)
2007-07-27 04:32 EDT, Andrew
no flags Details | Diff
kernel-headers rpm (723.39 KB, application/x-rpm)
2007-08-06 02:14 EDT, Andrew
no flags Details

  None (edit)
Description Andrew 2007-07-27 04:32:55 EDT
Description of problem:
Type __s64 may be not declared in the file /usr/include/linux/videodev2.h on
line 622 and compiler exit with an error. I think it will be not bad to use #if
defined statement.

Version-Release number of selected component (if applicable):

[root@build linux]# rpm -qf videodev2.h

Additional info:
Small patch attached.
Comment 1 Andrew 2007-07-27 04:32:55 EDT
Created attachment 160104 [details]
Patch to /usr/include/linux/videodev2.patch
Comment 2 Anton Arapov 2007-08-04 06:46:26 EDT
It seems, you have incorrect videodev2.h header, probably derived from somewhere
else. Please, check twice yours kernel-header package. It must contain correct
version of mentioned header.

Please, inform me about the result. And provide me your kernel-header package in
bad case.
Comment 3 Andrew 2007-08-06 02:14:05 EDT
Created attachment 160728 [details]
kernel-headers rpm
Comment 4 Andrew 2007-08-06 02:16:17 EDT
[root@build ~]# rpm -q kernel-headers

It's unmodified RPM-package from RHEL5 distr.
Comment 5 Anton Arapov 2007-08-06 03:23:38 EDT
  So you have non original videodev2.h. As you can see there is correct header
in the original rpm, for sure.
  Please, reinstall this package on your pc. 
Comment 6 Andrew 2007-08-06 03:37:22 EDT
I think you don't understand my question.

On the line 622 you can see "__s64 value64;". Where the type "__s64" declared?
I've compile a program and compilation failed because of undeclared type so as a
variant I propose to use "#if defined" before this line.

Comment 7 Anton Arapov 2007-08-06 04:13:53 EDT
Yep, I've got it... But I can't reproduce this problem, I mean, I have no
problem with __s64 type using in this struct. Can you write some reproducing
this bug code.
Comment 8 Andrew 2007-08-06 04:28:25 EDT
I found that while I compiled kopete 0.12.2 http://kopete.kde.org/releases.php
(Source package link). 

Type "__s64" declared in the asm/types.h. We can see "#if defined(__GNUC__) &&
!defined(__STRICT_ANSI__)" above this declaration. But there is no checking of
this condition in videodev2.h.
Comment 9 Anton Arapov 2007-08-06 06:51:44 EDT
Ok. The fix proposed by you is not the root of the problem. This problem was
already discussed on LKML: http://marc.info/?l=linux-kernel&m=115830263230795&w=2

I think, the best for you in this case to use the same construction as used for
__u64, for the same reason, in kopete/libkopete/avdevice/videodevice.h, just add
the following lines to this header:
#ifndef __s64 //required by videodev.h
#define __s64 __signed__ long long
#endif // __s64
Comment 10 Andrew 2007-08-06 07:07:55 EDT
Well, I can solve problem myself. If it is not a problem of kernel-headers it's
good. Thank you!

Note You need to log in before you can comment on or make changes to this bug.