Bug 139494 - can't build using asm/io.h
can't build using asm/io.h
Status: CLOSED NOTABUG
Product: Red Hat Enterprise Linux 3
Classification: Red Hat
Component: glibc-kernheaders (Show other bugs)
3.0
ia64 Linux
medium Severity medium
: ---
: ---
Assigned To: David Woodhouse
Brian Brock
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2004-11-16 06:24 EST by Akira TAGOH
Modified: 2007-11-30 17:07 EST (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2005-07-14 07:48:42 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Akira TAGOH 2004-11-16 06:24:54 EST
From Bugzilla Helper:
User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.3)
Gecko/20040922

Description of problem:
the applications which uses asm/io.h isn't buildable on ia64. here is
a log:
In file included from fbdpsp.c:830:
/usr/include/asm/io.h: In function `__insb':
/usr/include/asm/io.h:128: `platform_inb' undeclared (first use in
this function)
/usr/include/asm/io.h:128: (Each undeclared identifier is reported
only once
/usr/include/asm/io.h:128: for each function it appears in.)
/usr/include/asm/io.h:137: `platform_inb' used prior to declaration
/usr/include/asm/io.h: In function `__insw':
/usr/include/asm/io.h:146: `platform_inw' undeclared (first use in
this function)
/usr/include/asm/io.h:155: `platform_inw' used prior to declaration
/usr/include/asm/io.h: In function `__insl':
/usr/include/asm/io.h:164: `platform_inl' undeclared (first use in
this function)
/usr/include/asm/io.h:173: `platform_inl' used prior to declaration
/usr/include/asm/io.h: In function `__outsb':
/usr/include/asm/io.h:182: `platform_outb' undeclared (first use in
this function)
/usr/include/asm/io.h:190: `platform_outb' used prior to declaration
/usr/include/asm/io.h: In function `__outsw':
/usr/include/asm/io.h:199: `platform_outw' undeclared (first use in
this function)
/usr/include/asm/io.h:207: `platform_outw' used prior to declaration
/usr/include/asm/io.h: In function `__outsl':
/usr/include/asm/io.h:216: `platform_outl' undeclared (first use in
this function)
/usr/include/asm/io.h:224: `platform_outl' used prior to declaration

Also, after adding #include <asm/machvec.h>:
In file included from fbdpsp.c:830:
/usr/include/asm/machvec.h:32: syntax error before "ia64_mv_irq_to_vector"
/usr/include/asm/machvec.h:33: syntax error before "vector"
/usr/include/asm/machvec.h:37: syntax error before "dma_addr_t"
/usr/include/asm/machvec.h:38: syntax error before "dma_addr_t"
/usr/include/asm/machvec.h:39: syntax error before
"ia64_mv_pci_map_single"
/usr/include/asm/machvec.h:40: syntax error before "dma_addr_t"
/usr/include/asm/machvec.h:43: syntax error before "dma_addr_t"
In file included from fbdpsp.c:830:
/usr/include/asm/machvec.h:175:4: #error Unknown configuration. Update
asm-ia64/machvec.h.
/usr/include/asm/machvec.h:184: syntax error before "swiotlb_map_single"

Also, after adding typedef unsigned char u8:
In file included from fbdpsp.c:831:
/usr/include/asm/machvec.h:37: syntax error before "dma_addr_t"
/usr/include/asm/machvec.h:38: syntax error before "dma_addr_t"
/usr/include/asm/machvec.h:39: syntax error before
"ia64_mv_pci_map_single"
/usr/include/asm/machvec.h:40: syntax error before "dma_addr_t"
/usr/include/asm/machvec.h:43: syntax error before "dma_addr_t"
In file included from fbdpsp.c:831:
/usr/include/asm/machvec.h:175:4: #error Unknown configuration. Update
asm-ia64/machvec.h.
/usr/include/asm/machvec.h:184: syntax error before "swiotlb_map_single"


I couldn't find any definition for dma_addr_t and when I include
machvec.h, it always failed right now because of config.h and
autoconf.h is empty.

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


How reproducible:
Always

Steps to Reproduce:
1.build something using asm/io.h
2.
3.
    

Actual Results:  failed to build

Expected Results:  it should be built completely.

Additional info:
Comment 1 David Woodhouse 2005-07-14 07:48:42 EDT
Application error. Applications should not include kernel-private headers.

You might get away with it on i386 where in/out are completely separate, but on
other platforms it's going to be entirely broken, as you observed.

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