Note: This is a beta release of Red Hat Bugzilla 5.0. The data contained within is a snapshot of the live data so any changes you make will not be reflected in the production Bugzilla. Also email is disabled so feel free to test any aspect of the site that you want. File any problems you find or give feedback here.
Bug 7388 - /dev/port bug?
Summary: /dev/port bug?
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Linux
Classification: Retired
Component: kernel
Version: 6.0
Hardware: sparc
OS: Linux
medium
medium
Target Milestone: ---
Assignee: David Miller
QA Contact:
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 1999-11-28 12:58 UTC by arild.hestvik
Modified: 2008-05-01 15:37 UTC (History)
0 users

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2000-02-05 22:44:40 UTC


Attachments (Terms of Use)

Description arild.hestvik 1999-11-28 12:58:10 UTC
I have compiled cqcam-0.90pre8 on Sparc4 w/RH6.0, with a hack suggested by
the developer (http://www.cs.duke.edu/~reynolds/cqcam/)

|Here's a nice kludge to try: at the top of port.C and port.h in the
|libcqcam directory, add the line
|
|#define arm
|
|and try building again.  IOW, pretend that you're building this on an ARM
|processor and force the system to use /dev/port instead of direct I/O
|through <asm/io.h>. /dev/port support is slow, BTW, because it requires
|two context switches for every 4- or 12-bit chunk of data.


it compiles, but when I run it this happens:

[arild@vega arild]$ sudo xcqcam
Killed
[arild@vega arild]$ Nov 26 18:16:38 vega sudo:    arild : TTY=pts/0 ;
PWD=/home/arild ; USER=root ; COMMAND=/usr/bin/tail -f /var/log/messages

Nov 26 18:17:24 vega sudo:    arild : TTY=pts/0 ; PWD=/home/arild ;
USER=root ; COMMAND=/usr/local/bin/xcqcam
Nov 26 18:17:24 vega kernel: Unable to handle kernel NULL pointer
dereference<1>tsk->mm->context = 0000004a
Nov 26 18:17:24 vega kernel: tsk->mm->pgd = f0351000
Nov 26 18:17:24 vega kernel:               \|/ ____ \|/
Nov 26 18:17:24 vega kernel:               "@'/ ,. \`@"
Nov 26 18:17:24 vega kernel:               /_| \__/ |_\
Nov 26 18:17:24 vega kernel:                  \__U_/
Nov 26 18:17:24 vega kernel: xcqcam(1215): Oops
Nov 26 18:17:24 vega kernel: PSR: 049000c5 PC: f00f1758 NPC: f00f175c Y:
00000000
Nov 26 18:17:24 vega kernel: g0: 00000000 g1: ffffff7f g2: 0000fc00 g3:
0000037a g4: 00000000 g5: 00000000 g6: f348e000 g7: ffffff00
Nov 26 18:17:24 vega kernel: o0: 0002c954 o1: 0002c954 o2: 00000000 o3:
f29d0578 o4: 0000037a o5: 0000ffff sp: f348ff08 o7: f0044e8c
Nov 26 18:17:24 vega kernel: l0: f29d0560 l1: 5000cd78 l2: 503c5be8 l3:
00000001 l4: 041d1b01 l5: 00000000 l6: 00000000 l7: 5002891c
Nov 26 18:17:24 vega kernel: i0: ffffffea i1: 0002c954 i2: 00000001 i3:
0000037a i4: 00010000 i5: 500298e8 fp: f348ff70 i7: f0011398
Nov 26 18:17:24 vega kernel: Caller[f0011398]
Nov 26 18:17:24 vega kernel: Caller[00017e18]
Nov 26 18:17:24 vega kernel: Instruction DUMP: 80a3000d  1880000e
8610000c <c40b0000> c42a0000  86100000  80a0e000  06bffff2  8410000a



According to Patrick, this looks like a kernel bug in the /dev/port-driver
for Sparc Linux.

-Arild Hestvik

Comment 1 Bill Nottingham 1999-11-29 16:48:59 UTC
You need to run that oops log through the 'ksymoops' program
for it to be of any use.

Comment 2 arild.hestvik 2000-01-31 18:43:59 UTC
Reading Oops report from the terminal
Nov 26 18:17:24 vega sudo:    arild : TTY=pts/0 ; PWD=/home/arild ;
 USER=root ; COMMAND=/usr/local/bin/xcqcam
 Nov 26 18:17:24 vega kernel: Unable to handle kernel NULL pointer
 dereference<1>tsk->mm->context = 0000004a
 Nov 26 18:17:24 vega kernel: tsk->mm->pgd = f0351000
 Nov 26 18:17:24 vega kernel:               \|/ ____ \|/
 Nov 26 18:17:24 vega kernel:               "@'/ ,. \`@"
 Nov 26 18:17:24 vega kernel:               /_| \__/ |_\
 Nov 26 18:17:24 vega kernel:                  \__U_/
 Nov 26 18:17:24 vega kernel: xcqcam(1215): Oops
 Nov 26 18:17:24 vega kernel: PSR: 049000c5 PC: f00f1758 NPC: f00f175c Y:
 00000000
 Nov 26 18:17:24 vega kernel: g0: 00000000 g1: ffffff7f g2: 0000fc00 g3:
 0000037a g4: 00000000 g5: 00000000 g6: f348e000 g7: ffffff00
 Nov 26 18:17:24 vega kernel: o0: 0002c954 o1: 0002c954 o2: 00000000 o3:
 f29d0578 o4: 0000037a o5: 0000ffff sp: f348ff08 o7: f0044e8c
 Nov 26 18:17:24 vega kernel: l0: f29d0560 l1: 5000cd78 l2: 503c5be8 l3:
 00000001 l4: 041d1b01 l5: 00000000 l6: 00000000 l7: 5002891c
 Nov 26 18:17:24 vega kernel: i0: ffffffea i1: 0002c954 i2: 00000001 i3:
 0000037a i4: 00010000 i5: 500298e8 fp: f348ff70 i7: f0011398
 Nov 26 18:17:24 vega kernel: Caller[f0011398]
 Nov 26 18:17:24 vega kernel: Caller[00017e18]
 Nov 26 18:17:24 vega kernel: Instruction DUMP: 80a3000d  1880000e
 8610000c <c40b0000> c42a0000  86100000  80a0e000  06bffff2  8410000a Nov 26
18:                              17:24 vega kernel: Unable to handle kernel NULL
pointer
 Nov 26 18:17:24 vega kernel: tsk->mm->pgd = f0351000
 Nov 26 18:17:24 vega kernel:               \|/ ____ \|/
 Nov 26 18:17:24 vega kernel:               "@'/ ,. \`@"
 Nov 26 18:17:24 vega kernel:               /_| \__/ |_\
 Nov 26 18:17:24 vega kernel:                  \__U_/
 Nov 26 18:17:24 vega kernel: xcqcam(1215): Oops
 Nov 26 18:17:24 vega kernel: PSR: 049000c5 PC: f00f1758 NPC: f00f175c Y:
Using defaults from ksymoops -t elf32-sparc -a sparc
 Nov 26 18:17:24 vega kernel: g0: 00000000 g1: ffffff7f g2: 0000fc00 g3:
 Nov 26 18:17:24 vega kernel: o0: 0002c954 o1: 0002c954 o2: 00000000 o3:
 Nov 26 18:17:24 vega kernel: l0: f29d0560 l1: 5000cd78 l2: 503c5be8 l3:
 Nov 26 18:17:24 vega kernel: i0: ffffffea i1: 0002c954 i2: 00000001 i3:

>>PC;  f00f1758 <n_tty_ioctl+4a4/1ab4>   <=====

 Nov 26 18:17:24 vega kernel: Caller[f0011398]
 Nov 26 18:17:24 vega kernel: Caller[00017e18]
 Nov 26 18:17:24 vega kernel: Instruction DUMP: 80a3000d  1880000e

Trace; f0011398 <get_options+1390/1634>
Trace; 00017e18 Before first symbol
Code;  f00f1758 <n_tty_ioctl+4a4/1ab4>
0000000000000000 <_PC>:
Code;  f00f1758 <n_tty_ioctl+4a4/1ab4>
   0:   80 a3 00 0d       cmp  %o4, %o5
Code;  f00f175c <n_tty_ioctl+4a8/1ab4>
   4:   18 80 00 0e       bgu  3c <_PC+0x3c> f00f1794 <n_tty_ioctl+4e0/1ab4>
Code;  f00f1760 <n_tty_ioctl+4ac/1ab4>
   8:   00 00 00 00       unimp  0

Comment 3 David Miller 2000-02-05 22:44:59 UTC
/dev/port is not and will never be supported on Sparc


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